STR is looking to develop cutting-edge vulnerability research technologies to solve emerging national security challenges.
Requirements
- Deep knowledge of at least one of the following topics: microcontroller software, embedded systems, firmware, kernels, or drivers
- Proficiency in at least one compiled and one scripting programming language
- Familiarity with assembly language, operating systems internals (e.g., file systems, IO, memory management, device drivers), threading, compiler technologies (e.g., GCC, LLVM)
- Experience with software scripting and build automation tools (e.g., bash, make)
- Applied skills using collaborative source code management and software engineering tools (e.g., Git, Subversion, Gitlab)
- Proficiency in C, C++, and Python (nice to have)
- Understanding of common software vulnerabilities, and secure programming principles (nice to have)
Responsibilities
- Design, develop, and test software applications and tools in languages such as C, C++, and Python
- Ensure software quality through unit-level and system-level tests and verification
- Integrate software components using networking/messaging technologies
- Package software for ease of configuration control, delivery, and deployment
- Communicate technical foundations of software designs and implementations through reports and presentations
Other
- Ability to obtain a Top Secret (TS) security clearance
- U.S. citizenship required
- BS in Computer Science, Computer Engineering, or related field with 5 years of experience (or MS and 3 years)
- Experience working on classified programs (nice to have)