Description:
We’re looking for a pioneering engineer to help bring a new programming language to life! You’ll be at the forefront of building a VM with a bytecode interpreter and garbage collector, crafting a compiler from scratch, and creating a VS Code-integrated debugger. Join us and choose an existing grammar to create a powerful, flexible language ready for real-world applications!
What You'll Do
- Collaborate closely with the VP of Engineering, Product, and CEO to shape the architecture and functionality of our new programming language
- Build the language infrastructure from the ground up, using an existing language (C, C++, Java, Typescript, etc.) as a model for grammar and syntax
- Define and implement the bytecode instruction set architecture, creating a VM with a basic garbage collector to execute it
- Develop a compiler to translate code into bytecode and build a VS Code-integrated debugger
- Continuously optimize performance and add language features and standard libraries to enhance functionality
- Own all aspects of the language lifecycle, including design, development, profiling, testing, and ensuring top-quality code
Requirements
- You’ve either built or significantly contributed to a language runtime in a production environment. (Significant experience as a graduate student will be considered)
- Strong in C, C++, or Rust. You know your way around systems programming and have solid instincts for memory management
- You’re articulate and can explain technical concepts in a way that’s easy for others to follow—even if they’re not runtime experts
- You’re practical about language features, bringing in what’s valuable without being hung up on copying every feature from existing languages
- You make sound technical decisions and write clean, maintainable code
- You need to be in one of the North American time zones (Pacific, Mountain, Central, or Eastern) so we can sync up during core hours