The role of Compiler Software Engineer is pivotal in shaping software design and implementation. This position involves developing various software tools, including operating systems, compilers, networks, utilities, databases, and internet-related tools.
Key Responsibilities:
* Design, develop, and maintain compiler components and internal representations.
* Collaborate with engineering teams to ensure accurate translation of legacy functionality.
* Optimize code generation and translation with awareness of hardware-software integration.
* Troubleshoot, debug, and improve compiler performance and correctness.
Required Skills and Qualifications:
* Proven experience in compiler development or transpiler design.
* Strong knowledge of internal compiler structures, language parsing, and code generation.
* Ability to implement algorithms for static analysis, type inference, and code optimization.
* Proficiency in low-level languages such as assembly.
* Effective communication and team collaboration.
Preferred Qualifications:
* Advanced degree in Computer Science with a focus on compilers or programming languages in C/C++, Rust, or other system-level languages.
* Experience with OCaml, TypeScript, or statically typed languages with type inference.
Education:
* Bachelor's degree in Computer Science, Engineering, IS, or related technical discipline.
* Advanced degree, such as Master's in Computer Science, preferred.