Software Engineer (C++ / Autonomy)
Arlington, VA
Pay: $60.00 - $65.00 per hour
26-03918
Job Summary
This role is responsible for developing and maintaining autonomy software for surface vessel systems, with a strong emphasis on hands-on C++ programming. The position involves working within a Linux-based environment to design, build, test, and debug software applications throughout the development lifecycle. The individual is expected to contribute immediately to a production codebase, owning tasks end-to-end from design through implementation and issue resolution. This role operates within Agile Scrum teams and requires collaboration across technical stakeholders to deliver reliable and efficient software solutions. Job Responsibilities
- Design, develop, test, and maintain software applications and supporting frameworks using C++
- Write clean, efficient, and well-documented code for production systems
- Identify, troubleshoot, and resolve software defects and technical issues
- Own development tasks end-to-end, including design, implementation, testing, and debugging
- Participate in Agile Scrum ceremonies, including sprint planning, stand-ups, and retrospectives
- Collaborate with project managers and cross-functional teams to meet project objectives
- Work within Linux-based environments and utilize modern development tools
- Integrate software with relational databases and networking protocols
- Follow established development standards, best practices, and configuration management processes
- Support and assist other technical team members as needed
Job Requirements
- Strong proficiency in C++ with the ability to contribute immediately in a production environment
- Experience working with Linux-based systems
- Familiarity with Agile or Scrum development methodologies
- Experience with relational databases such as PostgreSQL, MySQL, or Oracle
- Understanding of networking protocols such as TCP/IP or UDP; experience with DDS is a plus
- Exposure to additional programming languages such as Java or Python
- Experience with containerization or orchestration tools such as Docker or Kubernetes is preferred
- Ability to analyze and resolve moderately complex technical issues
- Strong problem-solving skills and proactive, self-directed work approach
- Effective communication skills and ability to explain technical concepts clearly
- Must be a U.S. citizen
Education
- Bachelor's degree in Computer Science, Engineering, or a related field, or equivalent experience
Work Experience
- 2 to 4 years of professional software development experience, including experience working in a production codebase
#ZR
|