Staff Embedded Firmware & System Software Engineer — Platform Controller and SoC Stack
This position is listed on behalf of a partner company, who manages all applications and next steps. Our partner is looking for a Staff Embedded Firmware & System Software Engineer — Platform Controller and SoC Stack based in India.
This is a staff-level engineering opportunity focused on building the software stack that turns next-generation silicon into a production-ready computing platform. You’ll work across embedded firmware, platform controllers, boot software, kernel drivers, PCIe, IOMMU, DMA, and system-level interfaces. The role combines low-level software development with first-silicon bring-up, hardware debugging, and architecture-level problem solving. You’ll work closely with hardware and design teams to diagnose complex interactions between silicon, firmware, operating systems, and high-speed interconnects. Your work will directly influence platform reliability, performance, security, and the ability of operating systems to run effectively on new hardware. The environment is highly technical, fast-moving, and oriented toward engineers who enjoy solving difficult problems across hardware and software boundaries.
Accountabilities:
-
Design, implement, and maintain Zephyr RTOS firmware for platform management controllers, including device drivers, subsystem integrations, and application-level services.
-
Develop high-quality drivers aligned with Zephyr's driver model, including devicetree bindings, Kconfig configuration, initialization levels and priorities, and device APIs.
-
Bring up and debug PCIe links on first silicon, investigating link training, LTSSM progression, lane reversal and polarity, equalization, and speed and width negotiation issues.
-
Implement and maintain PCIe host controller and endpoint drivers, including enumeration, configuration space, BAR allocation, MSI/MSI-X interrupt routing, AER, error handling, ASPM, and link power states.
-
Configure, validate, and troubleshoot IOMMU functionality, including address translation, DMA remapping, device isolation domains, page-table management, and fault reporting and recovery.
-
Develop system software throughout the boot and runtime path, including bootloaders, firmware-to-OS handoff, ACPI or device-tree descriptions, kernel drivers, and DMA and memory-management interfaces.
-
Debug DMA correctness, memory access, and cache coherency issues end to end, tracing problems from device transactions through translation and into system memory.
-
Perform post-silicon bring-up activities including first-boot debugging, clock and reset validation, bus enumeration, and diagnosis of hardware-versus-firmware issues.
-
Use JTAG/SWD, ETM/ITM trace, protocol analyzers, logic analyzers, and other low-level debugging tools to investigate intermittent, timing-sensitive, and multi-master failures.
-
Translate hardware specifications, register maps, and silicon behavior into correct, testable, maintainable software.
-
Collaborate closely with hardware, RTL, architecture, and design teams to resolve complex silicon and system-level issues.
-
Contribute to software architecture, engineering standards, code reviews, and development practices across the platform software stack.
-
Evaluate and apply modern approaches, including AI-assisted development tools, to improve software engineering productivity and quality.
-
8–10 years of professional experience in embedded firmware and/or system software development, primarily using C.
-
Meaningful hands-on experience with modern C++ or Rust.
-
Deep RTOS experience on 32-bit microcontrollers, particularly Arm Cortex-M or RISC-V, including scheduling, priority assignment, interrupt-service routines, synchronization primitives, and associated failure modes.
-
Proven experience developing drivers within a formal driver model, including bus drivers and interrupt-driven peripherals.
-
Strong understanding of system software fundamentals, including virtual memory, address translation, DMA, cache coherency, kernel/user-space boundaries, and the path from reset vector to a running operating system.
-
Working knowledge of PCIe architecture, including enumeration, configuration space, BARs, MSI/MSI-X, and transaction models, with the ability to diagnose device discovery and data-transfer problems.
-
Practical understanding of IOMMU concepts, including address translation, device isolation, DMA remapping, and common failure modes caused by incorrect configuration.
-
Demonstrated ability to interpret hardware specifications and register maps and translate them into reliable, testable software with minimal supervision.
-
Strong debugging and analytical skills, particularly when working across hardware, firmware, operating systems, and silicon.
-
Experience with PCIe and high-speed interconnects, IOMMU and virtualization, system software, RTOS platforms, or embedded peripherals is highly desirable.
-
Strong interest in AI-assisted software development and demonstrated ability to use AI-based coding tools effectively.
-
Bachelor's or Master's degree in Electrical Engineering, Computer Engineering, Computer Science, or a related discipline, or equivalent practical experience.
-
Strong communication and collaboration skills, with the ability to work effectively across hardware and software engineering teams.
-
Ability to operate independently, take ownership of technically complex problems, and make sound engineering decisions.
-
Remote-friendly working opportunity in India, with the option to work from Bengaluru.
-
Opportunity to work on next-generation silicon and advanced AI/HPC infrastructure technologies.
-
Exposure to the complete platform software stack, from embedded controllers and boot firmware through operating systems and high-speed interconnects.
-
Significant technical ownership across firmware, system software, silicon bring-up, and platform architecture.
-
Opportunity to solve complex hardware-software problems involving PCIe, IOMMU, DMA, memory systems, and high-performance computing.
-
Close collaboration with experienced hardware, RTL, architecture, and software engineering teams.
-
Fast-moving engineering environment with an emphasis on technical depth, ownership, experimentation, and shipping real products.
-
Opportunities to work with emerging semiconductor and chiplet technologies.
-
Professional growth through staff-level technical ownership and exposure to challenging system architecture problems.
-
Compensation, healthcare, leave, and other employment benefits are provided according to the applicable employment package and location-specific terms.