Minimum qualifications: PhD degree in Computer Science, a related field, or equivalent practical experience. One or more scientific publications in top-tier conferences or journals. Preferred qualifications: First-authored publications in the fields of machine learning (e.g. ICLR, ICML, NeurIPS) or programming languages theory (e.g. PLDI, ICFP). Experience in the field of machine learning. Experience in the field of programming languages (e.g. lambda calculus, type theory, combinatory logic). Experience in the field of automated code discovery (LLM-based, AutoML, evolutionary, or meta-learning-based). Post-doctoral research experience. 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'll be joining conducts basic research into alternative computational AI paradigms beyond those currently trending. We aim to deepen our understanding of how complexity emerges in differentiable/non-differentiable automated algorithm discovery methods. These methods automatically produce computer code that solves given tasks, which are often represented as a collection of data examples. We are particularly interested in finding solutions that exhibit compositionality, hierarchical structures, and component reuse. In your role, you’ll 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.