
Software Development Engineer II (C/C++)
- Tewksbury, MA
- $66,000-130,000 per year
- Permanent
- Full-time
- Design, develop, and maintain software applications using C and C++ for complex systems and applications.
- Collaborate with cross-functional teams to define, design, and implement new features, ensuring system integration and scalability.
- Troubleshoot, debug, and optimize existing code for performance and efficiency in complex environments.
- Write and maintain comprehensive documentation for software applications, including system architecture and design specifications.
- Participate in code reviews and ensure adherence to coding standards and best practices.
- Stay current with industry trends and advancements in C/C++ technologies, especially in relation to complex systems.
- Light travel and off hours testing (2nd or 3rd shift) may occasionally be required.
- This position requires exclusive onsite presence.
- Typically requires a bachelor’s in science, Technology, Engineering, or Mathematics (STEM) and a minimum of 2 years of experience.
- Proven experience in developing complex systems and applications using C/C++, Java or other object-oriented programming language.
- Experience in a Unix/Linux operating system.
- The ability to obtain and maintain an interim secret U.S. security clearance prior to the start date. U.S. citizenship is required, as only U.S. citizens are eligible for a security clearance.
- Active Secret security clearance.
- Strong understanding of data structures, algorithms, and software design principles, particularly in high-concurrency and distributed systems.
- Experience in embedded systems, real-time systems, or large-scale applications.
- Experience with multithreading, memory management, and performance optimization in complex environments.
- Experience with Network Communication Protocols, Shell Scripting (tcsh, csh, bash), software development tools like Git/Clearcase, software debuggers, and using embedded RTOSs (e.g. VxWorks, Integrity).
- Excellent problem-solving skills and attention to detail.
- Strong communication and teamwork skills.
- Familiarity with version control systems (e.g., Git).
- Familiarity with software development methodologies (Agile, Scrum, etc.).