Deep Learning Systems Compiler Engineer

Sunnyvale, California, USA

Full Time logo
Apply now Apply later

Posted 1 month ago

Amazon Lab126 is an inventive research and development company that designs and engineers high-profile devices like the Kindle family of products. Lab126 began in 2004 as a subsidiary of, Inc. Since then, we have worked to produce best-selling e-readers and tablets, as well as new inventions like Fire TV and Fire phone. What will you help us create?

Work hard. Have fun. Make history.

The Role:
This is a fast-paced, intellectually challenging position, and you’ll work with thought leaders in multiple technology areas. You will help us to develop a brand new deep learning compiler, defining the software architecture and implementing major blocks. You will work with system architects, hardware engineers and external users both within and external to Amazon to ensure this new deep learning compiler can work with existing environments and will ensure existing programming paradigms and semantics can be maintained.

· Be responsible for architecture and development of software stacks targeting deep learning accelerators
· Develop applications, middleware and drivers in the deep learning domain
· Profile, analyze and optimize system level performance, develop new tooling where necessary.
· Participate in design reviews, API development, and documentation
· Deliver investigation plans and reports, architectural documents, design specs, software source code, build scripts
· Perform tasks including debug, bring-up, Beta and production software development
· Successfully collaborate with both software and hardware product teams

Basic Qualifications

· Programming experience with at least one modern language such as Python, Java, C++, or C# including object-oriented design
· 1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
· Bachelor’s Degree in Computer Science or related field
· Equivalent experience to a Bachelor's degree based on 3 years of work experience for every 1 year of education
· Proficiency in, at least, one modern programming language such as C, C++, C#, Java, or Perl
· Experience in compiler development, starting from architecture through several generations of delivery to customers

Preferred Qualifications

· Master's or PhD
· Will have worked on new instruction set architectures, which may include CPU, NPU, GPU and other forms of compute.
· Experience with application focused hardware acceleration technologies, such as GPU acceleration with CUDA or OpenCL, or FPGA acceleration with OpenCL or CAPI
· Strong knowledge of resource management, scheduling, code generation and , compute graph optimization
· Proficiency in hardware definition/architecture collaboration and hardware / software integration
· Computer Science fundamentals in object-oriented design, data structures and algorithm design, complexity analysis, scalability and availability
· Experience with professional software engineering practices and best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
· Strong C and/or C++
· Meets/exceeds Amazon’s leadership principles requirements for this role
· Meets/exceeds Amazon’s functional/technical depth and complexity for this role
Lab126 is part of the, Inc. group of companies and is an Equal Opportunity Employer – Minority / Women / Disability / Veteran / Gender Identity / Sexual Orientation / Age.


Job tags: API Development Deep Learning Engineering GPU Java Perl Python Research