Compiler, Language and Runtime Teams
A listing of compiler, language and runtime teams for people looking for jobs in this area. My motivation for curating this is in this blog post.
Scope
-
Teams that work on language implementations, compilers for languages, language runtimes, static analysis, etc. This includes things like:
- Database query compilers
- HDL & Synthesis Compilers
I want to err on the side of openness! The field is broad, and I don't want to be too close-minded here.
- I generally want evidence that a company has hired at some point in the past or will in the future (which excludes some boutique firms & early stage startups).
Contributing
Please contribute: Pass on projects, teams, companies I've missed.
Feel free to spruce up the description of the work for teams you know about! Many of these are simply stubs
I generally link to a company's Careers/Job's page rather than linking to specific jobs -- these links have a longer lifespan than just the straight up link to a job.
Annotations:
-
π€: Remote Work Supported
At the time the icon was added, the company offered remote work.
-
π§βπ: Internships offered
These companies are known to have offered internships or co-ops in compiler, languages and runtimes.
-
πΊ : Location
Derived from job postings or other knowledge, this is where the team works. Definitely not comprehensive! Please, help me update this too!
Companies ()
- LLVM Toolchain Development
AdaCore π€ π§βπ
πΊ New York (US), Paris & Grenoble & Toulouse & Vannes (France), Bristol (UK), Tallinn (Estonia)
πΊ Karlsruhe, Germany
πΊ Santa Clara, CA
- Computer vision AI hardware compiler
AMD π€ (some teams)
- AOCC
- ROCm
- LLVM upstream work on the AMDGPU backend
- Pyston: General-purpose Python JIT originally developed at Dropbox
πΊ Toronto / Markham, Canada
- Quantum Compiler Development
- MLIR/LLVM
Apple π§βπ
πΊ Cupertino, CA, London, UK, Israel
- Clang and LLVM
- Swift
- GPU Compiler
- JSC (JavaScript interpreter created as part of WebKit)
- Static Analysis tooling
- GCC
- LLVM work to support Arm32 (embedded), and to support Scalable Vector Extension (SVE)
- LLVM-based downstream GPU compiler for Mali GPUs
- ML compiler
πΊ Campbell, CA, Stavanger and Oslo, Norway
- LLVM and Hardware codesign.
- Ruff, a linter and autoformatter for Python code written in Rust.
πΊ Quebec, Ontario
- Java Virtual Machine
- Falcon JIT compiler (LLVM)
πΊ Pittsburgh, PA
πΊ Cambridge, MA
- Building the Hail project for genomics, including a custom language and compiler.
πΊ Upton, New York
Work on the Programming Models and Compilers (PMC) group of the Computational Science Initiative.
πΊ Mountain View, California
- Performance analysis and optimization
- Building and improving Rust Compiler & toolchain for Ubuntu
πΊ Los Altos, CA, San Diego, CA or Toronto, Canada
πΊ Belgrade, Sebria
- Work on CISCO Silicon Oneβ’ compiler
- Cloudflare Workers: V8 (WebAssembly, Javascript, deployed at the edge)
Codasip π§βππ€ (Europe/US)
πΊ Brno/Prague, Czech Republic, Munich, Germany, and Bristol, UK
- CHERI extension for LLVM (RISC-V)
- LLVM engineers, to support the RISC-V vector processing unit
- Clojure and ClojureScript
πΊ Austin, TX
- Building an LLVM based C compiler for Coherent Logix's multicore chip.
πΊ New York City
- Building languages for probabilistic programming and causal reasoning.
- Static/Dynamic analyses and code transformation.
- Julia oriented.
- Custom LLVM-based compiler toolchains for clients
πΊ US, Canada
- The Sensor and Language Tooling (SaLT) team works on a DSL to script Falcon's threat detection sensor
Cruise π€ (US only)
πΊ Multiple locations, US
- ML compiler based on MLIR
πΊ Santa Clara, California
- Deep Neural Network hardware, with associated compiler (LLVM+MLIR)
- JavaScript runtime and tools written in Rust
πΊ Kingston, ON (Canada)
- Distributed Computing on Web Stack - scheduling, WASM toolchains, etc.
- PythonMonkey, deep embedding of SpiderMonkey (JS engine) into Python VM
πΊ San Fransisco CA, Palo Alto CA, Zurich Switzerland
- Motoko programming language and system for blockchain smartcontracts.
- C/C++ compilers
- D compiler
πΊ Tokyo, Japan
- Machine learning hardware compilers
πΊ Southampton, UK, NΓΌrnberg, Germany
- Open Source toolchain development, with a primary focus on GCC, LLVM and Verilator.
πΊ Karlsruhe, Germany
- Source-to-source compilers
- Static analysis (LLVM)
- Parallelizing transformations
- Compiler for visual programming language, JIT based on Graal/Truffle.
- DSL compiler and toolchain for game development
πΊ Mountain View, California, Austin, Texas Portland, Oregon, Barcelona, Spain
- LLVM and GLOW compiler teams for RISC-V AI acceleration.
πΊ Brno, Czechia
- GNU GCC, GDB, Binutils development for Xtensa and other architectures.
πΊ San Jose, Seattle
- Compilers for Security work
- LLVM-based compiler for custom cryptographic hardware
πΊ Boulder, CO
πΊ Oulu, Finland
- Aquamarine, a distributed choreography language & platform
- Building Sway, a smart-contract programming language
πΊ Seoul, South Korea
πΊ Arlington, VA
- Programming language design and implementation for building trustworthy computing.
- CodeQL, a query language for writing custom static analysis rules
πΊ Mountain View, CA, Seattle, WA, and London, UK
Innumerable projects, but off the top of my head:
πΊ Ithaca, NY
πΊ Bristol, Cambridge, UK
- Machine learning hardware compiler (LLVM)
- Certified C/C++ for Embedded
πΊ Portland, Mountain View, Toronto
- Machine Learning Hardware compilers
πΊ Leuven, Belgium / Munich, Germany
- ProGuard
- LLVM-based software protection and hardening
- Android application protection and hardening
- Mobile application security testing
πΊ Singapore
- Quantum computing compiler
HPE π€π§βπ
- Chapel
- Cray Programming Environment, a suite of Fortran, C and C++ compilers
- LLVM contributions
- Research and Development work in compilers and runtime systems.
- LLVM
- Rust
IBM π§βπ
πΊ Markham, Ontario, Canada
As well as some other IBM internal compilers, and LLVM projects.
πΊ Multiple locations, UK
πΊ Multiple locations, France
Intel π€ (few teams at Intel Labs)
Igalia π€π§βπ
πΊ A CoruΓ±a, Galicia, Spain / Worldwide
- Consultancy which is heavily involved in free and open source software, and the web platform. Known in compilers circles for work on scripting engines (SpiderMonkey, V8, JSC), as well as LLVM and Guile.
πΊ New York, London
πΊ Munich & Berlin Germany, Prague Czech Republic, Amsterdam Netherlands, Cyprus, Serbia, Armenia (other locations for non-compiler jobs)
πΊ SF Bay Area, CA
- DSL to generate circuit board designs
πΊ Boston, MA
- Machine learning hardware compilers
- LLVM work supporting the Arm architecture
πΊ Paris, France
πΊ Cambridge, UK
- Non-profit with LLVM RISC-V work
- Compiler for a visual programming language.
πΊ Natick, MA, USA
- LLVM-based compiler for executing Ethereum smart contracts
A variety of projects, a limited subset of which I know about below.
πΊ Moscow, Russia
- LCC optimizing compiler for MCST's chips
- Binary translator from x86 to own Elbrus ISA
πΊ Woburn, MA, USA
- Compiler development for MediaTek chips
- Compiler development for Microchip's chips.
πΊ Berlin, Munich, Stuttgart, Germany
We develop custom GraalVM and Java runtime environments and virtual machines for use in embedded systems:
- GraalVM Enterprise and Community runtime environments.
- Java SE, OpenJDK and J9 runtime environments.
- Target operating systems include QNX, Linux, Android, Windows CE, OSE.
- Target processor architectures include ARM 64-bits and 32-bits, Intel x86 32-bits, AMD x86_64, MIPS, PowerPC.
- Implementing custom features inside the JVM or standard library.
- Koka, Lean, F* (F-star)
- probably other things too.
Mozilla π€ π§βπ
- Building Glow, a language for DApps
πΊ SF Bay Area, CA
- Machine learning hardware compilers
- Get to contribute to a compiler for a target language with a novel memory model
- Opportunity to work on tooling support
πΊ Israel, Zurich
- MLIR work for specialised HPC hardware
πΊ Redmond, WA
- Compiler Engineering (Rust) - Slang
- Ethereum Development Runtime (Rust) - EDR
- Toolchain development (LLVM, GCC)
NVIDIA π€ (some teams)
- LLVM middle-end/back-end contributions
- Front-end work on nvcc to support CUDA
- Flang
- ML Compiler
πΊ Paris, France
πΊ Montreal, QC, Canada
- Compilers for Octasicβs multi-core digital signal processors (LLVM)
πΊ San Fransisco
- Triton, a language and compiler for writing highly efficient custom Deep-Learning primitives
πΊ Richmond Hill, ON, CA Waterloo, ON, CA Ottawa, ON, CA Mississauga, ON, CA
- Application Security static analysis (OpenText Fortify)
- OpenJDK, including the hotspot compiler
πΊ Zurich, Linz, California, Prague, Brno, Lviv, Casablanca, Belgrade, Remote (π€)
πΊ New York, US / Remote (US/Europe)
- Polar: a logic programming language for
expressing authorization logic and policies.
πΊ San Francisco, π€ Remote
- Bun: a JavaScript runtime with a native bundler, transpiler, task runner, and npm client built-in.
πΊ Aarhus, Denmark
- Creating a language for multi-party computation.
πΊ Milpitas, CA
- P4 compiler targetting the Capri processor (LLVM)
πΊ Portland
- PGI's compilers
- Flang, a Fortran frontend for LLVM
πΊ US
πΊ San Fransisco
- Scala + Spark engineering (Query optimizer)
πΊ Burlingame, CA
- LLVM development for Quadric platform
Qualcomm π€ (some teams)
- LLVM (Hexagon backend, Polly)
- GPU Compiler
- ML Compiler
πΊ Multiple locations, UK/US/Japan
πΊ Paris, France (remote available within France)
- A security product built on LLVM
πΊ San Fransisco, CA
- DSL for optimising biotech procedures and executing them in a physical biology lab
- A variety of compiler/language engineering projects, providing modernization and cost reduction.
- Quantum Computing Compiler (LLVM + Rust)
πΊ Mountain View CA, Austin TX, Portland OR, Fort Collins CO, and Cambridge, UK
- LLVM contribution for RISC-V
πΊ San Mateo, CA
- Embedded scripting languages for the Roblox game engine, for example Luau
- Deep Learning Compiler (MLIR)
- Place & Route (PNR)
πΊ San Jose
- JIT Compiler for Samsung GPU (OpenGL-ES, OpenCL)
- Non-profit with Scala compiler work (JVM, Scala.js, Scala native), editor integration and tooling
πΊ Austin, TX
- DMS, a suite of program transformation tools for large scale software systems
- PARLANSE, a parallel programming language
- Compiler technology used for application security.
- Ruby
- Static analysis and typing
- Interpreters, garbage collectors
- JVM, Truffle, Graal
πΊ A number of locations
A number of Compiler/PL projects:
- HDL Compilers
- DSL Compilers
- Industrial Automation Compilation
πΊ San Mateo, California, Hsinchu Taiwan
πΊ Cologne
- Heterogenous architecture development
πΊ San Jose, CA
- Machine Learning accelerator compiler
- Hardware software co-design
πΊ Multiple locations, Europe
πΊ Bellevue, WA, & San Mateo, CA
πΊ Bucharest, Romania
- Snyk Code, a static analysis tool that exists as part of the Snyk platform
- Solang, a compiler for Solidity that targets WebAssembly and BPF
πΊ US, Canada, Colombia
πΊ Bangalore, India
- LLVM Compiler Development
πΊ Grenoble, France
- Support for STMicroelectronic products
- Clang, LLVM
πΊ US, Canada, Europe
- Makers of Open Policy Agent
and the datalog-derived logic programming language Rego.
- Interpreters, compiler (e.g. compiling Rego to Wasm), and applications of static analysis.
- Makers of Coverity
- LLVM work on the ARC backend
- LLDB
- Neural Network Compiler
- Working on Program Synthesis
- Compiler toolchain development for a new architecture that supports binary translation.
πΊ Paris, France, Cambridge, UK, Chennai, India
πΊ Toronto, ON
- Machine learning hardware compilers
πΊ Wuhan, China
- AI compiler development based on LLVM/MLIR
- Mojo language development
- RISC-V compiler toolchain development
- CIRCT compiler development
- ClangIR development
πΊ SF Bay Area
- Machine learning hardware compilers, LLVM
πΊ New York, US
πΊ Vienna
- Compiler support for ARM SoC
- LLVM
- TI specific compiler toolchains
πΊ Mountain View, CA
- Compilers for mobile platforms
Security firm that does compiler engineering and research
πΊ San Francisco, Paris
- .NET
- Mono
- IL2CPP, a compiler to convert .NET IL to C++
πΊ Toronto, Canada
Building machine learning hardware
πΊ Grenoble, France
Building a processing-in-memory product.
- Static analysis and abstract program interpretation for software hardening
- RISC-V Architecture
- GCC
- LLVM
- Performance Analysis
πΊ United States
Static analysis framework for JavaScript applications
Automated analysis of blockchain programs, built atop LLVM
πΊ Bristol / Cambridge
Toolchain development for RISC-V core with novel hardware memory allocation management technology.
- WebAssembly runtime (LLVM)
πΊ Mountain View, CA
- Machine learning hardware compiler
- Glasgow Haskell Compiler (GHC)
πΊ Wellington, NZ
- Shader Language development
- LLVM
πΊ Karlsruhe, Germany
- compiler development and security research with LLVM, .NET CIL, Python and more
πΊ LinkΓΆping, Sweden
- Wolfram language, WolframAlpha, Mathematica
- Modelica
πΊ Pleasanton, CA
- Compiler, runtime and IDE for Workday's proprietary programming languages, XpressO and YP
πΊ Tokyo, Japan
- Static analysis and developer tools for vehicle software.
πΊ Cologne, Germany
- Compiler for FPGA Systems
πΊ Toronto, Canada
- Compilation stack for quantum computing and hybrid computation
- LLVM, MLIR, QIR
πΊ Dundee, Scotland
- LLVM
- GML (GameMaker Language) compiler
- JavaScript compiler
- Integrated Development Environment targeting desktop, web, mobile and games console environments
πΊ Foster City, CA
- Program analysis tools for verifying firmware