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 compiler (from scratch) for an exciting new project, 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 compiler can work with existing environments and will ensure existing programming paradigms and semantics can be maintained.
Bachelor’s degree or higher in Computer Science or related field
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++
Proficiency in hardware definition/architecture collaboration and hardware / software integration
Strong knowledge of resource management, scheduling, code generation and optimization, compute graph optimization
Master's or PhD.
experience in compiler development, starting from architecture through several generations of delivery to customers.
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