Software Development Engineer Java Arxan Technologies
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 Software Engineer with 3-10+ years professional experience (recent Computer Science graduates with the right technical chops are highly welcome) with background in Computer Science or Computer Engineering to join our product development team, focused on enhancing the security features, performance and platform coverage of our products. This is a unique R&D position that will take full advantage of the candidate?s Java and JVM internals expertise in a commercial setting, and extend the candidate?s knowledge into a wide variety of application integrity technologies.
As part of the Arxan engineering team, you will execute your development activities using Scrum, a modern team-based rapid and agile methodology that keeps process overhead low and development productivity high. You will work with current and future advanced compilers (Visual Studio, Intel, Clang, LLVM, GCC 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 system to mention a few).
Extensive experience developing Java software.
Experience with Android Development
Experience with C/C++ development
Excellent oral and written communication skills, including ability to work with remote staff.
Excellent analytical skill and attention to detail.
Excellent teamwork skill, working with co-workers in QA, tech writer, support, and other developers.
Bachelor?s degree in Computer Science, Computer Engineering, or equivalent.
Experience developing and debugging Android applications in Java and native code, including Android library projects, APK expansion files, and development with both the Eclipse IDE and command line builds
Knowledge of Java/Dalvik bytecode, Class/Dex file layout and JVM/Dalvik internals
Experience with mobile software development.
Experience with x86 and ARM assembly language.
Experience with Objective-C language.
Experience with software cracking processes and/or software cracking tools such as IDA Pro, JAD and others.
Experience with embedded systems and embedded operating systems, including board support, cross-compilers, remote debugging, etc.
Understanding of characteristic and differences among different binary and executable file types (PE, COFF, ELF, DWARF; dll?s, shared objects, etc.).
Systems level experience in any of: compiler technology, linker technology, debugger technology, or low level operating systems technology.
Linux, MacOS, iOS and Android run-time model knowledge
.NET development of 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).
||6903 Rockledge Drive |
Bethesda, MD 20817