JOBS
About the Role
Our software suite, Quantillion, presently exists in the form of a standalone application deployable through an executable file. To reduce barriers to adoption, the next step is to make it available as a web application. For this purpose, we are looking for an enthusiastic and capable software engineer to implement secure online access and cloud hosting for Quantillion. A background in Computer Science/Engineering, Electrical Engineering or Physics is a must; curiosity about quantum physics is a bonus. Quantopticon is currently incubated at the Quantum Business Incubation Centre in Harwell, UK: a thriving research environment where you will meet and work alongside other cutting-edge quantum, space and energy start-ups.
Responsibilities
- Collaborate closely with physicists and research teams to translate simulation requirements into full-stack solutions;
- Develop and maintain an integrated full-stack platform encompassing both the front-end UI and the back-end simulation services;
- Implement responsive, intuitive web interfaces using React or Angular;
- Utilise WebAssembly to enable near-native computation speeds in-browser for select simulation tasks and enhance real-time responsiveness;
- Develop robust APIs (REST/GraphQL) using Python frameworks (FastAPI, Flask, Django);
- Design secure and scalable back-end architectures that efficiently handle job submission, queueing and asynchronous result delivery;
- Write maintainable code in Python for orchestration logic and integrate with C++/Rust libraries for high-performance simulation kernels;
- Leverage GPU-accelerated back-ends (CUDA/OpenCL) on cloud-based instances to execute large-scale FDTD and adaptive-step simulations;
- Deploy containerised applications (Docker) and manage infrastructure with Kubernetes for scalable, automated deployments;
- Implement comprehensive logging, monitoring, and observability to diagnose issues and improve system reliability at all layers of the stack;
- Maintain robust authentication, authorisation, and secure communication protocols to protect sensitive research data;
- Evaluate trade-offs between fully web-based solutions and hybrid models (e.g., desktop clients) to ensure maximum usability and performance;
- Continuously research and adopt emerging web technologies, GPU programming paradigms, and HPC frameworks to enhance the application’s capabilities.
Required Skills
- Programming Languages: Proficiency in Python for back-end development and scientific computing, and C++ or Rust for high-performance computational kernels;
- Front-end Development: Expertise in React or Angular for building responsive, interactive user interfaces;
- Back-end Frameworks: Experience with FastAPI, Flask, or Django for developing robust APIs and scalable back-end services;
- GPU Programming: Knowledge of CUDA or OpenCL for GPU-accelerated simulations and familiarity with WebGPU (a nice-to-have);
- Containerisation and Orchestration: Proficiency in Docker for containerisation and Kubernetes for managing scalable deployments;
- Cloud Infrastructure: Experience deploying applications on AWS, GCP, or Azure with GPU-enabled instances;
- Numerical Methods: Strong knowledge of FDTD, adaptive-step algorithms and libraries like NumPy, SciPy or JAX;
- Visualisation Tools: Experience with D3.js, Plotly.js or Three.js for interactive data visualisations;
- Version Control: Proficiency with Git for version control.
Job Particulars
Employment period: 6 months
Working hours: Full time
Salary: Competitive; dependent on experience
Anticipated start date: 31 January 2025
Location: Hybrid or remote according to preference; the company has offices in the Harwell Advanced Research Cluster, R27 Atlas Building, Rutherford Appleton Laboratory, Harwell Campus, Didcot OX11 0QX.
Are You Interested?
To apply for the role, please provide a CV and cover letter addressed to Dr Mirella Koleva. We encourage interested candidates to apply even if they do not meet all of the criteria.