The job entails developing software for our existing and upcoming/future quantum control hardware.
Collaborative work mindset is expected as the job requires constant collaboration with other team members of different disciplines.
There will be a lot of reading of technical specifications and component datasheets during the development hence being comfortable with such documents is important during the course of development.
Maintenance of existing firmware/software stacks and design documentation.
Occasionally, development and debugging of code written in Python may be required.
Optimize or refactor existing designs as part of continuous improvement (Kaizen).
Job Requirements
Experience in C and C++ programming language (Good grasp of language from coursework is OK)
Basic understanding of software configuration management processes
Basic understanding and usage of version control tools (e.g. GIT, Subversion etc)
Basic understanding of in developing firmware in Linux and/or RTOS.
Basic understanding and use of test equipment such as oscilloscopes and multi-meters.
Familiar with usages of code documentation tool such as Doxygen or equivalent.
Basic grasp of data structures and design patterns.
Basic understanding of quantum computing and trends in software design & practices will be advantageous but not mandatory.
Skills you'll gain from the position
Embedded software development and testing.
Development experience with other programming or scripting languages (e.g. Python)
Reading, interpreting technical documents, datasheet and translating them into software designs and implementation.
Good understanding of SDLC.
Good understanding of our products and quantum computing basics.