Job Title: Senior Embedded Software Developer – Yocto / Linux / DevOps
Experience: 8+ Years
Employment Type: Full-Time
Location: [Location / Hybrid / Remote]
Job Summary
We are looking for a highly experienced Senior Embedded Software Developer with 8+ years of hands-on experience in embedded Linux software development and DevOps practices. The ideal candidate will have strong expertise in Linux and Yocto Project, along with experience in embedded system development, build automation, CI/CD, and software release processes.
The candidate will be responsible for developing, integrating, building, deploying, and maintaining embedded software platforms and will work closely with cross-functional teams to deliver reliable and high-quality embedded products.
Key Responsibilities
- Design, develop, integrate, and maintain embedded software solutions for Linux-based embedded systems.
- Develop and customize embedded Linux distributions using the Yocto Project.
- Create and maintain Yocto recipes, layers, images, and build configurations.
- Configure and optimize Linux kernel, device tree, bootloader, and system components.
- Develop and maintain automated build, integration, testing, and deployment pipelines.
- Implement and maintain CI/CD pipelines for embedded software development and release management.
- Automate software build, packaging, testing, and deployment processes.
- Collaborate with firmware, hardware, application software, QA, and DevOps teams.
- Troubleshoot and resolve complex issues related to embedded Linux, build systems, and software integration.
- Participate in code reviews, technical design discussions, and software architecture activities.
- Maintain source code repositories, branching strategies, and release processes.
- Improve development workflows, build performance, automation, and overall engineering productivity.
- Support product releases and provide technical guidance to development and engineering teams.
Mandatory Technical Skills
- 8+ years of experience in Embedded Software Development.
- Strong hands-on experience with Embedded Linux.
- Mandatory experience with Yocto Project / OpenEmbedded (OE).
- Strong knowledge of Yocto recipes, layers, BitBake, image creation, and customization.
- Experience with Linux kernel configuration and customization.
- Good understanding of Linux boot process and system-level development.
- Strong programming skills in C and/or C++.
- Experience with Git and source code management.
- Strong understanding of DevOps practices and CI/CD.
- Hands-on experience with CI/CD tools such as Jenkins / GitLab / GitHub Actions / Azure DevOps - especially Azure DevOps
- Experience with build automation and scripting using Shell/Bash and/or Python.
- Experience in debugging and troubleshooting embedded Linux systems.
DevOps and Automation Skills
- Experience designing and maintaining Azure DevOps CI/CD pipelines.
- Automated build and release management for embedded software.
- Experience integrating Yocto builds with CI/CD pipelines.
- Source code management using Git.
- Build automation and scripting.
- Experience with artifact management and software release processes.
- Exposure to Docker and containerization is preferred.
- Experience with automated testing and continuous integration practices.
Embedded Systems Skills
- Embedded Linux system development.
- Yocto Project and OpenEmbedded.
- Linux kernel and device tree.
- Bootloaders such as U-Boot.
- Cross-compilation and toolchains.
- Board Support Package (BSP) development and customization.
- Embedded system debugging and performance optimization.
- Understanding of hardware-software integration.
Preferred Skills
- Experience with ARM-based embedded platforms.
- Knowledge of QT / QML
- Experience in BSP development.
- Knowledge of U-Boot and Linux kernel internals.
- Experience with Docker or containerized environments.
- Exposure to Kubernetes is a plus.
- Experience with automated testing frameworks.
- Knowledge of security practices in embedded Linux systems.
- Experience working in Agile/Scrum development environments.
- Experience in regulated industries such as healthcare, automotive, industrial, or medical devices is an advantage.
Education
Bachelor's or Master's degree in Computer Science, Electronics, Electrical Engineering, Embedded Systems, or a related technical discipline.