Software Developer Lead
Location: Troy, Michigan (hybrid)
Industry: Dept. of Defense
Duration: 6 month contract only (temporary)
Pay: $56/hr.
Clearance: Ability to obtain Secret clearance
Summary: Serve as the primary technical authority and team manager for software projects developed in support of our Department of Defense customers. Responsible for driving development efforts from requirements gathering through delivery, while mentoring and guiding a team of developers and a tester.
Requirements:
- BS Degree in Engineering or related field.
- 5+ years of professional software development experience, with significant hands-on C++ development on desktop or embedded applications.
- Expert-level proficiency in C and C++ (C++11/14/17 strongly preferred), with the ability to review, guide, and set standards for team code across both languages.
- Demonstrated experience leading a small software development team, including task assignment, sprint management, and technical oversight.
- Proficiency with GitLab, including repository management, CI/CD pipelines, issue tracking, and branch management workflows.
- Experience with Agile/Scrum methodologies and sprint-based software development.
- Strong background in software design and analysis, including creation of Software Design Documents (SDD) and Requirements documents.
- Experience with model-based systems engineering (MBSE) tools such as Cameo Systems Modeler or Enterprise Architect (EA) for UML and SysML modeling.
- Familiarity with DoD software development processes, standards, and documentation requirements (e.g., DI-IPSC, MIL-STD) is highly desirable.
- Experience with requirements management and traceability, including decomposition of system-level requirements into software requirements.
- Ability to work across the full software development lifecycle (SDLC): requirements, design, implementation, integration, and test.
- Experience collaborating with testers to develop and validate Test Plans and Test Descriptions.
- Strong written and verbal communication skills with the ability to produce clear technical documentation and present to customers.
- Demonstrated ability to define, document, and enforce coding standards across a development team.
- Experience developing software for embedded systems, including understanding of resource-constrained environments, real-time operating systems (RTOS), hardware/software interfaces, and low-level C++ development.
- Experience with at least one major MCU family (STM32, NXP i.MX RT, TI, Microchip, Espressif, etc.) and solid understanding of real-time systems and RTOS concepts.
- Proficiency with common embedded communication protocols (UART, SPI, I2C, CAN, USB, Ethernet, Bluetooth).
- Hands-on experience with embedded debugging tools (JTAG, SWD, Ozone, Trace32, etc.).
- Proficiency working in Linux environments, including shell scripting, system navigation, and building/running C++ applications on Linux-based platforms.
- Experience collaborating with DevSecOps teams to help define, build, and maintain CI/CD pipelines, supporting automated builds, testing, and deployment workflows.
- Security-minded development practices, with the ability to identify and address vulnerabilities during design and code review phases.
- Hands-on experience with Black Duck for open-source software (OSS) composition analysis and license compliance, and Coverity for static analysis and defect detection in C++ codebases.
- Experience with additional languages such as Python, C#, or Java is a plus.
- Experience with Git, GitLab CI/CD, and issue tracking systems (Jira or similar) preferred.
- Ability to obtain Secret clearance. CAC card desired.
Duties:- Manage and prioritize GitLab tickets, labels, and sprint planning to ensure on-time delivery of software increments.
- Participate in and lead team meetings, sprint demos, and technical reviews, ensuring the team aligns with company best practices including the responsible use of AI tools as part of the development process where applicable.
- Maintain and manage GitLab repositories, including branch strategies, merge request reviews, and code quality enforcement.
- Lead requirements gathering sessions with customers and stakeholders, translating system-level needs into actionable software tasks.
- Develop and maintain key project documents including the Software Design Document (SDD), Software Requirements Specification (SRS), and related technical artifacts.
- Lead software design and analysis activities, producing architecture and design artifacts using model-based tools such as Cameo or Enterprise Architect (EA).
- Help manage and maintain project schedules, coordinating with program management to track progress and mitigate risks.
- Assist in compiling and delivering program deliverables to customers in accordance with contract requirements and deadlines.
- Establish, document, and maintain coding standards and best practices for the team; ensure adherence through code reviews and team guidance.
- Provide technical mentorship and day-to-day guidance to a team of 2 3 C++ developers, supporting their growth and resolving technical blockers.
- Collaborate closely with the test team, supporting the development and execution of the Test Plan and Test Description documents.
- Collaborate with DevSecOps teams to help design and maintain CI/CD pipelines in GitLab, supporting automated build, static analysis, and deployment processes.
- Champion secure coding practices across the team, leveraging tools such as Coverity for static analysis and Black Duck for open-source composition analysis and license compliance.
EOE/ADA
IND123
T
The Staffing Resource Group, Inc