
Contribute to continuous improvement initiatives, including code quality, development tools, and process optimizations.
Capture and document requirements, translating system and software needs into robust, scalable architectures and clean, maintainable code.
Serve as the technical lead for back-end software development, ensuring robust system design, maintainable codebases, and alignment with architecture standards.
Provide mentoring and technical guidance to junior software developers.
Develop quotations for customers including defining scope, assumptions, deliverables, timeline, and costing.
The Defense Software Engineer Back-End Lead will lead the design, development, and integration of back-end software architectures and services for embedded and distributed systems used in military applications. This role requires proficiencies in software architecture, team leadership, and a deep understanding of software development standards. The successful candidate will collaborate across multidisciplinary teams to deliver high-quality software solutions that meet stringent military requirements and timelines.
Guide the team in designing software systems that follow modular, reusable, and scalable principles.
Create and review software work products such as code, requirements, sequence/ timing diagrams, interface control documents (ICDs), and system integration documentation.
Automotive vehicle knowledge, including hands on mechanical or electrical work.
U.S. Citizen.
Excellent verbal and written communication skills, including the ability to present technical information to both technical and non-technical audiences.
Capable of planning, estimating, scheduling, and coordinating technical aspects of projects.
Master’s degree in Computer Science, Computer Engineering or a related technical field.
Working knowledge of communications protocols and standards including Controller Area, Network (CAN bus), TCP/IP, UDP, DDS and other serial protocols.
Experience with vetronics systems and understanding of MIL-STD interfaces and requirements.
Experience developing and integrating attractive and intuitive GUIs in embedded environments; familiarity with LVGL is a plus..
Detail-oriented with the ability to quickly assimilate and apply new concepts, business models, and technologies.
Strong working knowledge of software technology architecture and configuration.
Ability to manage a small team of software developers.
Knowledge of software development lifecycle models (Agile, V-Model, Waterfall) and configuration management tools (Git, Bitbucket, Jira).
Ability to lead and manage cross-functional software teams.
Working knowledge of multi-system integration, Internet of Things (IOT), web app development, and distributed systems integration.
Minimum 6 years of software development experience.
Strong proficiency in C and C++; additional experience in Python is a plus.
Experience with software languages, technologies, methodologies, API's, database, and Pub/Sub.
Experience with In-Vehicle Software architecture and design.
Bachelor’s degree in Computer Science, Computer Engineering or a related technical field, or equivalent work experience.