← All speakers

Bio, Work & Ideas

Alex Polozov

On this page

Alex Polozov is a Member of Technical Staff at Reflection AI, where he builds agents and models to help developers write and analyze software. He helped create Microsoft’s PROSE program-synthesis framework and later co-led research on software-engineering agents, post-training, and evaluations for the first release of Google Jules. His work spans systems that infer programs from examples, language models that generate code, and agents that carry out tasks across software repositories.

Turning examples into programs

Originally from Ukraine, Alex completed his Ph.D. at the University of Washington, advised by Sumit Gulwani and Zoran Popović. At Microsoft Research, he helped create PROSE and shipped more than ten tools and features powered by program synthesis.

PROSE lets developers define a domain-specific programming language and synthesize programs that satisfy input-output examples. A person can demonstrate the transformation they want, while the synthesis system searches for a program that explains those examples. The framework makes this approach reusable across applications rather than requiring each tool builder to develop a synthesis engine from scratch.

Repetitive source-code editing made the interaction concrete. In 2019, Alex and Gustavo Soares demonstrated a PROSE-powered tool for automating repeated edits as a developer worked. Microsoft’s repeated-edit preview illustrated the use case: after a developer makes a few similar changes, the tool recognizes the pattern and suggests other places to apply it. Examples supplied during an ordinary editing session can take the place of a custom script or regular expression.

Guiding generation with program structure

Alex’s collaborative research explores several ways to combine learned predictions with information about what a program can validly do:

  • Neural-Guided Deductive Search: In this 2018 work, Alex and his coauthors combined symbolic synthesis with learned search guidance. Deductive reasoning constrains the search to programs consistent with the examples; a neural component helps choose promising directions within that search. The team reported speedups of up to twelvefold over the comparison systems on the evaluated real-world customer scenarios.
  • Database structure and conversational context: Alex contributed to RAT-SQL and SCoRe, which address how language maps onto database queries. RAT-SQL incorporates relationships such as foreign keys into its representation of a question and database schema. Asking for book names may require selecting a title column rather than an author-name field with superficially similar wording. SCoRe addresses context across conversation turns, where a follow-up question depends on an earlier query.
  • Retrieval and constrained decoding: In Synchromesh, Alex and his coauthors paired retrieval of useful examples with constraints applied during language-model generation. Retrieval selects examples whose programs are relevant despite differences in how requests are worded. Constrained Semantic Decoding restricts partial outputs using syntax, scope, types, and other contextual requirements. Tests with GPT-3 and Codex on SQL, Vega-Lite, and SMCalFlow improved accuracy and reduced runtime errors without retraining the underlying language model. These checks constrain particular kinds of validity; a valid program can still misunderstand the user’s request.

These projects use structure at different points: to guide a search, connect language to a database, or reject invalid continuations during generation. Each gives a learned system information that a plausible sequence of words alone may miss.

From code models to repository tasks

Alex joined Alphabet’s X in October 2021. His team later moved into Google, and by December 2024 he was working at Google DeepMind on Gemini coding capabilities and software-engineering agents. His work included code-data quality for PaLM and Gemini pretraining, evaluations for coding agents, and helping deploy PaLM-based completion and chat in Colab, Android Studio, GCP Code Assist, and other developer products.

The team’s work on PaLM included PaLM-Coder, an adaptation fine-tuned on code and evaluated on software-engineering tasks. This extended Alex’s work from synthesizing programs in constrained domains to language models that could write, translate, and repair code.

With Google Jules, the task expanded from generating a completion or answer to working in a repository. The May 2025 public beta let developers delegate tasks to an asynchronous agent running in a cloud virtual machine. Jules could edit code, write tests, and return proposed changes for review while the developer worked on other tasks. Alex co-led the research on software-engineering agents, post-training, and evaluations behind its first release.

Letting builders shape the model

Alex joined Reflection in November 2025. His essay explaining the move argues for open models as a platform that developers can inspect, adapt, and own.

His case for open-weight models concerns how much of a system builders can change. With a hosted model, developers can adjust prompts, context, and tools while having limited influence over the model itself. Alex argues that consequential applications will increasingly need specialized models, training environments, and evaluations. Coding products that train models for agent work—and for components such as code retrieval—provide concrete examples of that direction.

He also emphasizes experimental velocity: having enough compute to compare alternatives and investigate failures, beyond the capacity needed to finish a large training run. His Reflection agenda extends his developer-tool work into model development, giving builders access to more of the machinery that determines their software’s behavior.