Software Engineer, Research Platform
DeepMind's mission is to "Solve intelligence. Use it to make the world a better place." The Research Platform team's objective is "Effortless artificial general intelligence Research". We are a core group of 45 SWEs within DeepMind Research who work to provide a best-in-class research workflow. We build tools, infrastructure, libraries, frameworks, services, and products to enable and accelerate the next generation of research ideas.
Research Platform plays a critical role in the mission of DeepMind in multiple ways. In the simplest form, improving the workflow has a super-linear impact on research productivity, as not only does it free up more time - but the extra cognitive space can allow new research ideas to flourish that would otherwise never happen.
We’re looking for someone who is passionate about building infrastructure and products to help enable research at scale. No machine learning experience is required for this role.
Non-exhaustive examples of the types of work in the Research Platform team:
- Platform for testing and evaluating ML algorithms in various simulated environments
- Systems for easily logging, storing, searching, and analyzing large quantities of experiment data
- Bespoke internal project management systems for organizing research at scale
- DevOps for DeepMind’s massive computational resource pool (consisting of TPUs, GPUs, and CPUs)
- Customizing TensorFlow at the language & compiler level for DeepMind’s use cases
- Massively parallel distributed scheduling system for machine learning experiments
We're looking for talented software engineers with experience in Java or C++ who are interested in creating and enhancing platforms to help research flourish! You’ll join an inspiring and collaborative environment, working on ground-breaking technology with potentially extraordinary impact.
As a member of the research engineering team, you’ll focus on creating a platform to foster the ideal environment for conducting world-class research. This platform will be used to manage research projects and associated deliverables (papers, code, experiments) in a way that supports the researchers and engineers (discoverability, history, recommendations, alerting) and the program management team (approval process, planning, reporting). No machine learning experience required.
- Design, develop, test, deploy, maintain, and enhance platform for supporting the research programme
- Create interactive user interfaces to help researchers visualise and understand AI
- Gather requirements from all stakeholders: researchers, managers, program manager
- A degree in computer science, software engineering, mathematics, physics or equivalent experience.
- Good communication and interpersonal skills.
- Experience with C++ and/or Python.
- Strong knowledge of algorithm design.
- An clear interest in DeepMind's mission
- Experience with implementing multi-threaded/concurrent/distributed software systems.
- Experience with database systems and other data storage systems
- Familiarity with large system software design and development.
- Familiarity with systems that manage compute clusters
DeepMind welcomes applications from all sections of society. We are committed to equal employment opportunity regardless of race, religion or belief, ethnic or national origin, disability, age, citizenship, marital, domestic or civil partnership status, sexual orientation, gender identity or any other basis as protected by applicable law. If you have a disability or additional need that requires accommodation, please do not hesitate to let us know.