Software Engineer

Mach IndustriesSan Francisco, CA
Onsite

About The Position

The Software Engineer will play a critical role in developing our autonomous defense systems. You will be responsible for designing, building, and optimizing mission-critical applications, with a focus on real-time performance, reliability, and security. This role demands technical excellence, adaptability, and ownership, as you will work across the full software stack to develop and deploy high-performance systems in a fast-paced environment.

Requirements

  • Proficiency in C++, Rust, Python, or C, with the ability to write clean, well-tested, and efficient code.
  • Experience implementing a large (>10,000 line) project, from architecture to deployment.
  • Strong understanding of real-time software development, embedded systems, and performance optimization.
  • Ability to execute in a fast-paced, high-iteration environment, often shipping software multiple times per day.
  • Strong grasp of the full software development lifecycle, including design, development, deployment, and support.
  • Demonstrated extreme ownership and ability to operate autonomously, driving projects to completion with minimal oversight.
  • Experience working with low-level hardware interfaces and optimizing software for real-time applications.
  • Ability to work on-site in Huntington Beach, CA.

Nice To Haves

  • Significant experience in Rust, including embedded Rust with Embassy.
  • Experience developing software for autonomous systems, robotics, or aerospace applications.
  • Hands-on experience with microcontrollers, I²C, or real-time operating systems (RTOS).
  • Familiarity with sensor fusion, state estimation, or GNC systems.
  • Experience modeling flight vehicle dynamics in highly integrated cross-disciplinary simulations.
  • Strong background in firmware development and testing for embedded systems.

Responsibilities

  • Develop, test, and maintain software for autonomous defense platforms, ensuring high performance, reliability, and security.
  • Design and implement efficient, well-tested code in C++, Rust, Python, or C to power real-time systems.
  • Architect end-to-end software solutions, from low-level firmware to high-level mission software.
  • Work closely with embedded engineers, GNC specialists, and systems engineers to ensure seamless hardware-software integration.
  • Optimize software for real-time execution, ensuring low-latency operation on embedded platforms and edge computing systems.
  • Implement secure coding practices, ensuring software is resilient to cyber threats and meets defense cybersecurity standards.
  • Utilize DevOps, CI/CD pipelines, and automated testing to streamline software development and deployment.
  • Troubleshoot, debug, and refine complex software systems, ensuring they meet mission-critical reliability requirements.
  • Identify opportunities for optimization and proactively propose solutions that enhance system efficiency and performance.
  • Contribute to agile development processes, effectively communicating risks, blockers, and technical challenges to the broader team.

Benefits

  • health insurance
  • retirement plans
  • opportunities for professional development
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service