CesiumAstro is seeking an experienced Embedded Software Engineer II with a strong background in embedded Linux development and the Yocto build system. This role is ideal for engineers with hands-on experience in embedded systems, including device drivers, kernel customization, bootloaders, and board bring-up, with a preference for experience with the Xilinx platform (experience with other platforms is also valued).
As a member of our software team, you will contribute to the full software development lifecycle, from product concept through production, participating in architecture design, implementation, testing, qualification, and in-orbit support. This role involves working closely with hardware, systems, and FPGA engineers, and provides opportunities for technical leadership and cross-disciplinary collaboration.
JOB DUTIES AND RESPONSIBILITIES
- Develop and port embedded Linux applications, device drivers, and libraries.
- Configure, customize, and integrate the Linux kernel and embedded bootloaders (e.g., U-Boot).
- Maintain and evolve the Yocto-based Linux build system within a CI/CD pipeline.
- Package and deploy software images for diverse embedded hardware platforms.
- Create tailored Linux distributions for specific embedded applications.
- Collaborate across disciplines (firmware, hardware, systems) to ensure seamless system integration and performance.
- Participate in design reviews and contribute to customer-facing technical documentation and proposals.
JOB REQUIREMENTS AND MINIMUM QUALIFICATIONS
- Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, Computer Engineering, or related field.
- 2+ years of professional experience in embedded software development.
- Proficiency in C or C++ for embedded systems.
- Experience developing and debugging software on embedded hardware (e.g., power systems, motors, sensors).
- Understanding of multi-threaded programming and resource-constrained environments.
- Familiarity with version control, issue tracking, and peer review workflows.
- Strong verbal and written communication skills.
PREFERRED EXPERIENCE
- Practical experience with Embedded Linux and the Yocto Project.
- Experience with Xilinx SoCs or other microcontroller-based systems.
- Proficiency with bootloaders, kernel development, and system bring-up.
- Familiarity with CI/CD tools and practices in embedded environments.
- Ability to manage multiple priorities and work independently in a fast-paced environment.

