Listing Description
Role
This role will support both our commercial clients needing software engineering support and/or our government-sponsored research. Our commercial clients typically have objectives that are more well-defined, whereas research often requires more exploration, collaboration, and prototyping before arriving at a solution.
- Develop software for reverse engineering, program analysis, and security tools.
- Connect daily with the team virtually to describe progress, setbacks, ideas, and concerns.
- Create maintainable code and understand user needs.
- Maintain installation files, user manuals, walkthroughs, and tutorials.
- Occasionally present your work to the company and external stakeholders.
- Collaborate with the team to write conference papers, blog posts, and proposals.
Requirements & Skills
- Mastery of at least one modern programming language (C++, Python, Rust, etc.).
- Experience in developing usable and maintainable software.
- Experience working on a research team.
- Specialization in a relevant research area (e.g., static analysis, symbolic execution, patching, binary instrumentation, fuzz testing, formal methods, adversarial machine learning, etc).
- Computer Science fundamentals experience (operating systems, data structures, algorithms, networking, etc).
- Understanding of at least one architecture’s assembly language.
- Understanding of at least one intermediate representation (LLVM/IR, BNIL, LLIL, etc.).
- Knowledge of reverse engineering.
- Ability to quickly learn new programming languages and frameworks.
- Must live in the United States.
Listing Details
- Citizenship: Not Provided
- Incentives: Not Provided
- Education: Not Provided
- Travel: Not Provided
- Telework: Not Provided