Embedded Software Engineer

Bright Ascension

Direct Entry Job Permanent Edinburgh, Dundee, or Bristol, UK

Uploaded 20 Jan 2020

Job Description

Job summary

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.

About the job

We’re ideally looking to employ someone full time, although this is negotiable. Salary will be in the range of £30k-£45k+, depending on experience, with 36 days of holiday per annum and a 6% employer’s pension contribution. We have offices in Edinburgh, Dundee and Bristol, and this role could be filled in any of our locations, although a certain amount of inter-site travel may be required. All applicants should have the right to work in the UK.

As a member of the Bright Ascension team you would have a stake in the business through our Employee Benefit Trust which owns 16% of our business.

Bright Ascension

We are a small, innovative company changing the way that software is developed in the space industry. With customers across the world, ranging from universities and space agencies, to commercial organisations and start-ups, our core technologies enable our customers to develop and operate space-based systems and services faster, cheaper and more reliably. Innovation is at the heart of what we do and it is our team which drives that innovation; this is reflected in our commitment to employee ownership, which gives all of us a voice, and a stake, in our current and future success.

Person Specification

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.

Personal skills

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