Software Engineer-Compilers
NXP Semiconductors · Hyderabad
Software Engineer - Compilers
Company:** Kinara Inc. USA
Job Summary
We are seeking a talented and passionate Software Engineer to join our team, focusing on the design, development, and optimization of compilers for Kinara's cutting-edge AI acceleration hardware. This role involves contributing to the entire compiler toolchain, from front-end parsing to back-end code generation, to enable efficient execution of machine learning models.
Job Responsibilities
* Design, implement, and maintain compiler components, including front-end parsers, intermediate representations, optimizers, and code generators for Kinara's specialized hardware architecture.
* Develop and integrate new features and optimizations into the compiler to improve performance, reduce memory footprint, and enhance the overall efficiency of AI workloads.
* Collaborate with hardware architects, software engineers, and machine learning researchers to understand hardware capabilities and software requirements, translating them into compiler design and implementation.
* Debug and resolve issues within the compiler toolchain, including those related to correctness, performance, and compatibility.
* Contribute to the definition and implementation of compiler-related APIs and programming models.
* Write comprehensive unit and integration tests to ensure the robustness and reliability of the compiler.
* Participate in code reviews, providing constructive feedback and ensuring high-quality code standards.
* Stay up-to-date with the latest advancements in compiler technology, AI hardware, and machine learning frameworks.
Job Qualifications
* Bachelor's or Master's degree in Computer Science, Computer Engineering, or a related field.
* 2+ years of professional experience in compiler development, including experience with compiler front-ends, back-ends, optimization passes, or intermediate representations.
* Strong proficiency in C++ programming.
* Solid understanding of compiler theory, including parsing, semantic analysis, intermediate representations (e.g., LLVM IR), optimization techniques, and code generation.
* Experience with LLVM or GCC compiler infrastructure is highly desirable.
* Familiarity with hardware architectures, especially those designed for AI/ML acceleration, is a plus.
* Knowledge of machine learning frameworks (e.g., TensorFlow, PyTorch) and their computational graphs is a bonus.
* Experience with debugging tools and techniques.
* Excellent problem-solving skills and attention to detail.
* Strong communication and collaboration skills, with the ability to work effectively in a team environment.