WebKit Layout & Rendering Engineer

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

Summary

Posted: Aug 16, 2019
Weekly Hours: 40
Role Number: 200091150
Imagine what you could do here. At Apple, new ideas have a way of becoming great products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. When you load a webpage in Safari, you can see its contents on the screen thanks to WebKit’s layout and rendering engine. In this role on the WebKit team, you will be responsible for upgrading its architecture, enhancing its capabilities, and improving its performance. Your work lets developers create sophisticated experiences on the web that are responsive to user input and render with blazing speed. The WebKit team seeks a software engineer excited to work on cutting edge technologies for the world's most popular web engine. The WebKit framework powers many system applications, including Safari, Mail, and Books. We're looking for engineers with exceptional problem solving skills, a passion for quality, and the desire to push the web forward.

Key Qualifications

  • Familiarity and experience with pointer-based languages, C or C++ preferred
  • Understanding of data structures and algorithms
  • Excellent debugging, critical thinking, and communication skills

Description

You will work on a broad range of visual technologies for the web, including layout, CSS, SVG, and canvas. You will be encouraged to work across all layers of code. Our performance is based on metrics from several benchmarks, including MotionMark and Speedometer. You will evaluate WebKit against these benchmarks, improve the engine, and refine the benchmarks themselves.

Education & Experience

BS in CS or equivalent

Additional Requirements

  • We’re looking for a self-starter who has an interest in this area of the web, and experience in memory management with low-level languages. But having any of the following are definite plusses for this role:
  • *Experience with advanced C++ features, including templates and C++14
  • *Completed projects, corporate or personal, using web technologies
  • *Working knowledge of web standards: HTML5, CSS, JavaScript, DOM
  • *Experience with statistical analysis
  • *Familiarity with threads and concurrency