Overview
We seek a highly skilled and technically capable Senior Embedded Linux Software engineer to join the Linaro Professional Services team. Applicants should have a proven record of developing and delivering system software for production-grade consumer electronics and industrial IoT devices. As an experienced senior developer, you will cover the role of a technical leader in customer projects, developing end-to-end operating system (Yocto/OpenEmbedded/Debian) support, bringing up BSPs for devices, and serving as kernel and operating system technical expert on the project. A successful candidate will develop, support, maintain, and document software functionality; identify and evaluate new technologies for implementation; analyze code to find causes of errors and revise programs as needed; participate in software design and analyze user needs to determine technical requirements; and consult with the end user to prototype, refine, test, and debug programs to meet needs. Requires expert skill set, proficiency, and a proven record of open-source contributions.
Main Duties
- Design and development of custom operating system solutions based on Yocto, Android, and/or Debian platforms.
- Enable Linux support for various hardware blocks
- Knowledge of ARM SoCs, with particular emphasis on Qualcomm SoCs.
- Bring up hardware platforms from scratch.
- Develop and support continuous integration and testing.
- Enable and test end-to-end use cases on new platforms.
- Provide technical support and implement bug fixes.
- Provide technical leadership in your areas of expertise for the project. Influence others, including through engineering best practices and/or specialist knowledge.
- Drive forward significant features or improvements and increase the quality of the product.
- Develop quality functionality on schedule, including specification, design, development, documentation, and testing.
- Collaborate within a team and with the upstream community on a day-to-day basis.
- Presence and talks at open-source conferences.
Education
Educated to Computer Science degree level or have similar relevant experience.
Key Technical Skills & Experience
- Minimum seven years of experience working with production-grade Linux (Android/Yocto/Debian) for Embedded/Consumer Electronics/IoT Devices
- Familiar with OS image generation (Yocto/AOSP/Debian), packaging, release methodology, upgrades and updates, CVEs tracking and fixing, and CI/CD
- A minimum of 5+ years of Embedded Linux experience, including SoC bring-up, BSP upgrades, or any other Linux kernel subsystems such as display, audio/video, compute, or power management.
- Participated in upstreaming of Linux projects like Linux kernel or maintaining open source projects is highly desired
- Understand basic ARM CPU ISA architecture.
- Experience with full boot chain and bootloaders like U-Boot, GRUB, and UEFI.
- Knowledge of hardware protocols such as USB, PCIe, UART, I2C, SPI, and GPIO, as well as prior experience with Bluetooth and wireless technologies, is a plus.
- Hands-on experience with embedded hardware and software debugging using PC software tools, oscilloscopes, logic analyzers, etc…
- Track record of open source contributions to Linux kernel, userspace, or open source projects in general
Desirable Skills & Experience
- Familiarity with Qualcomm SoCs and Qualcomm Snapdragon internal architecture
- PCIe or USB4 Experience.
- Linux DRM subsystem experience.
- Experience in enabling end-to-end solutions.
- Active Linux kernel developers or maintainers
- Past Speaker at open source conferences with technical work published in open source forums, blogs, articles, etc
- Ideal candidates for this role would be curious, dependable, and adaptable, as well as pragmatic and capable of outreach.
Location: Remote from preferred countries
Preferred location: United Kingdom. This position is also open to exceptional candidates who are residents of the United States of America, Canada and Germany. Depending on the successful candidate's eventual location, the position can be on either a fully remote or hybrid working basis. Please note that applications from candidates outside these locations will not be considered or acknowledged.
International travel is required to attend Linaro Connect events, technical development sprints, and key community events.