Software Development Engineer in Test (Platform)

Santa Clara Valley (Cupertino), California, United States
Software and Services

Summary

Posted: Nov 7, 2018
Weekly Hours: 40
Role Number: 114423728
The Compiler and OS Tools Development Team is seeking someone what enjoys working on developer focused tools and building quality into the engineering process. You will work with our primary DevOps engineer to help lead and improve our Continuous Integration system as well as work with the development team to improve test quality and code coverage for the LLVM compiler and GPU teams.

Key Qualifications

  • Proven track record in software development or quality engineering with at least 2 years of experience.
  • Deep knowledge of at least one of the following languages and related development tools: Python, C++, Objective C, or Swift.
  • Familiarity with source control systems such as git/svn
  • Knowledge of build systems such as make, CMake, Ninja, autoconf.
  • You have excellent judgment and integrity with the ability to make timely and sound decisions

Description

In this role you will be responsible for working with the LLVM backend, OS Tools, and GPU teams to create, maintain and improve the automated tests for both the internal and open source version of our software. You would be working directly with the engineers as new features are developed to ensure testability and correctness verification. You will also be helping to maintain and improve our automated testing infrastructure that makes up our CI system for qualification and regression testing. You will be part of the Compiler and OS Tools Development Team. You duties will vary depending on projects but may include: • Creating and maintaining automated test for OS Tools, Linkers and other compiler related technologies • Providing operational support and maintenance for CI systems • Performance testing and code analysis aimed to improve performance through code optimizations • Triage test failures and resolve merge conflicts

Education & Experience

B.S. in Computer Science or equivalent experience

Additional Requirements

  • Direct experience with CMake & Ninja.
  • Experience working in an open source community
  • Familiarly with x86 or ARM architecture
  • Knowledge of internal compiler architecture and basic code optimizations. Experience in compiler development will be a plus
  • Experience with continuous integration systems such as Jenkins, TravisCI, Buildbot