Vyoma is on a mission to solve one of the big issues humanity faces today: the problem of space debris threatening active satellites in orbit. They are seeking an experienced Embedded Engineer to take ownership of the embedded software layer within their Payload On-Board Computer system, ensuring the reliability of hardware and software integration.
Responsibilities:
- Build, maintain, and evolve the Yocto-based embedded Linux system for the PLOBC, including kernel-level work, driver porting, HAL development, and cross-compiling toolchain maintenance
- Own the embedded software architecture, ensuring it reflects the needs of the wider system and can be clearly communicated across the team
- Work closely with the FPGA engineer to develop and iterate on PS ↔ PL interfaces, and support hardware interface development (SPI, I2C, UART, PCIe, and similar protocols)
- Lead board bring-up activities and actively debug hardware/software boundary issues using logic analysers, oscilloscopes, and JTAG
- Design and lead the embedded testing strategy, including unit, integration, HIL, and FlatSat testing — and build out CI/CD pipelines and automated testing infrastructure
- Drive standards alignment (CCSDS, ECSS) within the embedded domain from the start, not as an afterthought
- Own the low-level application components that interact closely with hardware, and collaborate with the application software team on integration and design
- Proactively engage with adjacent teams to pull out system-level understanding and requirements, rather than waiting for them to be handed over
Requirements:
- Hands-on experience building and maintaining Yocto-based embedded Linux systems — this is the core of the role
- Strong knowledge of the Linux kernel, driver development/porting, HAL, boot process, device trees, and BSP development
- Strong working knowledge of hardware communication protocols (SPI, I2C, UART, PCIe, and similar) and working knowledge of FPGA-related protocols (AXI, Avalon, Wishbone)
- Practical experience with board bring-up and hardware debug tools (oscilloscopes, logic analysers, JTAG)
- Ability to read and interpret hardware schematics and datasheets independently
- Strong proficiency in C and C++; experience with Python for tooling, scripting, and test automation
- Understanding of RTOS concepts and bare-metal programming, even if Linux is the primary environment
- Experience designing and implementing testing frameworks for embedded systems, including HIL or system-level testing
- Demonstrated ability to make sound technical decisions with incomplete or evolving requirements
- At minimum 3+ years of experience, with the maturity to own the embedded domain fully as the sole embedded engineer
- Strong communication skills — able to translate embedded concepts clearly for application and FPGA engineers without assuming shared knowledge
- Adaptable and comfortable in a startup environment where priorities shift and roles are broader than a job description
- Experience with FPGA-based SoCs, particularly Zynq UltraScale+ MPSoC, and PS ↔ PL interface development (AXI, DMA, etc.)
- Background in aerospace or satellite systems development
- Knowledge of radiation effects on software systems and mitigation techniques
- Familiarity with space industry standards (ECSS, CCSDS)
- Experience with or genuine enthusiasm to learn Rust for embedded development
- Experience building CI/CD pipelines for embedded software in resource-constrained environments
- Experience contributing to application-layer software beyond the embedded domain
- Experience mentoring junior engineers or providing technical direction on a team