Responsibilities include, but are not limited to:
- Design and develop software solutions that are actively used in the security arena.
- Write software in C, Python, and assembly language.
- Work and collaborate within an agile team.
- Engage with the customer or representatives to fully understand the desired functionality and strive to develop the best technical solution.
- Reverse engineer system components as necessary.
- Assist in the training of less experienced software development staff.
- Research and maintain proficiency in tools, techniques, countermeasures, and trends in computer network vulnerabilities, data hiding, and network security and encryption.
- A passion for low-level / embedded software development and engineering.
- Expert level C coding skills
- Strong grasp of operating system fundamentals, including interrupts, threading, virtual memory, device drivers and memory management techniques.
- Knowledge and understanding of the Linux kernel or another operating system kernel
- Experience with reverse engineering.
- Experience in all phases of the software development life cycle.
- Experience with test driven development and test automation.
- Experience with continuous integration.
- Bachelor's degree or equivalent combination of education and experience, and 10+ years of experience.
- Bachelor’s degree in one of the following disciplines: Computer Engineering, Computer Science, Math, Software Engineering or a related field preferred.
- Experience developing or maintaining device drivers.
Security Clearance Requirement:
- Individuals must be a U.S. Citizen and either hold an active US Security Clearance or must be eligible to obtain a US Security Clearance
- Applicants with the appropriate skills but without a security clearance are still encouraged to apply. If you're the right fit for the job, well make it happen.
- Applicants will be subject to a government security background investigation.