Instrumentation Software Engineer (Embedded, Python)
HardwareFull TimeToronto, ON
At Xanadu, we are learners, innovators, researchers, collaborators and problem solvers. We are creating something that has never been built before. Few people in their life will be able to be a part of something like this, where if we are successful, the technologies we develop will solve some of the world’s most challenging problems, and literally change the world. And that is something to be excited about!
Your role and responsibilities:
As Instrumentation Software Engineer at Xanadu, you will join our software-for-hardware team and work on all aspects of the control software operating our quantum devices. Your main role will include working with hardware engineers to implement software interfaces to in-house and commercial control and data acquisition instruments - the basic building blocks of our quantum computing hardware. Your knowledge of the low-level software layers will naturally enable you to also develop and optimize higher-level algorithms for calibrating and operating our quantum photonic circuits in development and production systems, and to collaborate with cloud software engineers to interface our hardware to the cloud and improve our data strategy and deployment workflows. Being enthusiastic about best software development practices and clean code, you will join the software-for-hardware team’s efforts to spread these skills throughout the company and support our scientists and hardware engineers in writing better code and efficiently using the software you and everyone else at Xanadu develops.
Required qualifications and experience:
- B.S, M.S. or PhD in computer science, physics, or related field.
- 4+ years of experience working with Python.
- 2+ experience in writing instrumentation drivers and similar software.
- Understanding of the full life cycle of software development, including version control, code review, testing, continuous integration, logging, documentation, maintenance, and support.
- Ability to troubleshoot and fix issues anywhere in the hardware-software stack.
- Familiarity with open source software, especially the Python ecosystem.
- Proficiency with Linux, Docker, and networking.
- Curiosity about new and unfamiliar technologies.
- Excellent communication skills.
- Desire to work and ability to thrive in a fast-paced research environment.
- Attention to detail, commitment to excellence.
Preferred qualifications and experience:
- Hands-on experience building large, fault-tolerant, distributed systems at scale.
- Experience with lab instrumentation frameworks (e.g. QCoDeS, yaq, labscript, ARTIQ)
- Good understanding of analog and/or digital electronics.
- Experience with ROS, SCADA (e.g. EPICS, TANGO), or RPC frameworks (e.g. gRPC)
- Experience in fitting experimental data and basic machine learning skills.
- Working knowledge of lower-level programming languages such as C, C++, and/or hardware description languages such as Verilog.
- Experience with embedded software development, testing, and debugging.
- Activity in open source software projects.
- Basic familiarity with photonics and optical physics.
- Familiarity with quantum mechanics or quantum computation is an advantage but not required.
To build quantum computers that are useful and available to people everywhere.
Our values are important. They are fundamental and lay the foundation for culture at Xanadu. Learn more about our values here.
At Xanadu, we are committed to building an inclusive, safe, and equitable culture and fostering an environment where our employees feel included, valued, and heard. We are committed to meeting the needs of all individuals and support a barrier-free workplace. Should you require accommodations at any point during the recruitment process please contact Human Resources at firstname.lastname@example.org.