Roles
Universal Quantum
Software Engineer/Architect
Explore roles
Universal Quantum
Software Engineer/Architect
Mill Green Business Estate, Haywards Heath RH16 1XQ
Hybrid
Description
Hybrid requirements: This role has flexible working patterns.
At Universal Quantum we aim to make the world a better place by developing a new computer technology. Together, we are creating truly impactful quantum computers. Our machines will be capable of solving problems until now considered impossible, with applications ranging across a broad range of industries including healthcare, materials and aerospace. We are looking for an experienced and hands-on Software Engineer/Architect to join us in creating, optimising and maintaining our quantum computing systems. Passionate about helping create technologies which can change the world? UQ may be the right place for you, so get in touch!
What you will accomplish:
Join our talented and enthusiastic team of scientists and engineers to design and develop modular, reliable, and scalable operating systems for quantum computers.
Spearhead the design and development of scalable and verifiable software that runs efficiently in parallel across multiple machines/architectures, while helping refine our software architecture to accommodate our future needs.
Collaborate with diverse subsystem teams to develop innovative solutions to complex challenges.
Support experimentation and continuously adapt to new discoveries from the Quantum team.
Participate in knowledge sharing and code reviews to improve product quality.
Requirements
The 3 Most Critical Attributes We’ll Use to Compare Candidates:
Proficiency in designing and developing complex software for heterogeneous resource-constrained systems
A solid understanding of design principles, data structures, reliable networking strategies, and systems modelling
Experience with requirements capture, collaborative development, revision control, verification/validation, and unit testing
Must-have Skills
7+ years of experience in design and development of commercial-quality software in a collaborative environment, using a mix of Python and C++ (or similar)
A demonstrable successful project independently architected by you, which showcases an optimal software/system design for the task and efficient use of bandwidth/compute power
A deep understanding of low-level software design concepts, such as real-time operating systems, interfacing with FPGA-based platforms, and IPC/RPC
Experience in programming for and deploying into a live distributed computing environment
Familiarity with common networking architectures and protocols
Familiarity with Git and experience with collaborative design and development, and code reviews
Excellent written and verbal communication skills and the ability to produce good documentation
Ability to rapidly grasp new concepts through research and reading
Effective presentation of concepts and ideas to engineers and scientists, and being able to identify compromises and trade-offs
Willingness to learn new tools and programming languages
Nice-to-have Skills
Experience in developing commercial products based on embedded systems and real-time hardware control
Experience with simulations, parallelisation and HPC optimisations
Experience with Rust
Experience of working alongside hardware and/or research teams
Previous experience in start-ups or similar dynamic work environments
Role tech stack
python
c++
rust
Universal Quantum
Software Engineer/Architect
Mill Green Business Estate, Haywards Heath RH16 1XQ
Share role