We use cookies on our site to track usage and preferences. Learn more

Software Engineer (Python)

  • Closing date 5 Mar 2021
  • Type Full-time
  • Duration Permanent

We are looking for a Software Engineer to join the engineering department at Nuclera. You will interface with experts in chemistry, biochemistry and engineering to develop the user interface and algorithms on our benchtop device to enable next-day gene and protein synthesis. This position involves all facets of design, development, and troubleshooting of complex electronic/fluidic breadboards and prototypes as well as controlling the associated components. This is a great opportunity to join a rapidly growing R&D team and to gain experience in biomedical instrumentation and its software.


  • Understand the user requirements and intended software features, deliver robust and well-designed software architecture, and roadmap the software development plan;
  • Integrate and upgrade current software based on new requirements and features;
  • Design and implement a rich set of APIs and instrument control software to communicate with UI and control in-house/third-party embedded systems, from prototype to production;
  • Design and implement the software tools to support both experimental and commercial activities;
  • Design and implement data and image analysis algorithms to interpret data from the instrument and the software;
  • Review and deliver high-quality software code for both experimental and production versions;
  • Develop automated test suites for component, integration and end to end testing;
  • Work with hardware and microfluidic engineers to develop Nuclera's gene and protein synthesis instrument.


To meet these challenges, the candidate must have:

  • Degree in Software Engineering, Computer Science, or a related subject;
  • More than 3 years of industrial experience;
  • Proficiency in Python with a clear understanding of software engineering principles, including, but not limited to, object-oriented programming, SOLID design principles as well as development methodology and workflows, such as Agile software development, Test-driven development;
  • Experience in developing medium to large scale modular Python software;
  • Familiarity with various other programming languages, such as C/C++, Java;
  • Advance user level knowledge of Linux operating system;
  • Active problem diagnosis and creative problem-solving skills;
  • Comfortable working in group environments on multidisciplinary, multi-module projects using Agile PM methodologies;
  • Communicating and presenting technical information to individuals of non-scientific backgrounds; ability to produce quality documentation to support planning, development, and end-user product;
  • Flexible, open-minded, and creative with innovative ideas, a can-do attitude, whilst being able to challenge and be challenged.


Experience/knowledge in the following areas would be advantageous:

  • Experience in life science or medical device or related work environments;
  • Familiarity with messaging queues, embedded systems, time-series data, and binary communication protocols;
  • Understanding the principle of CSS/HTML/Web development including security, session management, and best development practices;
  • Experience in RESTful Web Services; Tomcat / Apache; MongoDB or similar NoSQL database programs; SSL/TLS and JSON Web Tokens;
  • Experience with data analysis algorithms implementation (e.g., image processing algorithms based on OpenCV;
  • Experience with building and maintaining Gitlab CI/CD infrastructure (runners, pipelines).


In addition to competitive salaries, we offer a range of benefits for all of our colleagues, including:

  • EMI-approved Option Scheme
  • 25 days’ annual leave
  • NEST Pension Scheme
  • Investment in professional development and learning
  • Fresh fruit, tea, coffee and snacks in the office

Contact us

Thank you for your enquiry!
We'll be in touch soon.

We couldn't send your message.
Please review the fields then try again