The WebKit JavaScript Virtual Machine is responsible for executing JavaScript and WebAssembly code found in web pages. It uses type inference, dynamic compilation, and sophisticated compilation optimizations to turn JavaScript programs into efficient machine code on X86 and ARM. JavaScript Virtual Machine engineers work on all aspects of the compilation pipeline, including the parser and lexical analysis, the profile-guided type inference, and the optimizing compiler backend. They also own and maintain the language runtime, the garbage collector, and the JavaScriptCore API for native apps. As a JavaScript Virtual Machine Engineer you will work as a generalist in these areas, diagnosing and fixing performance, stability, standards compliance, and compatibility issues, implementing new language features, and supporting browser and non-browser JavaScript clients.