Embedded Software Engineer II
In today's dynamic worksites, seamless collaboration between people and machines is essential. FORT's platform ensures safe, secure, and dynamic control that surpasses legacy systems and next-generation AI capabilities.
While autonomous machines offer significant advantages, they also introduce new safety challenges. FORT addresses these concerns by providing solutions such as the Wireless E-Stop, which allows operators to instantly stop any machine from a safe distance, enhancing safety during emergencies.
Additionally, FORT's Safe Remote Control enables operators to manage heavy machinery remotely, reducing the risk of accidents and improving visibility.
By ensuring communications integrity across any network, FORT empowers customers to protect their most valuable assets—people, data, and machines—ensuring they remain safe and secure.
As an Embedded Software Engineer II, you will own specific components of our embedded stack, working close to the hardware on the real-time firmware that our safety devices depend on. Most of your time will be spent in RTOS environments (Zephyr and FreeRTOS) and on bare-metal targets, architecting safety-critical systems where reliability is a hard requirement. You will also work with our Embedded Linux platforms where the two worlds meet, so you will be comfortable moving between constrained real-time targets and richer application environments.
What You'll Do
- Build the Core: Design and implement robust C/C++ firmware for safety-critical embedded devices.
- Real-Time Architecture: Architect and implement RTOS-based firmware on Zephyr and FreeRTOS, including task and scheduling design, ISR handling, inter-task communication, memory and stack budgeting, and deterministic timing analysis.
- Bare-Metal and Drivers: Write low-level peripheral drivers and board support code, and bring up new silicon from reset vector through to a running application.
- Platform Integration: Interface RTOS devices with our Embedded Linux user-space applications, ensuring reliable communication and consistent behavior across the product.
- Pipeline & Quality: Maintain and improve CI/CD pipelines (GitLab) to automate testing, including on-target and hardware-in-the-loop test execution.
- Hardware Integration: Bring up new hardware, debug complex issues using JTAG/GDB, and optimize for latency, power, and memory footprint.
- Safety Compliance: Collaborate with the safety team to ensure code adheres to rigorous standards (IEC 61508) while maintaining development velocity.
What You Bring
- Experience: 3-5 years of hands-on embedded software development, with a substantial portion on RTOS or bare-metal targets.
- Core Languages: Strong proficiency in C, along with working proficiency in C++.
- RTOS Knowledge: Solid production experience with an RTOS such as Zephyr, FreeRTOS, ThreadX, or similar, including scheduling, synchronization primitives, and interrupt-driven design.
- Microcontroller Fluency: Comfort working directly with MCU peripherals, datasheets, reference manuals, linker scripts, and startup code.
- Linux Exposure: Familiarity with Embedded Linux user-space development, sufficient to integrate and debug across the RTOS and Linux boundary.
- Connectivity: Familiarity with IP networking protocols and standard interfaces (UART, SPI, I2C, USB, CAN).
- Tooling: Experience with Python for scripting/automation and familiarity with CI/CD workflows.
- Debugging: Comfort using oscilloscopes, logic analyzers, JTAG, and GDB to troubleshoot hard-to-find bugs.
- Education: B.S. in Computer Engineering, Electrical Engineering, Computer Science, or equivalent experience.
Bonus Points
- Experience with Zephyr specifically, including devicetree, Kconfig, and west-based workflows.
- Experience with wireless stacks (BLE, ISM, Wi-Fi) on constrained devices.
- Background in Functional Safety (FuSa) or working in regulated industries (Medical, Automotive, Aerospace).
- Low-level Linux knowledge of Board Support Packages (BSP) and device drivers.
- Familiarity with static analysis, MISRA C, or other coding standards used in safety-critical development.
Base Compensation can range from $125,000 to $150,000 based on experience & location.
Apply for this job
*
indicates a required field