Minimum qualifications:
- PhD degree in Computer Science, a related field, or equivalent practical experience.
- One of more scientific publication submissions for conferences or journals.
- Experience in coding with Python, JavaScript, R, Java, or C++.
Preferred qualifications:
- Experience in post-doctoral research.
- Experience in machine learning.
- Experience in programming languages.
- Experience in automated code discovery (LLM-based, AutoML, evolutionary).
- Authored publications in the fields of machine learning (e.g., ICLR, ICML, NeurIPS) or programming languages theory (e.g., PLDI, ICFP).
- Excellent computer programming skills.
About the job
As an organization, Google maintains a portfolio of research projects driven by fundamental research, new product innovation, product contribution and infrastructure goals, while providing individuals and teams the freedom to emphasize specific types of work. As a Research Scientist, you'll setup large-scale tests and deploy promising ideas quickly and broadly, managing deadlines and deliverables while applying the latest theories to develop new and improved products, processes, or technologies. From creating experiments and prototyping implementations to designing new architectures, our research scientists work on real-world problems that span the breadth of computer science, such as machine (and deep) learning, data mining, natural language processing, hardware and software performance analysis, improving compilers for mobile platforms, as well as core search and much more.
As a Research Scientist, you'll also actively contribute to the wider research community by sharing and publishing your findings, with ideas inspired by internal projects as well as from collaborations with research programs at partner universities and technical institutes all over the world.
The team you will be joining conducts basic research into alternative computational AI paradigms beyond those currently trending. We aim to understand how complexity emerges in differentiable/non-differentiable automated algorithm discovery methods. These methods automatically produce computer code that solves a given task, which is often represented as a collection of data examples. We are particularly interested in finding solutions that exhibit compositionality, hierarchical structures, and component reuse. In this role, you will research, develop, and publish findings on novel code representations for discovering such algorithms.
Responsibilities
- Carry out sustained exploratory research.
- Review literature, identify key questions, design experiments, and interpret results.
- Collaborate in person and remotely maintain a respectful work environment.
- Share ideas verbally and in writing publish and present work at journals or scientific conferences.