Senior Embedded Software Engineer

Job Code : HEX20_SW_J01003

Job Description

  • Looking for a Senior Embedded Software Engineer to architect and lead development of real-time and Linux-based embedded systems.
  • You will drive technical decisions across FreeRTOS and embedded Linux platforms, set architecture and coding standards, and mentor engineers across the team.

Key Responsibilities

  • Architect embedded software systems spanning FreeRTOS-based subsystems and embedded Linux platforms
  • Define system architecture, task/process partitioning, IPC strategy, and overall software design
  • Lead technical decisions on RTOS vs. Linux boundaries, board support packages (BSPs), and kernel/driver integration
  • Set coding standards, review processes, and best practices across the embedded team
  • Guide and mentor junior and mid-level engineers; lead design and code reviews
  • Drive root-cause analysis for the most complex system-level and cross-layer issues
  • Own technical roadmap decisions in collaboration with product and hardware teams
  • Evaluate and integrate new SoCs, toolchains, and platform technologies

Required Skills & Qualifications

  • 5-7 years of embedded software engineering experience, including system-level architecture ownership
  • Proven experience architecting solutions using FreeRTOS (task/priority design, memory strategy, ISR-to-task communication, scheduling trade-offs)
  • Strong hands-on experience with embedded Linux (kernel configuration, device drivers, BSP customization, Yocto/Buildroot)
  • Deep understanding of microcontroller/microprocessor architectures (ARM Cortex-M/A or similar)
  • Strong grasp of low-level debugging and system bring-up across both RTOS and Linux environments
  • Track record of leading design reviews and mentoring engineers
  • Excellent communication skills, able to justify architectural trade-offs to cross-functional stakeholders
  • Ability to lead, mentor, and do task planning for a group size varying from 3 to max 7 engineers.

Preferred Skills

  • Experience with multi-core or heterogeneous SoCs (RTOS + Linux running together)
  • Experience with secure boot, firmware signing, or embedded security best practices
  • Familiarity with communication buses at scale (Ethernet/TCP-IP stacks, CAN-FD, USB)
  • Experience setting up CI/CD pipelines for embedded targets (hardware-in-the-loop testing)