Job Summary
As a Lead Software Engineer, you'll take ownership of the end-to-end software stack, design, implementation, and optimization of our core AI operator modules/kernels. You will be working with diverse cross-functional teams, enhance the performance, reliability, and scalability of our edge AI processors. Your contributions will directly impact our ability to deliver best-in-class Edge AI/ML performance across our product portfolio.
What You'll Do
- Architectural Leadership:
- Define and lead the evolution of our AI operators/kernel architecture to maximize performance and efficiency on our custom ISA-based hardware.
- Evaluate cutting-edge technologies and methodologies to enhance AI operator capabilities.
- Drive proof Of concepts for addition of new operators and solutions that help improve overall performance and stability of software stack.
- Guide developers technically to ensure on-time deliverables closure.
- Innovation & Continuous Learning:
- Stay current on emerging trends in AI operator development, and specialized ISA optimizations.
- Champion a culture of innovation by proposing and implementing forward-thinking solutions that drive our technology forward.
- Cross-Functional Collaboration:
- Work closely with hardware architects, compiler teams, and application developers to ensure seamless integration of kernel components with higher-level systems.
- Be a technical point of contact supporting HW and other Software cross functional teams.
- Design and Development:
- Design and Development of our AI operator modules/kernels to maximize performance and efficiency on our custom ISA-based edge AI processors.
- Develop, optimize, and maintain high-performance kernel-level code in C/C++ (and assembly when needed) for AI/ML operators.
- Performance Optimization & Debugging:
- Utilize advanced profiling and debugging tools (e.g., GDB, trace analyzers) to diagnose and resolve performance bottlenecks.
- Drive continuous performance improvements through rigorous testing and iterative optimization strategies.
What We're Looking For
- Educational Background:
- Bachelor's or Master's degree in Computer Science, Electrical/Computer Engineering, or a related field; a Ph.D. is a strong plus.
- Proven Expertise:
- 8+ years of hands-on experience in kernel or low-level systems software development, with demonstrable contributions to production-quality code.
- Deep knowledge of OS internals, memory management, process scheduling, and performance tuning.
- Expertise in system-level programming using C/C++ and proficiency in assembly language for specialized ISA implementations.
- Technical Mastery:
- Strong familiarity with kernel debugging and profiling tools (e.g., GDB, Gprof, or equivalent).
- Track record of optimizing software performance in complex, high-performance computing environments.
- Leadership & Collaboration:
- Proven track record of leading technical projects and mentoring engineering teams.
- Exceptional problem-solving skills and the ability to work effectively across multiple disciplines.
- Bonus Points:
- Experience with AI/ML operator development or specialized compiler optimizations.
- Exposure to hardware/software co-design and emerging trends in AI hardware acceleration.
More information about NXP in India...