iOS Developer Roadmap

A step-by-step iOS Developer roadmap: the full stack, the skills to learn in order and the best places to learn each step.

The stack, end to end

  • Fundamentals: Variables and data types, Loops and conditions, Functions, Problem solving, Git, GitHub, Branching and merging, Pull requests
  • Mobile: let and var, Optionals, Closures, Structs, classes and enums, Protocols, Error handling, Xcode and the Simulator, SwiftUI views, State and bindings, Lists and navigation, Forms and animation, URLSession and Codable, async/await, SwiftData, Core Data basics, Keychain, MVVM, Dependency injection, Swift Testing and XCTest, XCUITest, Clean Architecture, Generics, Swift concurrency in depth, ARC and memory, Combine, UIKit and Auto Layout, Deep links, Core Location and MapKit, Notifications, StoreKit 2
  • Get hired: Portfolio projects, Technical resume, Interview preparation
  1. Programming and problem-solving basics

    Suggested pace: Start here

    Learn to think in steps: variables, conditions, loops, functions and how to break a big problem into small ones. A structured beginner course gives you the habit of solving problems on your own.

    Skills

    • Variables and data types
    • Loops and conditions
    • Functions
    • Problem solving

    Tips

    • Type the examples yourself instead of copying them, and change them to see what breaks.

    Where to learn

  2. Version control with Git and GitHub

    Suggested pace: Next

    Git records the history of your code and lets teams work on the same project. Learn to commit, branch, merge, resolve conflicts and open a pull request on GitHub. Almost every software job expects it.

    Skills

    • Git
    • GitHub
    • Branching and merging
    • Pull requests

    Tips

    • Put every practice project on GitHub. It doubles as your portfolio.

    Where to learn

  3. Swift language fundamentals

    Suggested pace: Then

    Learn Swift on its own before building screens: constants and variables, types, optionals, functions and closures, structs, classes, enums, protocols and error handling. Swift is strict on purpose, so most mistakes show up before the app runs.

    Skills

    • let and var
    • Optionals
    • Closures
    • Structs, classes and enums
    • Protocols
    • Error handling

    Tips

    • Prefer let and structs. Learn optionals well, because they are in every API.

    Where to learn

    Free beginner iOS course on this site

  4. Xcode and SwiftUI: build your first apps

    Suggested pace: After that

    Install Xcode and build screens with SwiftUI: views and modifiers, stacks, state and bindings, lists, navigation, forms and animation. You need a Mac to build native iPhone apps.

    Skills

    • Xcode and the Simulator
    • SwiftUI views
    • State and bindings
    • Lists and navigation
    • Forms and animation

    Tips

    • Build a small app after each topic. Follow Apple’s own tutorials first, they are well written.

    Where to learn

    Free beginner iOS course on this site

  5. Networking, async/await and saving data

    Suggested pace: Later

    Call REST APIs with URLSession and Codable, write async code with async/await, and keep data on the phone with SwiftData (or Core Data in older projects). Store secrets in the Keychain.

    Skills

    • URLSession and Codable
    • async/await
    • SwiftData
    • Core Data basics
    • Keychain

    Tips

    • Read the real JSON of an API before writing your model. Never put a private API key inside the app.

    Where to learn

  6. Architecture and testing

    Suggested pace: Later

    Keep code clean as the app grows: MVVM with the Observable macro, dependency injection through protocols, and tests with Swift Testing, XCTest and XCUITest. Know MVC, Clean Architecture, VIPER and the Coordinator and Repository patterns by name.

    Skills

    • MVVM
    • Dependency injection
    • Swift Testing and XCTest
    • XCUITest
    • Clean Architecture

    Tips

    • Do not over-build. Add structure when a screen has real logic or needs tests.

    Where to learn

  7. Advanced Swift and UIKit

    Suggested pace: Later

    Go beyond the basics: generics, task groups, actors and Sendable, memory and retain cycles, Combine, advanced SwiftUI, deep links, and the UIKit that older code bases still use, including Auto Layout and mixing UIKit with SwiftUI.

    Skills

    • Generics
    • Swift concurrency in depth
    • ARC and memory
    • Combine
    • UIKit and Auto Layout
    • Deep links

    Tips

    • Learn to find leaks with Instruments. Build one small app in UIKit to understand view controllers.

    Where to learn

    Free advanced iOS course on this site

  8. Apple frameworks for real features

    Suggested pace: Later

    Add device features with Apple’s frameworks: Core Location and MapKit, push and local notifications, StoreKit for in-app purchases, Vision, AVFoundation, HealthKit and widgets. Each one comes with privacy rules and usage descriptions.

    Skills

    • Core Location and MapKit
    • Notifications
    • StoreKit 2
    • Vision
    • AVFoundation
    • HealthKit

    Tips

    • Ask for permissions when a feature is needed, and always handle “no”.

    Where to learn

  9. Release: TestFlight, App Store and CI/CD

    Suggested pace: Later

    Ship the app: signing, TestFlight beta testing, App Store Connect, review and privacy information, then automate builds and tests with Xcode Cloud, GitHub Actions, Bitrise or Fastlane, and release safely with phased rollout.

    Skills

    • App Store Connect
    • TestFlight
    • Code signing
    • Fastlane
    • Xcode Cloud
    • CI/CD

    Tips

    • Read the App Review Guidelines before you build, not after. Fees and rules change, so check Apple’s site.

    Where to learn

  10. Build your portfolio, resume and interview skills

    Suggested pace: When you are ready

    Employers want proof. Finish two or three projects you can show and explain, put them on GitHub, write a clear resume that matches the jobs you apply for, and practise the interview questions for the role.

    Skills

    • Portfolio projects
    • Technical resume
    • Interview preparation

    Tips

    • Describe what you built, why, and what you would improve. That is what interviewers ask about.

    Build your resume · Check your resume (ATS) · Interview questions · Salaries · Browse jobs

Frequently asked questions

Where should I start with iOS Developer?

Start at step 1 and work down in order, because later steps build on earlier ones. If you are signed in, the roadmap compares your resume with each step and marks where you could start.

Do I need a degree to work as a iOS Developer?

It depends on the employer and the country. Many employers accept proven skills and projects, while others ask for a degree. Read the adverts for the roles you want and ask the employer if it is unclear.

How do I know I am ready to apply?

When you can build a small project from start to finish without copying a tutorial, and explain why you made your choices. Apply while you keep learning; you do not need to know everything.