Software Tech Lead

Spark Talent Inc
Troy, United States of America
2 months ago

Role details

Contract type
Temporary to permanent
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior
Compensation
$ 114K

Job location

Troy, United States of America

Tech stack

Java
Artificial Intelligence
JIRA
Build Automation
Bluetooth
C Sharp (Programming Language)
C++
Static Program Analysis
Software Quality
Code Review
Communications Protocols
Computer Engineering
Continuous Integration
Software Debugging
Software Design Documents
Linux
Embedded Software
Ethernet
Issue Tracking Systems
Joint Test Action (IEEE Standards)
Python
Linux System Administration
Open Source Technology
Scrum
Systems Development Life Cycle
Real-Time Operating Systems
Requirements Management
Shell Script
Software Configuration Management
Software Engineering
Software Requirements Analysis
Systems Modeling Language
Universal Asynchronous Receiver/Transmitter
UML
USB
Web Navigation
Serial Peripheral Interface
Real Time Systems
Delivery Pipeline
Spark
Gitlab
GIT
SC Clearance
Gitlab-ci
Information Technology
Free and Open-Source Software
Codebase
Trace32
Software Coding
Devsecops

Job description

We are seeking an experienced C++ Software Tech Lead to join our growing software engineering team. This Software Tech Lead will serve as the primary technical authority and team manager for software projects developed in support of our Department of Defense customers. The Software Tech Lead will be responsible for driving development efforts from requirements gathering through delivery, while mentoring and guiding a team of developers and a tester. This position may allow for some remote flexibility but will require on-site presence for key project milestones, design reviews, and customer engagements., * 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.

Requirements

  • A bachelor's or master's degree from an accredited college or university in Electrical Engineering, Computer Engineering, Computer Science, Software Engineering, or a related field is required.
  • Ability to obtain and maintain a United States Government Secret Security Clearance and a Common Access Card (CAC) is preferred. United States Citizenship is typically required to obtain a Secret Clearance.
  • A minimum of 7 years of professional software development experience, with significant hands-on C++ development on desktop or embedded applications.
  • 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.
  • 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.
  • 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.
  • Enthusiastic team leader who fosters collaboration, accountability, and technical excellence across the development and test teams.

About the company

Spark Talent Acquisition is a Michigan-headquartered recruiting and staffing company that connects great talent with great employers. We understand that building the right team is vital to success. Listening to our clients and creating customized workforce strategies is at the core of what we do. We pride ourselves in team development as it matches our purpose as an organization to help people grow.

Apply for this position