IN THIS ROLE YOU WILL:
- Design, develop, and maintain firmware for embedded systems across Molg’s robotic platforms — including motor controllers, sensor interfaces, actuators, and custom PCBs.
- Own the full firmware development lifecycle: requirements gathering, architecture design, implementation, testing, and deployment to production hardware.
- Write robust, real-time firmware in C/C++ targeting bare-metal and RTOS-based environments (FreeRTOS, Zephyr, or similar).
- Develop and maintain drivers for communication protocols including CAN, SPI, I2C, UART, RS-485, and Ethernet to support reliable hardware integration.
- Collaborate closely with electrical engineers to bring up new hardware, validate schematics, and debug hardware/firmware interactions at the board level.
- Build and maintain hardware-in-the-loop (HIL) and software-in-the-loop (SIL) test frameworks to validate firmware behavior in automated CI/CD pipelines.
- Partner with robotics and software engineers to define clear firmware/software interfaces and ensure reliable communication between embedded systems and higher-level control stacks.
- Instrument firmware for observability — logging, telemetry, and diagnostics — to support production monitoring and rapid field debugging.
- Contribute to firmware architecture decisions as Molg’s system complexity grows, balancing performance, reliability, and maintainability.
- Participate in design reviews and bring a hardware‑aware perspective to cross‑functional technical discussions.
You’ll have the opportunity to build alongside an incredible team, develop innovative solutions, and grow in a fast‑paced environment that values autonomy and impact.
WHO YOU ARE:
- 5+ years of professional firmware or embedded systems engineering experience, with a track record of shipping firmware on real hardware.
- Expert‑level proficiency in C and C++; experience with Python for tooling, test automation, or scripting is a strong plus.
- Deep experience with microcontrollers and microprocessors (STM32, ESP32, NXP, TI, or similar); comfortable working with datasheets and reference manuals as primary sources of truth.
- Hands‑on experience with RTOS development — task scheduling, interrupt handling, memory management, and real‑time constraints.
- Solid understanding of common embedded communication protocols (CAN, SPI, I2C, UART, Ethernet) and how to debug them with logic analyzers and oscilloscopes.
- Comfortable reading schematics and working directly with hardware — you enjoy getting to the root of hardware/software interaction issues.
- Experience writing automated firmware tests, ideally in HIL or SIL environments; familiarity with pytest, Robot Framework, or similar testing tools is a plus.
- Strong debugging skills — you can navigate a system from application layer down to the register level when needed.
- Excellent communicator with a bias toward documentation and clean, maintainable code.
- Ability to work in‑person at Molg HQ in Sterling, VA.