Track This Job
Add this job to your tracking list to:
- Monitor application status and updates
- Change status (Applied, Interview, Offer, etc.)
- Add personal notes and comments
- Set reminders for follow-ups
- Track your entire application journey
Save This Job
Add this job to your saved collection to:
- Access easily from your saved jobs dashboard
- Review job details later without searching again
- Compare with other saved opportunities
- Keep a collection of interesting positions
- Receive notifications about saved jobs before they expire
AI-Powered Job Summary
Get a concise overview of key job requirements, responsibilities, and qualifications in seconds.
Pro Tip: Use this feature to quickly decide if a job matches your skills before reading the full description.
- ‹ All jobs
Full-time
Ankara, Turkey
We are seeking a Spacecraft Embedded Software Engineer to support the development, integration, and validation of flight software and payload software for spacecraft platforms. This role combines low-level embedded development, Linux-based system engineering, and hardware-aware debugging with a strong emphasis on testing, reliability, and system integration.
You will work across heterogeneous compute environments within a multi-disciplinary engineering team, collaborating closely with hardware, FPGA, RF, systems, and operations engineers to deliver robust embedded solutions. The role includes payload-facing development for SDR-based instruments, high-throughput data movement, boot flow management, and extensive verification workflows. Hands-on hardware interaction and strong debugging discipline are essential.
Responsibilities
Embedded Software Development
- Develop and maintain embedded software in C/C++ for spacecraft flight and payload subsystems.
- Support payload software development for SDR-based systems using libiio and Linux userspace frameworks.
- Implement device drivers, middleware, and application-layer logic across bare-metal, RTOS, and Linux environments.
- Design and maintain boot flows including FSBL, U-Boot, and OS initialization sequences.
- Implement high-throughput data pipelines and manage DMA-based transfers between programmable logic and processor subsystems.
- Lead and support HIL, SIL, unit, and integration testing workflows.
- Develop automated test frameworks using pytest and scripting in Python.
- Perform system bring-up, debugging, and integration with spacecraft hardware and payload electronics.
- Support verification and validation campaigns across development and qualification phases.
- Collaborate with hardware, FPGA, and algorithm teams to ensure reliable end-to-end system behavior.
- Develop and maintain reproducible build environments using CMake, Make, and related build systems.
- Use Git and CI/CD pipelines to support automated builds, testing, and deployment workflows.
- Utilize debugging and profiling tools including gdb, valgrind, and performance instrumentation tools.
- Perform performance profiling and optimization of CPU, disk, and network workloads.
- Develop and maintain embedded Linux environments using Yocto and PetaLinux.
- Configure device trees, kernel modules, and userspace services.
- Implement RTOS-based solutions using FreeRTOS or Zephyr, and develop bare-metal firmware when required.
- Manage system-level configuration and runtime services in Linux-based spacecraft compute environments.
- Implement and debug digital communication interfaces including: RS-232 / RS-485 / RS-422, I2C, SPI, CAN bus, Ethernet
- Work with hardware engineers to validate interface behavior, timing, and robustness.
- Support board-level debugging and bring-up activities.
- Utilize QEMU or equivalent virtualization/emulation frameworks for system testing and development.
- Develop simulation-based validation workflows and cross-platform testing environments.
- Use containerization tools such as Docker for development reproducibility and CI environments.
- Produce and maintain high-quality technical documentation, including design documents, ICDs, test procedures, and troubleshooting guides.
- Participate in design reviews and cross-functional technical discussions.
- Work effectively within a multi-disciplinary team, coordinating closely with hardware and systems engineering teams throughout development and integration phases.
- Maintain operational runbooks, integration notes, and development guidelines to support long-term maintainability.
- Bachelor’s degree in Electrical Engineering, Computer Engineering, or related field.
- 2+ years of professional embedded software development experience in C/C++.
- Strong experience with embedded Linux environments and Linux-based development workflows.
- Experience with CMake, Make, and build system design.
- Proficiency with gdb and valgrind for debugging and performance analysis.
- Experience with Git and CI/CD workflows.
- Experience performing unit, integration, and system-level testing, including HIL/SIL environments.
- Hands-on experience working with hardware and performing board bring-up and debugging.
- Understanding of digital communication protocols (RS232/485/422, I2C, SPI, CAN, Ethernet).
- Experience with ARM-based embedded systems and microcontroller platforms.
- Working knowledge of bootloaders and embedded boot sequences (FSBL, U-Boot).
- Familiarity with DMA-based data movement and memory architecture in embedded systems.
- Proficiency in Python for scripting and test automation.
- Experience with libiio and SDR payload software development.
- Familiarity with QEMU or other emulation environments for embedded testing.
- Experience with Yocto and PetaLinux build environments and device tree configuration.
- Experience with FreeRTOS or Zephyr RTOS and bare-metal firmware development.
- Knowledge of pybind11 for bridging C++ and Python environments.
- Experience with Docker for reproducible development environments and CI integration.
- Understanding of software-defined radio architectures and their operational constraints.
- Basic DSP knowledge relevant to SDR payloads (sampling, IQ data, filtering concepts).
- Experience implementing high-throughput streaming pipelines and optimizing memory bandwidth usage.
- Familiarity with spacecraft or high-reliability embedded systems environments.
- Competitive salary and a comprehensive benefits package, including health insurance and fuel support.
- Continued support for candidates currently enrolled in a master's or doctoral program.
- Opportunities for continuous professional growth and skill development.
- Engage in a collaborative and innovative work environment.
- Enjoy a positive and enriching work environment, situated in a desirable location.
- Required fields
Last name*
Email address*
Phone number*
Linked in profile*
Resume*
Upload a file
or drag and drop
PDF, DOCX, DOC
Email to a friend
Share on LinkedIn
Share on Twitter
Powered by
Key Skills
Ranked by relevanceReady to apply?
Join Baryonic Space and take your career to the next level!
Application takes less than 5 minutes

