Applies algorithmic expertise in iOS development: efficient diffing algorithms for collection view updates (NSDiffableDataSource), image processing algorithms with Accelerate/vDSP framework, search algorithms for Core Data fetch optimization. Designs memory-efficient algorithms respecting iOS device constraints.
Roles · iOS Developer · Senior
What a Senior } should know
36 core skills, 53 in total. Expectations per skill, and what changes at the next level.
This page lists what a Senior } is expected to know and do, skill by skill. Core skills are the ones a manager and peers assess in a review cycle; the rest count only in self-assessment. Main areas: Programming Fundamentals, Frontend Development, Mobile Development.
Core skills for a Senior
Grouped by area. The label on the right is the expected depth: Awareness, Working, Advanced or Expert.
Programming Fundamentals · 8
Designs async architectures for iOS: structured concurrency with TaskGroup/AsyncStream, Actor-based state isolation, async data layer with proper cancellation support. Mentors team on Swift concurrency best practices and migration from GCD.
Designs code quality standards for iOS/Swift projects: SwiftLint configuration, architectural pattern enforcement (MVVM/TCA), modularization via Swift packages. Refactors legacy Objective-C and massive view controllers into modern Swift patterns. Establishes review practices for memory management, concurrency, and accessibility.
Selects optimal data structures for iOS applications: Core Data entity relationships with proper fetch request optimization, Combine publisher chains for reactive data flow, SwiftUI-optimized identifiable collections. Optimizes memory usage with value-type collections and copy-on-write semantics. Designs efficient offline storage structures with CloudKit sync support.
Has deep expertise in design patterns for iOS: designs clean architectures with VIPER/VIP or composable architecture patterns, implements reactive patterns with Combine/async-await, optimizes pattern usage for iOS memory management and performance. Mentors team on architectural patterns for complex iOS applications.
Designs memory-efficient iOS architectures with ARC optimization: eliminates retain cycles through careful ownership design, implements autorelease pool management for batch operations, and creates custom caching layers with memory pressure awareness. Uses Instruments Allocations and Leaks for systematic memory profiling. Optimizes image and media memory with lazy loading and purging strategies. Mentors team on Objective-C/Swift memory model nuances.
Has deep expertise in iOS multithreading: designs actor-based concurrent architectures with Swift actors, implements custom async sequences for complex data flows, optimizes GCD and operation queue configurations for app performance. Mentors team on Swift structured concurrency for production iOS applications.
Applies OOP/SOLID in iOS/Swift architecture: protocol-oriented design for clean abstractions, dependency injection for testable view models, interface segregation with focused protocols. Designs modular iOS apps using Swift packages with proper boundary enforcement between features, domain, and infrastructure layers.
Frontend Development · 1
Architects iOS application networking layer based on URLSession with caching, retry logic, and request cancellation support. Implements pagination, data prefetching, and optimistic UI updates. Uses Combine/async-await for reactive data flow management, configures URLCache and HTTP caching for offline mode.
Mobile Development · 8
Designs comprehensive ASO strategy for iOS products: integrates Apple Search Ads with organic ASO, implements product page optimization experiments, builds keyword performance tracking. Optimizes conversion rates across custom product pages and mentors team on iOS store best practices.
Architects mobile application with Combine and Swift Concurrency. Optimizes performance for low-end devices. Implements CI/CD for mobile development. Mentors the team.
Architects mobile application with Core Data and SwiftData. Optimizes performance for low-end devices. Implements CI/CD for mobile development. Mentors the team.
Configures CI/CD pipeline for iOS projects using Fastlane: build, signing, and TestFlight publishing automation. Configures match for certificate and provisioning profile management, sets up scan for automatic testing. Integrates with GitHub Actions or Bitrise, manages Code Signing through Automatic Signing and match.
Profiles iOS applications using Instruments: Time Profiler for CPU, Allocations for memory, Core Animation for FPS. Optimizes application launch (cold/warm start), reduces binary size through link-time optimization. Tracks production performance metrics via MetricKit and Xcode Organizer.
Ensures iOS application security: secret storage in Keychain, data encryption via CryptoKit, SSL Pinning for network requests. Implements biometric authentication via LocalAuthentication (Face ID/Touch ID), device jailbreak status verification. Configures App Transport Security and Content Security Policy.
Architects mobile application with Swift and SwiftUI. Optimizes performance for low-end devices. Implements CI/CD for mobile development. Mentors the team.
Architects mobile application with UIKit and Auto Layout. Optimizes performance for low-end devices. Implements CI/CD for mobile development. Mentors the team.
API & Integration · 4
Architects API integration documentation system for iOS applications: automatic generation from OpenAPI spec, version tracking, and changelog. Creates architecture decision records for API pattern choices, documents caching strategies and retry logic. Maintains documentation currency through CI/CD integration and contract tests.
Architects GraphQL integration for iOS applications: caching strategy with cache policies, watched query lifecycle management. Optimizes performance: query batching, persisted queries for traffic reduction, and automatic query deduplication. Configures custom scalar types and interceptor chains for Apollo.
Architects iOS application networking layer: abstract APIClient with Endpoint protocols, interceptors for logging and authentication. Implements retry logic with exponential backoff, request/response middleware, and network error monitoring. Optimizes performance through HTTP/2, request batching, and data prefetching.
Architects real-time communication layer for iOS applications: WebSocket abstraction supporting various protocols (Socket.IO, Starscream). Implements channel multiplexing, subscription management, and traffic optimization through delta updates. Integrates with Combine for reactive processing of incoming events and connection state.
DevOps & CI/CD · 1
Architects optimal CI/CD pipeline for iOS on GitHub Actions: parallel jobs for linting, testing, and building, conditional workflows for different branches. Configures self-hosted Mac runners for acceleration, manages secrets via GitHub Secrets for certificates. Implements automatic release notes creation and deployment via match + Fastlane.
Testing & QA · 4
Architects E2E testing framework for iOS applications: Page Objects architecture, Robot Pattern for scenario readability. Configures parallel UI test execution on multiple simulators, integrates with CI/CD for automatic runs. Implements visual regression testing through screenshot comparison, handles flaky tests via retry mechanisms.
Architects iOS application integration testing system: test configurations for different environments, automatic test data management. Implements contract tests for API integrations, tests push notification and deep linking scenarios. Configures parallel test execution for CI/CD pipeline acceleration.
Architects iOS application mobile testing strategy: device and iOS version matrix, testing specific scenarios — memory warnings, background/foreground transitions, call interruptions. Configures automation via XCUITest with TestPlan for different configurations, tests App Extensions, Widgets, and Watch companions.
Architects iOS application test architecture: test data factories, reusable mocks and stubs via protocols. Implements UI snapshot testing via PointFree SnapshotTesting, parameterized tests for edge cases. Optimizes test execution speed through proper isolation and I/O operation minimization.
Security · 3
Architects iOS application authentication system: abstract AuthManager supporting multiple providers (Apple, Google, email). Implements silent token refresh via URLSession interceptors, handles race conditions during concurrent requests. Configures SSO through Shared Web Credentials, manages migration between auth scheme versions.
Integrates OWASP MASVS (Mobile Application Security Verification Standard) into the iOS development process: systematic verification at L1 and L2 levels. Conducts threat modeling for mobile applications, uses OWASP Mobile Security Testing Guide for penetration testing. Configures automatic security checks in CI/CD and trains the team on secure practices.
Architects secure iOS application architecture: Data Protection API for files, Secure Enclave for cryptographic keys, encrypted App Groups for inter-process communication. Implements zero-trust approach to server data, sanitizes all external data. Conducts security-focused code reviews using SAST tools for Swift.
AI-Assisted Development · 2
Integrates AI tools into the iOS development workflow: automating routine tasks through prompt templates for boilerplate code generation. Uses AI for architectural decisions — analyzing Core Data vs SwiftData trade-offs, choosing navigation patterns. Critically evaluates AI recommendations considering deprecated APIs and Apple-specific best practices.
Maximizes Copilot effectiveness for iOS development: context configuration via .github/copilot-instructions.md with iOS specifics. Generates complex constructs — SwiftUI ViewModifiers, custom Property Wrappers, and Combine operators. Critically evaluates suggestions for Apple Human Interface Guidelines compliance and current Swift best practices.
Architecture & System Design · 2
Architects Clean Architecture for complex iOS applications: modular Use Cases with composition, Repository with caching and fallback strategies. Defines module boundaries through SPM with strict dependency control, configures separate module compilation for speedup. Implements CQRS for read/write operation separation, designs Domain Events for inter-module communication.
Architects scalable iOS application architecture: multi-module structure with clear dependencies, feature-based organization with independent development. Defines navigation strategy for complex applications, designs state management system. Analyzes trade-offs between approaches (MVVM+C vs TCA vs VIPER) for specific business requirements.
Version Control & Collaboration · 2
Conducts deep code reviews focusing on iOS application architecture and scalability. Analyzes change impact on performance, security, and maintainability. Verifies test coverage of critical paths, Apple HIG compliance, and accessibility requirements. Mentors junior developers through detailed reviews with Swift best practices explanations.
Architects Git workflow for iOS teams: branching strategy accounting for App Store review cycle and TestFlight distribution. Configures Git hooks for pre-commit SwiftLint checks, automatic version bumping on merge. Optimizes work with large iOS projects: sparse checkout for multi-module repositories, monorepo vs polyrepo strategy for the iOS platform.
Performance Engineering · 1
Architects performance budget system for iOS projects: automatic CI/CD checks via XCTest metrics, threshold values for different devices. Analyzes performance trends through Xcode Organizer and custom dashboards, configures degradation alerts. Optimizes App Thinning: asset catalogs, on-demand resources, and bitcode for size minimization.
Additional skills
Not assessed by the team, but part of the self-assessment and the development plan.
What changes at Lead
51 skills get a higher expectation or become core when moving from Senior to Lead. The biggest jumps first.
- Algorithms & Complexity: Advanced → Expert
- API Documentation: Advanced → Expert
- App Store Optimization (ASO): Advanced → Expert
- Async Programming: Advanced → Expert
- ChatGPT / Claude: Advanced → Expert
- Clean Architecture: Advanced → Expert
- Code Quality & Refactoring: Advanced → Expert
- Code Review: Advanced → Expert
- Combine & Swift Concurrency: Advanced → Expert
- Core Data & SwiftData: Advanced → Expert
} in the open competency matrix: 53 skills across 5 levels. The matrix is free for individuals and stays free.