remote
Staff Engineer, Embedded Software Development - Baker Hughes
Software Engineer
Lead the design and implementation of high‑performance embedded systems, bridging low‑level hardware with application software, while defining architecture, ensuring reliability, and driving performance optimization.
About the role
Key Responsibilities
- Design and develop scalable embedded software architectures for complex inspection hardware.
- Implement firmware and application code in Embedded C/C++ for real‑time performance.
- Integrate and debug across hardware, firmware, and high‑level Linux‑based software layers.
- Lead performance tuning, memory optimization, and power‑management strategies.
- Collaborate with cross‑functional hardware and systems teams to define requirements and validate solutions.
Requirements
- 10+ years of professional experience in embedded software development, including low‑level driver and RTOS work.
- Strong proficiency in Embedded C and C++ with hands‑on experience on microcontrollers and processors.
- Deep understanding of Real‑Time Operating Systems (e.g., FreeRTOS, VxWorks) and Linux kernel integration.
- Proficiency in Python for scripting, test automation, and build systems.
- Demonstrated ability to debug complex hardware‑software interactions using oscilloscopes, logic analyzers, and software trace tools.