Go back
GrammaTech - Software Engineer

Software Engineer

digital nomad


GrammaTech is seeking a Software Engineer in the Research/Reverse Engineering Team to develop new tools and integrate existing tools to advance the state-of-the-art in software reverse engineering and binary analysis. Application areas include: decompilation, firmware analysis and patching, software architecture recovery, and software functionality identification.

Location: Preference is for this candidate to be located in our office in Ithaca, NY.  Although, management may consider a remote employee when there is a strong match of skills and experience.


  • Execute all phases of the software development lifecycle on existing codebases and new implementations

  • Write and maintain well-designed, documented, testable code and address quality assurance issues

  • Communicate task progress via verbal and written reports to keep stakeholders up to date on project progress

  • Prepare software deliveries for demonstrations, evaluations and customer transitions

  • Support demonstration events and customer installation and usage to ensure a smooth and successful evaluation



  • Experience working with at least one assembly language (x86, ARM, MIPS, etc.)

  • Advanced software application development skills in C/C++ and Python

  • Ph.D. in computer science - or - BS in computer science or equivalent with 3+ years' experience


  • Experience with reverse engineering tools (e.g. IDA Pro, radare2, binwalk, etc.)

  • Experience with firmware and/or RTOS development, configuration, deployment and/or emulation

  • Experience with fuzzers, at least using and configuring them; experience with AFL especially useful

  • Experience with symbolic execution