Embedded Software Engineer II
Role details
Job location
Tech stack
Job description
- 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.
Requirements
Do you have experience in Version control systems?, Do you have a Master's degree?, At CesiumAstro, we are developers and pioneers of out-of-the-box communication systems for satellites, UAVs, launch vehicles, and other space and airborne platforms. We take pride in our dynamic and cross-functional work environment, which allows us to learn, develop, and engage across our organization. If you are looking for hands-on, interactive, and autonomous work, CesiumAstro is the place for you. We are actively seeking passionate, collaborative, energetic, and forward-thinking individuals to join our team. 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., * 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., * 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.
Benefits & conditions
Pulled from the full job description
- Health insurance
- Retirement plan
- Vision insurance
- Health savings account
- Dental insurance
- Flexible spending account
- Stock options