George Necula is a Principal Software Engineer based in Switzerland with a rare blend of academic depth and production-grade systems engineering, drawing on a PhD from Carnegie Mellon and two decades of research and teaching in programming languages, verification, and security. Now at Google DeepMind and Google Research (with past engineering roles at YouTube and Conviva), he focuses on making high-assurance, high-performance systems by applying domain-specific languages, automated testing, and tooling to real-world ML infrastructure. He is an active open-source contributor to major ML projects—most notably enhancements to TensorFlow's XLA compiler and JAX tooling—bringing shape-polymorphism, StableHLO migration, and better cross-platform module support to widely used runtimes. Colleagues benefit from his rare combination of compiler-level expertise and pragmatic engineering sense, which helps bridge cutting-edge research and scalable deployment. Not obvious from titles alone: he pairs deep formal methods knowledge with hands-on fixes that improve developer productivity and error diagnostics across large codebases.
11 years of coding experience
19 years of employment as a software developer
POLITEHNICA București National University for Science and Technology
Doctor of Philosophy (Ph.D.) Computer Science, Doctor of Philosophy (Ph.D.) Computer Science at Carnegie Mellon University
Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more
Role in this project:
Back-end Developer
Contributions:3 releases, 811 reviews, 365 commits in 2 years 4 months
Contributions summary:George's commits primarily involve refactoring and modifying the gradient machinery for native serialization within the JAX-ML library, specifically focusing on the jax2tf module. Their work includes moving JAX-specific components of gradient handling into the `jax_export.py` file, which facilitates the export process and separates JAX and TensorFlow components for native serialization purposes. The user also addresses backwards compatibility and error handling issues within the codebase. Their changes extend to shape polymorphism support and encompass functionalities like `jnp.pad` and `lax.approx_top_k`.
Probabilistic reasoning and statistical analysis in TensorFlow
Role in this project:
Data Scientist
Contributions:313 commits in 2 years
Contributions summary:George primarily contributed to the TensorFlow Probability repository by addressing type errors in a notebook, updating documentation for the `jax.vmap` function, and developing a Colab notebook demonstrating how JAX primitives work. Their work involved using NumPy datatypes and the `xla_client`, which is the XLA Python client for JAX, and included examples and explanations of JAX primitives. The user's efforts improved the documentation.
Find and Hire Top DevelopersWe’ve analyzed the programming source code of over 60 million software developers on GitHub and scored them by 50,000 skills. Sign-up on Prog,AI to search for software developers.
Request Free Trial
George Necula - Principal Software Engineer at Google DeepMind