Embedded Real-Time Developer
Role details
Job location
Tech stack
Job description
As an Embedded Real-Time Developer, you will design, develop, and maintain software solutions for real-time embedded systems supporting high-performance, mission-critical applications. This role requires strong expertise in low-level programming, real-time operating systems, and hardware-software integration to meet strict timing, performance, and reliability requirements.
You will collaborate with cross-functional teams including hardware engineers, system architects, and quality teams to support system design, integration, testing, and validation efforts across the full development lifecycle., Design, develop, and maintain real-time embedded software for microcontroller-based systems Implement and optimize RTOS-based solutions to meet deterministic performance requirements Analyze system requirements and translate them into efficient, maintainable code Collaborate with hardware teams on integration, schematic review, and system validation Perform debugging, testing, and performance tuning (memory, speed, power) Support lab testing, prototype validation, and test plan execution Participate in code reviews, architecture discussions, and Agile development workflows Document designs, code, and test results to support ongoing development and compliance
Requirements
Bachelor's degree in Computer Science, Electrical Engineering, or related field (or equivalent experience) 3+ years of embedded software development experience Strong proficiency in C and C++ Experience with real-time operating systems (RTOS) (e.g., FreeRTOS, VxWorks, QNX) Experience with embedded Linux environments (Yocto, Ubuntu, or similar) Solid understanding of microcontrollers and embedded processors (ARM Cortex, STM32, NXP, etc.) Experience with hardware interfaces and communication protocols (CAN, SPI, I2C, UART, Ethernet) Proficiency with embedded development tools (debuggers, JTAG, oscilloscopes, logic analyzers)
Required U.S. Citizenship Ability to obtain and maintain a SECRET security clearance (active clearance preferred), Experience in safety-critical systems (ISO 26262, DO-178C) Familiarity with DevOps practices (CI/CD pipelines, Git-based workflows) Experience with real-time performance optimization (latency, jitter, scheduling) Knowledge of Python or scripting languages for testing/automation Exposure to cybersecurity principles for embedded systems, The required skills in C and C++ programming are essential for developing efficient and reliable embedded software that meets real-time constraints. Knowledge of real-time operating systems enables you to manage task scheduling and resource allocation effectively, ensuring timely execution of critical functions. Understanding hardware interfaces and microcontroller architectures allows you to write software that interacts seamlessly with embedded hardware components. Debugging and testing skills are applied daily to identify and resolve issues, improving system stability and performance. Preferred skills such as familiarity with safety standards and communication protocols enhance your ability to develop compliant and interoperable embedded solutions, while scripting and version control skills support automation and collaborative development workflows.