We’re looking for a world-class developer to join our team in building a unified app for iOS and macOS. You’ll use the latest technologies, such as Catalyst and SwiftUI, to create modern iOS and macOS applications from a single codebase.
Join the Team
The Apple Platforms Team provides the scaffolding for multiple products to create a super-app of privacy and security services for iOS and macOS. We:
- Build the foundations of the app into which other product units then contribute with additional functionalities.
- Define core architecture, including guardrails, to enable multiple teams to contribute safely.
- Build core functionality in authentication, user subscriptions, in-app purchases, local and push notifications, in-app messages, and more.
- Configure and manage our build systems.
- Operate our test pipelines.
- Pick test frameworks and guide other teams on using them well.
- Have a veto right over contributions by other teams.
- Coordinate releases to customers, typically once every two weeks or more frequently.
- Coordinate technical documentation.
- Provide apps developer time and expertise on Apple platforms as a service for other teams.
- Are accountable for: Quality, velocity, shipping speed, the satisfaction of users.
Why we want you
As a member of this team, you will:
- Write high-quality, well-architected, modular code that is easy to read and maintain.
- Ensure your code, and the application as a whole, has excellent automated test coverage.
- Ensure your code follows modern Apple development practices
- Ensure the app has a clean, simple, and robust architecture to enable other teams to contribute code easily.
- Ensure your build and test pipelines are fast and stable.
- Provide high-quality code reviews for your team and other contributors to the code base.
- Lead by example and provide guidance and mentorship to other developers.
- Provide technical insights to the Product Management team.
- Work closely with the Design Team to design and build great UI and a great user experience.
- Undertake spikes, prototyping, and R&D work to investigate feasibility and de-risk complex projects.
- Maintain an excellent velocity.
- Write clear and comprehensive tech designs and test plans, and ensure work is broken down into accurately sized bite-sized chunks.
Requirements of the role
Please get in touch if you have the following skills or experience, we’d love to tell you more about this role and our company.
- A proven track record working on consumer iOS or macOS applications using native frameworks.
- Experience as a Swift or ObjectiveC developer.
- Excellent at writing well-architected code using design patterns such as MVC, MVVM, and the Coordinator Pattern.
- Excellent at writing automated test cases.
- Experience writing thread-safe code using common threading frameworks such as GCD or RxSwift.
- Experience with standard software development practices such as Scrum.
- Great communication skills.
- Have a logical mindset and are a great problem solver.
Though not essential, we think these skills would be beneficial to have.
- Experience in building applications using the Apple Network Extension framework.
- Experience in building System Extensions.
- Experience in building iOS widgets.
- Experience with libraries such as Weaver, Cuckoo, PromiseKit, XCTest, UIKit, SwiftUI.
- Excellent at building UI.
- Experience in C/C++ development.
- Solid understanding of IP networking—including both low-level sockets programming and high-level application layer programming.
- Experience with TDD or BDD.
- Experience writing tech designs and threat models.
What we can offer you
- Full-time employment with flexible working hours.
- Challenging work in a fun and collaborative environment.
- Attractive compensation and time-off benefits.
- Spacious open-concept and centrally located offices.
- Financially successful and profitable company.
- Fully stocked pantry with healthy foods and fresh fruit.
- Team lunches and company events every quarter.
- Multicultural teams represented by 30+ nationalities.
Please do not include any salary information on your resume.