Software Development Engineer - iOS
Core
Design, develop, and maintain keyboard focus systems, lifecycle management, and layout APIs for iOS/macOS apps.
Role type
Senior IC iOS software engineer (systems & framework)
Builds
Keyboard infrastructure and layout APIs
Domain
iOS/macOS development
Required skills
Swift, Objective-C, systems programming, state management, framework design, public API design
Preferred skills
UIKit internals, responder chain, UIWindow, UIScene, view layout systems, keyboard avoidance, input accessory views, UITextInput, UIKeyInput, accessibility requirements, lifecycle and state-management bug diagnosis
Technologies
Swift, Objective-C, UIKit, SwiftUI
Responsibilities
Design and maintain keyboard focus systems across complex app hierarchies; Own keyboard lifecycle management including presentation, dismissal, transitions, and state restoration; Build and maintain keyboard layout APIs for positioning, insets, and animation coordination; Ensure keyboard infrastructure works reliably across multitasking, Stage Manager, and diverse app architectures; Collaborate with UIKit, SwiftUI, and framework teams to provide consistent keyboard behavior; Debug complex issues involving focus engines, responder chains, windowing, lifecycle, and state management; Write documentation and guide internal and external developers adopting keyboard layout APIs