Design, implement, test, and qualify embedded software across the full stack for aerospace products, including microcontrollers and Linux-based single-board computers. Develop low-level drivers, BSPs, APIs (including FPGA interfaces), and end-use applications; review code and designs; integrate and validate hardware; support QA and in-orbit/post-production customer support; and produce engineering documentation and design reviews.
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.
In this position, you will be responsible for low-level and high-level software in CesiumAstro’s products through all phases of the development process. Key projects will include Linux-based single-board computers and high-reliability microcontroller systems. CesiumAstro’s goal is to create an out-of-the-box hardware and software experience which enhances our customers’ ability to rapidly integrate our products into their systems.
As a CesiumAstro software team member, you will be responsible for software designs from concept through production, including product roadmaps, block diagrams, detailed design and coding, analysis, test, qualification, and in-orbit support. The ideal candidate will have development experience at nearly every level of the software stack, including microcontrollers, low-level drivers, board support packages (BSP), end-use applications, and user interfaces. Additionally, the ideal candidate will have experience in software testing and high-reliability qualification, as well as software engineering and software project management practices.
The successful candidate will present engineering design review materials to our customers and executive team, as well as participate in proposal-writing efforts. As such, excellent written and verbal communication skills are required.
JOB DUTIES AND RESPONSIBILITIES
- Designing and implementing software for embedded devices and systems, from requirements to production and commercial deployment.
- Designing, developing, coding, testing, debugging, and documenting system software.
- Reviewing code and system designs.
- Analyzing code for efficiency, stability, and scalability.
- Integrating and validating new product designs.
- Supporting software quality assurance and optimizing I/O performance.
- Providing post-production/in-orbit customer support.
- Interfacing with hardware design and development engineers.
- Assessing third-party and open-source software.
JOB REQUIREMENTS AND MINIMUM QUALIFICATIONS
- A Bachelor of Science (BS) or Master of Science (MS) degree in Computer Science, Electrical Engineering, or Computer Engineering.
- 4+ years of industry experience in software development.
- Experience in hands-on development and troubleshooting of embedded hardware. API design for interfacing with FPGAs.
- Experience with products for aerospace applications.
- Programming experience in C or C++.
- Experience in embedded systems design with preemptive, multitasking real-time operating systems (experience with real-time Linux is desirable).
- Familiarity with software configuration management tools, defect tracking tools, and peer review.
- Excellent knowledge of real-time system coding techniques, IP protocols, interfaces, and hardware subsystems.
- Excellent understanding of multi-threaded applications and resource management.
- Excellent written and verbal communication skills.
PREFERRED EXPERIENCE
- Adequate knowledge of reading electronics schematics and component data sheets.
- Experience with ARM processors and fully-featured microcontrollers.
- Experience in the design and development of a Software Development Kit (SDK).
CesiumAstro considers several factors when extending an offer, including but not limited to, the role and associated responsibilities, a candidate’s work experience, education/training, and key skills.
Please be aware that many roles will be subject to both security and export control restrictions. These restrictions mean that factors including new starter’s nationality, any previous or dual nationalities held, place of birth and country of residence may limit those roles that you can perform for the organisation.
Please note: CesiumAstro does not accept unsolicited resumes from contract agencies or search firms. Any unsolicited resumes submitted to our website or to CesiumAstro team members not through our approved vendor list or Talent Acquisition will be considered property of CesiumAstro, and we will not be obligated to pay any referral fees.
Similar Jobs
Information Technology
Design, implement, test, document, and maintain real-time embedded software for satellite communication terminals. Responsibilities include requirements analysis, architecture, C++ development, automated testing, hardware debugging, issue resolution, Agile delivery, stakeholder reporting, technical ownership, peer review, and mentoring junior engineers.
Top Skills:
C++CanCi/CdConfluenceEthernetFreertosGitJIRALinuxRest ApisSerialSpi
Aerospace • Security • Energy • Defense
Design, develop, and maintain embedded software for low-power microcontrollers and Linux-based detection systems. Lead technical investigations, define requirements and interfaces, contribute to architecture, perform testing and code reviews, and collaborate across hardware and systems teams. Own software work packages, support Agile delivery, improve engineering practices, and mentor junior engineers. The role focuses on mission-critical chemical and explosive trace detection technology.
Top Skills:
BitbucketCC++CanCentosConfluenceFreertosGitI2CJIRAKeil RtxLinuxLogic AnalyzersMicrocontrollersMultimetersOscilloscopesPythonRed Hat Enterprise LinuxRocky LinuxRtosSpiThreadxUartUsb
Automation • Manufacturing
Develop and architect embedded C software for additive manufacturing products across the full lifecycle. Responsibilities include low-level drivers, middleware, real-time processing, communications, debugging, automated testing, verification, documentation, and hardware/software integration. The role involves collaboration with electronics, FPGA, systems, algorithms, and mechanical teams. At Lead level, the engineer provides technical direction, mentors colleagues, supports governance and planning, and drives reusable architectures and engineering best practices.
Top Skills:
Arm Cortex-MAzure DevopsCC++CanCanopenCi/CdDmaEthercatEthernetFpgaGitHardware-In-The-Loop TestingIo-LinkI²CMicrocontrollersModbusPythonReal-Time SystemsSpiStatic AnalysisUartUnit Testing
What you need to know about the London Tech Scene
London isn't just a hub for established businesses; it's also a nursery for innovation. Boasting one of the most recognized fintech ecosystems in Europe, attracting billions in investments each year, London's success has made it a go-to destination for startups looking to make their mark. Top U.K. companies like Hoptin, Moneybox and Marshmallow have already made the city their base — yet fintech is just the beginning. From healthtech to renewable energy to cybersecurity and beyond, the city's startups are breaking new ground across a range of industries.

