Software Engineer - Backend / Embedded

AntaresLos Angeles, CA
45dOnsite

About The Position

Antares is seeking an Embedded Software Engineer (Linux) to develop a real-time control and monitoring software that forms the central nervous system of the reactor. This software manages system state, processes commands, handles telemetry, and coordinates communication across all reactor subsystems to ensure safe and reliable operation. This work enables precise control of reactor conditions, continuous data visibility, and robust response to off-nominal events. With our First-of-a-Kind (FOAK) reactor design underway, you will help define and implement the next generation of our control and data infrastructure. You will work closely with controls, electrical, and safety engineering teams to design, test, and validate software that interacts directly with sensors, custom electronics, and supervisory systems. Your work will ensure that the reactor operates safely, efficiently, and as intended from prototype through deployment.

Requirements

  • Bachelor’s degree in Computer Engineering, Computer Science, Electrical Engineering, or related field.
  • 3+ years of experience developing C/C++ applications for Linux or similar POSIX environments.
  • Strong understanding of multi-threaded, multi-process applications and inter-process communication (IPC) mechanisms.
  • Experience developing and debugging networked systems using TCP/UDP sockets, message queues, or publish-subscribe middleware.
  • Familiarity with deterministic or real-time execution on Linux (RT patching, scheduling priorities, timing analysis, etc.).
  • Proficiency with Linux development tools (gcc/clang, gdb, valgrind, CMake, etc.) and source control (Git).

Nice To Haves

  • Master’s degree in Computer Engineering, Computer Science, or related field.
  • Experience developing flight or mission-critical software for aerospace, robotics, or automotive systems.
  • Deep knowledge of distributed systems and communication middleware (e.g., DDS, ZeroMQ, gRPC, or custom telemetry buses).
  • Experience designing and implementing state-machine architectures and autonomous mode management software.
  • Familiarity with real-time telemetry, command and control systems, and on-board data handling.
  • Proficiency in Python for scripting, data analysis, or automated testing.
  • Experience with containerized or simulation environments (Docker, Gazebo, or custom hardware simulators).
  • Knowledge of real-time Linux (PREEMPT_RT) and embedded Linux system configuration and deployment.
  • Understanding of safety-critical development processes (DO-178C, ISO 26262) or model-based systems engineering concepts.
  • Experience with HIL environments, test automation frameworks, and continuous integration pipelines.
  • Ability to communicate clearly across disciplines and with external regulatory stakeholders.
  • Excellent analytical, debugging, and documentation skills.
  • Ability to work in cross-functional environments bridging software, electrical, and system integration disciplines.

Responsibilities

  • Owner of middleware between application and embedded code to operate the reactor.
  • Develop and maintain real-time reactor software applications executing on Linux-based computers, responsible for C&DH (command handling), and state management.
  • Design and implement test and control that exercise subsystem modes, fault management/injection, and autonomous behaviors.
  • Build and maintain the network and communications stack for inter-process and inter-computer communication (e.g., TCP/UDP, CAN over Ethernet, DDS, ZeroMQ, or custom protocols).
  • Develop software to receive and process uplinked commands, validate them, trigger state transitions, and produce structured telemetry.
  • Interface with and develop hardware abstraction layers (HALs) and system services to exchange data with off-the-shelf components (DAQs, power supplies, etc.), sensors, controllers, and control algorithms.
  • Collaborate closely with software, electrical, and controls teams to ensure software correctly integrates with underlying hardware and real-time networks.
  • Write and maintain system-level test frameworks, simulations, and HIL environments to validate command/telemetry and state machine behavior.
  • Participate in software and design reviews, code reviews, and contribute to the definition of interface control documents (ICDs) and communication schemas.
  • Contribute to system performance optimization, and fault tolerance
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service