TextKit Software Engineer

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

Summary

Posted:
Weekly Hours: 40
Role Number:200477870
The Cocoa Text team is responsible for the cross platform text layout engine used on Mac, iPhone, iPad, Apple Watch and Apple TV. The team is responsible for the fundamental abstractions for storage, editing and rendering of text in user interfaces on all Apple products. On the Mac, the Cocoa TextKit team is also responsible for all functionality related to text input and text controls for applications in AppKit and SwiftUI. We strive hard to ensure that text can be delivered to users as typographically beautiful as possible, while not sacrificing performance or ease of use. We are looking for a motivated individual to join our team and improve the state of the art in digital typography in software!

Key Qualifications

  • Strong engineering and debugging skills and a solid grasp of OS fundamentals
  • Experience or familiarity with international text issues such as right to left layout and Unicode.
  • Strong communication skills
  • Experience with Objective-C or Swift
  • Experience designing reusable API and object oriented design

Description

Are you up to the challenge of contributing to software used by hundreds of millions of people every single day? The Cocoa Text team is looking for an outstanding engineer who seeks to have an impact on the way text is delivered across all of Apple’s devices. You will become part of a small team whose goal is to advance the state of the art in the text for applications across all of Apple’s platforms. You will be responsible for the design, implementation and packaging of text features, in addition to contributing to the evolution of the Cocoa Frameworks, and working closely with the AppKit, UIKit, SwiftUI, Human Interface and other teams at Apple. Strong software engineering skills, intimate awareness of object-oriented design, a passion for user interface, and pride in attention to detail are expected. We encourage curiosity and initiative, value diversity, and depend on the ability to learn and grow when approaching new features and technology.

Education & Experience

BS or M.S. in Computer Science or equivalent industry experience

Additional Requirements

Pay & Benefits