Security Developer Tools Engineer (static Analysis), Languages & Runtimes

Apple Apple · Big Tech · Beaverton, OR +1 · Software and Services

Develop security and bug-finding tools using static program analysis, compilers, and program analysis techniques to improve software security and reliability within the Apple ecosystem. This role involves end-to-end engineering, collaboration with OS and security teams, and contributions to the Clang/LLVM open-source community.

What you'd actually do

  1. Help develop and make progress on a technical roadmap to build program analysis tools to continually improve the security of Apple's operating system software stack, including user space, kernel, and firmware environments.
  2. Develop program analysis-based tools and features to prevent classes of errors, enable the adoption of safe programming models, and find bugs.
  3. Own the end-to-end engineering of the tools and features, including feature planning, design, implementation, testing, and roll out strategy.
  4. Work with partner teams to design, plan, and deliver high-quality software features for our tools and operating systems.
  5. Strengthen the team by mentoring junior engineers and helping engineers grow their skills.

Skills

Required

  • Experience developing compiler or static analysis tools (such as with compiler frontends, refactoring tools, software verification tools)
  • Excellent software engineering, testing, and debugging ability
  • Proficiency in C++ development
  • Interest in systems-level programming and security
  • Strong communication and organizational skills

Nice to have

  • Experience with static analysis techniques (data flow analysis, abstract interpretation, or symbolic execution)
  • Experience leading the technical development of large features and collaborating across organizational boundaries

What the JD emphasized

  • security
  • bug-finding
  • program analysis
  • static analysis
  • compiler
  • Clang/LLVM