Software Engineer in Test, Cocoa

Apple

Apple

Software Engineering

Cupertino, CA, USA

USD 147,400-272,100 / year + Equity

Posted on May 9, 2026
Join the Cocoa frameworks engineering group and help build and test framework APIs for macOS, iOS, watchOS, tvOS and visionOS. Our team is responsible for key technologies including macOS experience for SwiftUI, Appkit, Catalyst, CoreData, SwiftData, CoreText and CoreGraphics frameworks. We work on system level frameworks that focus on improving a broad range of developer and user experiences for all the Apple’s platforms. We are looking for critical thinkers with a sharp eye for detail who would like to play a key role in qualifying Cocoa frameworks and helping ensure Apple software is of the highest quality.
In this role, you will be responsible for shipping world-class user experiences and act as the voice of our end-users. As a Software Development Engineer in Test (SDET), you will help with developing and maintaining CoreData/SwiftData test applications, automated test suites for exercising various APIs of these frameworks into test applications. Continuously look for ways to improve and enhance system reliability and performance. This role requires strong programming fundamentals and automation experience to help in all phases of the product release cycle. You will be responsible for designing and maintaining test applications, automation frameworks which involve deep integration and close collaboration with a cross-functional team of software development & QA engineers, architects, program managers, and other domain experts. Responsibilities include defining, implementing, and continuously evolving automated test frameworks, monitoring CI performance, test result analysis, as well as test triage and reporting. In this role you should be able to identify gaps in existing test plans and close them with scalability and maintainability in mind to complement the manual testing efforts. You will be responsible for driving all of the quality work you are doing and also be a strong advocate for quality in the overall software development process. This position requires a self-motivated and dynamic individual with strong technical and communication skills who can contribute in a team environment and coordinate with other framework teams such as SwiftUI, CloudKit and Xcode.
  • Design and maintain test applications and automation frameworks for CoreData/SwiftData, including developing automated test suites that exercise framework APIs across the product release cycle.
  • Define, implement, and evolve automated test infrastructure — including CI performance monitoring, test result analysis, triage, and reporting to ensure system reliability.
  • Identify gaps in existing test plans and close them with scalable, maintainable automated coverage that complements manual testing efforts.
  • Drive quality advocacy across the software development process — acting as the voice of end-users and championing reliability and performance improvements.
  • Collaborate cross-functionally with development engineers, QA, architects, and partner framework teams (SwiftUI, CloudKit, Xcode) to integrate testing deeply into the workflow.
  • Experience in building test applications, automated UI and non-UI tests using Xcode, Swift/ObjectiveC, XCTest/XCUITests
  • Strong passion for QA in software, including developing, extending and maintaining test plans, automation libraries, and methodologies
  • Strong triaging and debugging skills and a solid grasp of OS fundamentals
  • Ability to work in a diverse group, including interpersonal skills.
  • At least 2 years of prior hands-on iOS or macOS application development
  • Experience with Swift and/or Objective-C preferred
  • Experience with databases (SQLite), sync frameworks (CloudKit), and system daemons (XPC)
  • Experience with system concepts including multi-threaded processing, synchronization, and interprocess communication
  • Experience maintaining legacy code and backwards compatibility, with a record of replacing legacy code with new things in non-disruptive ways
  • Specific experience defining and driving data structures, APIs, or persistence layers for communication features