Embedded Software Engineer
|Job Category||Software Engineering|
This is a fantastic opportunity to join a growing, innovative, employee-centred business in the space industry. We are looking for an experienced and motivated Embedded Software Engineer to join our team developing the next generation of spacecraft flight software and software tools.
As a key member of our R&D team you would be responsible for developing elements of our spacecraft flight software, especially those that interface directly with hardware or the operating system. You would have a key role in shaping the direction of our platform abstraction framework and integrating our code base, framework and drivers with our auto-coding tools. The primary implementation language is C, although a working knowledge of Python and/or Java would be useful as these languages are also used in our tooling. Experience of ARM-based platforms would be useful, as we are seeing an increasing number of flight computers using ARM cores.
Essential technical skills
We see the following as essential to the job:
- 5+ years experience of developing and debugging embedded/real-time systems
- Experience with a wide range of hardware platforms and operating systems
- Strong C skills demonstrated in a commercial environment
- Development of high quality code and adherence to best coding practices
- Experience with a range of interfacing technologies (e.g. RS232, RS422/485, I2C, SPI, MILBUS, SpaceWire) and communications protocols
- Ability to interpret datasheets, interface control documents, protocol definitions, design specifications etc.
- Experience with the use of test equipment such as logic analysers, oscilloscopes etc.
We’re looking for a dynamic and motivated engineer to join our team. We’re especially looking for someone who:
- Enjoys problems solving and balancing the pragmatic and practical with the abstract and elegant
- Works well both independently and in a team as part of a fast-paced technical environment
- Possess strong verbal and written communication skills, both for internal and external, customer facing, interactions
- Is interested in learning new skills and is open to new ideas and ways of working
Desirable technical skills
The following skills would definitely be a bonus:
- Space industry experience, in either hardware or software
- Hardware design experience, including FPGA development
- RTOS experience, especially FreeRTOS and RTEMS
- Experience with ARM Cortex-M0/M3/M4 (especially Atmel, Cypress, Microsemi), MSP430, OpenRISC, SPARC/LEON
- Agile software development
- Software product/quality assurance, especially ECSS-E-ST-40C, DO-178B/C
- Software development and test automation, including continuous integration
Please apply NOW for more information!