User Interface Developer

Bright Ascension

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

Uploaded 18 Nov 2021

Job Description

About Bright Ascension

We are a fast growing, 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. With offices in Dundee, Edinburgh and Bristol we now have over 30 members of staff and plans to expend to a team of around 50 over the next 12 months. We are at a very exciting time in our ambitious growth plans and have fantastic opportunities for talented individuals to join our team. 

Job summary

We are looking for a motivated and enthusiastic software engineer who has a strong focus on great UI design to join our team developing the next generation of spacecraft ground software and software tools.

As a key member of our team you would be responsible for leading the design and development of our main user interfaces across our product range, from spacecraft ground software to spacecraft simulators and development tooling. You would be responsible for helping to identify user requirements, translating those into a UI design and implementing the UI in a suitable technology. In some cases you may be working with a designer to support the creation of graphical assets and in layout design.

We are targeting both web-based and desktop UIs and are interested in someone who either has experience with a range of implementation technologies or is interested in learning new skills. As a baseline, we are expecting the primary implementation language to be Flutter/Dart, although we are willing to consider alternatives. A working knowledge of Java as well as Python would be useful as these are also used in our back ends and tooling.

We see this role as being full time, although this is negotiable. Ideally we would like this role to be based in either Dundee or Edinburgh, to allow for regular interaction with the teams responsible for product management, business development, sales and marketing.

Person Specification

Essential skills and experience

We see experience with the following as essential to the job:

  • experience with UI/UX design concepts and the UI/UX design process for creating user-centred, usable interfaces;
  • frontend development skills, ideally demonstrated in a commercial environment;
  • experience with both web-orientated and desktop frontend development;
  • development and debugging of high quality code and adherence to best coding practices;
  • experience with Java application development; and
  • the ability to work in a Linux environment using a range of standard development tools. 

Personal skills

We're especially looking for someone who:

  • enjoys problems solving in a range of programming languages, with an interest in learning new languages and frameworks;
  • has a passion for usability and creating visual interfaces which improve workflow;
  • works well both independently and in a team as part of a fast-paced technical environment;
  • is diligent, creative, and attentive to details;
  • possess strong verbal and written communication skills, both for internal and external, customer facing, interactions;
  • wants to make a strong contribution to the business, financially but also in terms of team culture and values. You enjoy making an impact and shaping how businesses operates; and
  • is consistently curious, is interested in learning new skills and is open to new ideas and ways of working.

Desirable skills and experience

We think that the following skills would definitely be valuable in this role:

  • knowledge of, or exposure to, space systems in either a commercial or academic context;
  • experience in planning and executing all stages of software engineering, from design to documentation according to a specified development process;
  • experience with Google Flutter and/or the Dart programming language; and
  • use of version control systems such as Mercurial and git.