Career Opportunities – Software Development Engineer
Arxan Technologies, Inc.
Arxan Technologies provides sophisticated anti-cracking tools that protect application programs from software piracy, tampering, and reverse engineering. Our tool technology processes executable (binary) software, generating new binaries with code obfuscation and injection of binary level guards. Our tools run as Windows, Linux and MacOS applications, and process executable code for a wide variety of target systems, including Window x86 (32 and 64 bit, XP and Vista), Linux x86, MacOS, Android/ARM, iOS/ARM, Java and .NET byte code
We are looking for a recent college graduates in Computer Science or Computer Engineering or an individual with any number of years professional software-development experience to join our product development team, focused on enhancing the security features, performance and platform coverage of our products. Specific technology area assignments are variable based upon specific skills and interests, and over time the successful candidate with have opportunities to work in a wide variety of specific machine and software architectures, per the above list.
As part of the Arxan engineering team, you will execute your development activities using Scrum, a modern team-based rapid and agile methodology which keeps process overhead low and development productivity high. You will work with current and future advanced compilers (Clang, LLVM, GCC, Visual Studio, and others) and operating systems from Microsoft, Apple, Google, RIM and open source, at a deep and challenging level that will enhance your software skills and knowledge. The technologies you develop will be purchased and utilized by the world’s largest software publishing companies, financial institutions, media companies, and other technology companies in diverse areas (digital media, gaming, geosciences, consumer products, and embedded systems to mention a few).
- Extensive academic experience developing C/C++ software.
- Understanding of basic differences amongst different binary and executable file types (PE, COFF, ELF, DWARF; dll’s, shared objects; etc.).
- Academic knowledge of and experience with x86 or ARM assembly language.
- Ability to think logically through complex problems to achieve technical solutions.
- Excellent oral and written communication skills, including ability to work with remote staff.
- Excellent analytical skills and attention to detail.
- Excellent teamwork skills, working with co-workers in QA, Development, and Tech Pubs.
- Bachelors degree in Computer Science, Computer Engineering, or equivalent.
- Experience developing software in Xcode, Visual Studio, and/or Eclipse IDE for execution on iOS, Android, Mac OS X, Windows, or Linux.
- Experience with software cracking processes and/or software cracking tools such as OllyDebug, IdaPro and others.
- Experience with embedded systems and embedded operating systems, including board support, cross-compilers, remote debugging, etc.
- Systems level experience in any of: compiler technology, linker technology, debugger technology, or low level operating systems technology.
- Knowledge of Mac OS X, Windows, iOS, Android, and/or Linux (32 and 64 bit) run-time model (memory management, exception management, stack management, etc.)
- .NET development or internals experience.
- Java development or JVM internals experience.
The successful candidate could work out of:
- Our West Lafayette, Indiana R&D office.
- Our downtown San Francisco R&D office (one block from Montgomery BART/Muni station, and a short walk from the Cal Train station).
Contact: email email@example.com