At a Glance
- Tasks: Develop cutting-edge compilers and simulation tools for quantum computers.
- Company: Join a pioneering tech firm at the forefront of quantum computing.
- Benefits: Competitive salary, flexible work options, and opportunities for professional growth.
- Why this job: Be part of a revolutionary field and collaborate with top scientists.
- Qualifications: Ph.D. in Computer Science or equivalent experience in quantum computation.
- Other info: Dynamic team environment with a focus on innovation and collaboration.
The predicted salary is between 36000 - 60000 Β£ per year.
A creative Scientific Software Engineer is sought to develop state-of-the-art compilers and simulation tools for quantum computers. You will collaborate with physicists on cutting-edge hardware and error correction, building compiler pipelines from low-level instructions to high-level languages using advanced toolchains.
Responsibilities
- Develop and maintain a Static Single Assignment (SSA) intermediate-representation-based compiler infrastructure and compiler components at various abstractions used by hardware engineers and scientists.
- Design novel domain-specific languages tailored to the hardware as well as the associated SDK together with the team.
- Integrate existing simulation tools with the compiler pipeline and cloud service.
- Communicate and collaborate with in-house scientists and external customers to meet their use case requirements.
Qualifications
- Ph.D. in Computer Science with a focus on quantum computation, architecture, programming languages, or compilers, or equivalent professional experience.
- Enthusiasm for building software tools for scientists, especially physicists.
- Experience with Python semantics, Python type hints, and the CPython interpreter.
- Experience with at least one compiled language and its type system, e.g. C++, Julia, Rust, Haskell, OCaml, etc.
- Experience with Static Single Assignment intermediate-representation-based compiler development.
- Knowledge of the full lifecycle of software development, including version control, code review, testing, CI/CD, logging, profiling, debugging, and documentation.
- Knowledge of quantum computing basics, e.g. common quantum algorithms and quantum information theory fundamentals.
Preferred Qualifications
- Experience using LLVM or MLIR for compiler development, or experience with an existing compiler codebase.
- Background in programming language design, especially programming language theory.
- Knowledge of quantum error correction.
- Contributions to existing open-source libraries.
- Experience with existing circuit simulation tools, e.g. Cirq, Qiskit, CUDA Quantum, etc.
Software Engineer (Quantum Compilers) in Oxford employer: CT19
Contact Detail:
CT19 Recruiting Team
StudySmarter Expert Advice π€«
We think this is how you could land Software Engineer (Quantum Compilers) in Oxford
β¨Tip Number 1
Network like a pro! Reach out to folks in the quantum computing space on LinkedIn or at meetups. We all know that sometimes itβs not just what you know, but who you know that can land you that dream job.
β¨Tip Number 2
Show off your skills! Create a GitHub repo with projects that highlight your experience in compiler development and quantum computing. We love seeing practical examples of your work, so make sure to showcase your best stuff!
β¨Tip Number 3
Prepare for those interviews! Brush up on your knowledge of quantum algorithms and compiler design. We want to see your passion and expertise shine through, so practice explaining complex concepts in simple terms.
β¨Tip Number 4
Apply through our website! Itβs the best way to ensure your application gets seen by the right people. Plus, weβre always on the lookout for talented individuals who are excited about building software tools for scientists.
We think you need these skills to ace Software Engineer (Quantum Compilers) in Oxford
Some tips for your application π«‘
Show Your Passion for Quantum Computing: When you're writing your application, let your enthusiasm for quantum computing shine through! We want to see how excited you are about building software tools for scientists, especially physicists. Share any relevant projects or experiences that highlight your passion.
Tailor Your CV and Cover Letter: Make sure to customise your CV and cover letter for the Software Engineer role. Highlight your experience with compiler development, Python, and any other relevant skills. We love seeing how your background aligns with our needs, so donβt hold back!
Be Clear and Concise: Keep your application clear and to the point. We appreciate well-structured documents that make it easy for us to see your qualifications. Use bullet points where necessary and avoid jargon unless it's relevant to the role.
Apply Through Our Website: Donβt forget to apply through our website! Itβs the best way for us to receive your application and ensures youβre considered for the role. Plus, it gives you a chance to explore more about what we do at StudySmarter.
How to prepare for a job interview at CT19
β¨Know Your Quantum Basics
Before the interview, brush up on your knowledge of quantum computing fundamentals. Be prepared to discuss common quantum algorithms and error correction techniques, as this will show your enthusiasm for the field and your ability to communicate effectively with physicists.
β¨Showcase Your Compiler Skills
Make sure to highlight your experience with Static Single Assignment (SSA) intermediate representations and any relevant compiler development work. Bring examples of projects where you've designed or maintained compiler components, and be ready to explain your thought process and the challenges you faced.
β¨Familiarise Yourself with Tools
Get comfortable with the tools mentioned in the job description, like LLVM or MLIR. If you've worked with simulation tools like Cirq or Qiskit, be ready to discuss how you integrated them into your projects. This will demonstrate your hands-on experience and technical prowess.
β¨Collaborative Mindset
Since the role involves working closely with scientists and external customers, prepare to discuss your collaborative experiences. Share examples of how you've communicated complex technical concepts to non-technical stakeholders, and how youβve adapted your approach based on their feedback.