Join a leading aerospace engineering company in Somerset West as an Embedded Software Engineer and help shape the future of satellite communication. This permanent role focuses on developing and verifying advanced space-grade systems within a collaborative multidisciplinary team environment.
KEY TASKS
The Senior Embedded Software Engineer will be responsible for developing and maintaining high-reliability embedded software for satellite subsystems with emphasis on real-time communication and signal-processing systems:
Develop all aspects of an embedded system software implementation including creating debugging and testing software as well as supporting hardware integration
Optimize code for memory efficiency and speed on resource-constrained devices
Contribute to firmware architecture code reviews and documentation to maintain reliability and scalability
Research develop and testing of theoretical and conceptual designs
Work as part of a multidisciplinary team to derive and define software requirements based on system-level requirements
Create and maintain formal engineering documentation such as specifications test procedures design reports
Attending requirement and proposal discussions with clients when required
Experience (ideally within aerospace or defence industry):
Embedded software/firmware development (C C)
Experience developing device drivers and low-level software for hardware interfaces such as ADC GPIO PWM UART SPI and I2C
Design and implement firmware in C/C for bare-metal and RTOS-based systems (e.g. FreeRTOS)
Experience with version control systems (eg. git) and issue tracking tools (eg Jira Youtrack)
High-reliability electronic product design and realisation (>5-7 years)
Practical experience testing and debugging electronic circuits (>5-7 years)
Additional knowledge areas that would strengthen the application:
Experience with ARM and/or RISC-V microprocessor architectures
Experience with embedded Linux including application development; experience with driver and/or kernel development is a plus
Experience with test automation frameworks and CI/CD pipelines
Experience with Rust
Experience in FPGA firmware development using Hardware Description Languages (HDLs) like Verilog or VHDL
Experience modelling DSP algorithms (FFT filters) and communication waveforms in MATLAB / Python / etc.
Linux administrator proficiency
COMPETENCIES & SKILLS
Positive self-motivated self-starter
Innovative thinker with a strong outside-the-box mindset
Responsible and accountable
Strong team player who collaborates effectively with others
Excellent written and verbal communication skills
Customer-focused approach
Able to persuade and positively influence others
Resilient with the ability to bounce back from challenges
Flexible and able to multitask in a fast-paced ambiguous environment
Resourceful and solution-oriented
Strong self-management skills with the ability to set and manage priorities
KEY PURPOSE OF JOBJoin a leading aerospace engineering company in Somerset West as an Embedded Software Engineer and help shape the future of satellite communication. This permanent role focuses on developing and verifying advanced space-grade systems within a collaborative multidisciplinary team en...
KEY PURPOSE OF JOB
Join a leading aerospace engineering company in Somerset West as an Embedded Software Engineer and help shape the future of satellite communication. This permanent role focuses on developing and verifying advanced space-grade systems within a collaborative multidisciplinary team environment.
KEY TASKS
The Senior Embedded Software Engineer will be responsible for developing and maintaining high-reliability embedded software for satellite subsystems with emphasis on real-time communication and signal-processing systems:
Develop all aspects of an embedded system software implementation including creating debugging and testing software as well as supporting hardware integration
Optimize code for memory efficiency and speed on resource-constrained devices
Contribute to firmware architecture code reviews and documentation to maintain reliability and scalability
Research develop and testing of theoretical and conceptual designs
Work as part of a multidisciplinary team to derive and define software requirements based on system-level requirements
Create and maintain formal engineering documentation such as specifications test procedures design reports
Attending requirement and proposal discussions with clients when required