Linux Software Engineer
Simera Sense
Linux Software Engineer
Simera Sense is a leading provider of Earth observation camera solutions for the global small satellite market. Committed to excellence and innovation, we deliver superior products and services to our worldwide customer base. Our Holdings Company is in Belgium, and our South African company is based in Somerset West, close to all amenities and diverse natural beauty, providing great lifestyle options.
Are you a skilled Linux Software Engineer ready to tackle complex challenges and build innovative solutions? We’re seeking a passionate professional to design, develop, and optimize software for Linux-based systems. In this role, you’ll work on cutting-edge projects that demand deep technical expertise, problem-solving skills, and a commitment to delivering high-quality code. If you thrive in collaborative environments and want to make an impact in technology, we’d love to hear from you.
Job Purpose:
Design, develop, and maintain robust, secure, and efficient embedded Linux software for edge computing platforms deployed in space, enabling autonomous data processing and decision-making in orbit.
Responsibilities:
Strategic Contribution
- Contribute to the company’s space-edge computing roadmap, identifying innovation and scalability opportunities.
- Support cross-functional initiatives focused on autonomy, onboard intelligence, and in-orbit data sovereignty.
Embedded Linux Development
- Architect and implement embedded software solutions on Linux-based platforms tailored for space-grade edge computers.
- Customize and optimize Linux kernels, drivers, bootloaders and board support packages for performance and reliability in radiation-prone, low-power environments.
- Integrate real-time capabilities and ensure deterministic behaviour where required.
System Integration & Hardware Abstraction
- Collaborate with hardware engineers to interface with custom boards, sensors, and space-qualified components.
- Develop and maintain hardware abstraction layers (HAL) and middleware to ensure seamless integration across subsystems
In-Orbit Software Reliability
- Design fault-tolerant systems with watchdogs, redundancy, and recovery mechanisms to ensure continuous operation in orbit.
- Implement secure update mechanisms for remote patching and software upgrades post-launch.
Edge Computing Enablement
- Develop and optimize onboard data processing pipelines for AI/ML inference, image analysis, and telemetry compression.
- Ensure efficient resource management (CPU, memory, I/O) for real-time edge workloads.
Testing & Validation
- Lead rigorous testing campaigns including unit, integration, and hardware-in-the-loop (HIL) testing.
- Simulate orbital conditions (thermal, radiation, latency) to validate software robustness.
Collaboration & Documentation
- Work closely with mission systems, payload, and ground segment teams to align software capabilities with mission objectives.
- Maintain detailed documentation for software architecture, interfaces, and operational procedures.
Compliance & Standards
- Ensure software adheres to space industry standards (e.g., ECSS, NASA, CubeSat protocols) and cybersecurity best practices.
- Participate in internal audits and reviews to ensure flight-readiness and mission assurance.
Continuous Technical Growth
- Stay abreast of emerging trends in embedded Linux, edge computing, and space-grade software systems.
- Experiment with new tools, frameworks, and kernel features that could enhance system performance or resilience in space environments.
- Pursue certifications, courses, or research relevant to aerospace software engineering and embedded systems.
Innovation in Edge Computing
- Explore novel approaches to onboard data processing, including AI/ML inference, distributed computing, and low-latency decision-making.
- Prototype and evaluate new software architectures that improve autonomy, fault tolerance, or energy efficiency in orbit.
Minimum Requirement:
Bachelor’s Degree or Advanced Diploma Computer Engineering, Electrical/Electronic Engineering, Computer Science, Mechatronics Engineering, Software Engineering, Aerospace Engineering (with a strong software focus)
Required Experience:
5+ years of professional experience in embedded software development, with a strong focus on Linux-based systems.
Embedded Linux Development
- Experience with kernel customization, device drivers, bootloaders, and low-level system programming.
- Familiarity with build systems like Yocto, , and OpenEmbedded.
Real-Time and Resource-Constrained Systems
- Hands-on work with real-time operating systems (RTOS) or real-time Linux extensions.
- Optimization for low-power, high-reliability environments.
Hardware-Software Integration
- Experience interfacing with sensors, microcontrollers, and custom hardware platforms.
- Debugging and validation using tools like JTAG, oscilloscopes, and logic analysers.
Space or Aerospace Systems (Preferred but not always required)
- Exposure to space-grade software development, radiation-tolerant systems, or satellite subsystems.
- Understanding of standards like ECSS, NASA software assurance, or CubeSat protocols.
Software Testing & Validation
Experience with automated testing, hardware-in-the-loop (HIL), and simulation environments.
Security & Reliability
Knowledge of secure coding practices, fault tolerance, and system recovery mechanisms
Recommendations:
- Master’s or PhD in Embedded Systems, Aerospace Engineering, or Computer Science.
- Certifications in Embedded Linux, Yocto Project, or RTOS.
- Training in space systems engineering or satellite operations.
- Prior experience developing software for space missions, CubeSats, or satellite payloads.
- Familiarity with space-grade hardware platforms (e.g., radiation-hardened processors, FPGA-based systems).
- Understanding of ECSS, NASA, or ESA software standards and mission assurance protocols.
Expertise in:
- Linux kernel development and customization.
- Real-time systems and deterministic software behaviour.
- Secure boot, encryption, and cybersecurity for embedded systems.
- Fuzz testing
- Experience with:
- Cross-compilation and toolchains for ARM, RISC-V, or other embedded architectures.
- Hardware-in-the-loop (HIL) testing and simulation environments.
- Containerization (e.g., Docker or WASM) and orchestration in constrained environments.
- Proficiency with:
- Git, CI/CD pipelines, and automated testing frameworks.
- Build systems like Yocto, Buildroot, or CMake.
- Debugging tools (e.g., GDB, Valgrind, JTAG interfaces).
- Familiarity with io_uring
- Special requirement(s):
- Willingness to travel overseas.
What we offer:
- The opportunity to work in the fast-growing space industry.
- Niche global market for optical payloads for microsatellites.
- Cutting-edge technology at your fingertips
- A competitive salary
- A friendly working environment.
Ready to make an impact?
Apply now by submitting your CV and cover letter.