Senior iOS Engineer - Learning Experience
Job description
Senior iOS Engineer - Learning Experience at Babbel.
About the role
Babbel Labs is building the future of language learning. We are an AI-first, independent company within the Babbel group, based in Berlin. Our teams bring AI, R&D and product together to ship experiences that set a new standard for how people learn. In this role, you will partner with product and engineering to own the full lifecycle of learning experiences on iOS. You will drive the design, implementation, and continuous improvement of features that directly impact learner engagement and outcomes. You will treat the Swift package as a first-class product, responsible for its architecture, integration, and evolution across experiments and rollouts. You will leverage AI coding agents as a core part of how you design, build, test, and review code. Your work will ensure that each learning interaction is reliable, performant, and aligned with our pedagogical goals.
Key facts
What you'll do
- Take part in all product development phases: discovery, prototyping, proposing solutions, implementing, reviewing, testing, and deploying learning experiences.
- Own the engineering side of our feature workflow: shape the PRD together with product, then pick it up - write the technical spec, agree Interface Contracts with backend and partner teams, slice the backlog, and build.
- Build quick prototypes to de-risk product ideas - the learnings feed the product, even when the code does not make it to production.
- Design and evolve the public API of our Swift package with deliberate versioning and breaking-change discipline - and land it in the main app: integration points, A/B experiments, rollout.
- Collaborate closely with product managers, designers, and other cross-functional teams to define and implement features that enhance how learners progress through their learning path, exercises, and speaking practice.
- Maintain and proactively improve the technology stack, build system, and the AI-agent conventions (skills, project rules, documentation) the whole team relies on.
- Share what you learn: technical documentation for core features, and knowledge actively passed on to colleagues.
- Apply strict architectural judgment to balance technical debt against delivery speed while keeping the learning experience aligned with product goals.
- Ensure that every change is backed by deterministic, exhaustive unit tests and meaningful snapshot tests that define the UI contract.
- Operate with ownership of the end-to-end user journey, from the first interaction with the learning path to real-time speaking and conversation practice.
Requirements
- 5+ years of experience building scalable iOS applications using Swift.
- An AI-first mindset - a strong must for us. You have actively embraced AI coding tools in your own work - not just autocomplete, but directing agents through real feature work and critically reviewing what they produce - and you treat prompts, skills, and project conventions as engineering artifacts maintained like code. Deep experience with our specific agent stack isn't required - demonstrated adoption and genuine enthusiasm are.
- Strong, up to date Swift - including Swift 6 strict concurrency (actors, Sendable, isolation) and structured concurrency.
- Deep SwiftUI experience and a solid grounding in the Apple ecosystem and Human Interface Guidelines; you think in state-driven UI and know where the framework's sharp edges are.
- Strong opinions on state management and testable architecture - experience unidirectional-data-flow architecture, and willingness to go deep on ours.
- Testing as a first-class habit: deterministic, exhaustive unit tests with controlled dependencies, snapshot tests where the UI is the contract - not coverage theater - and the CI/CD discipline to keep them green.
- Experience designing module boundaries, frameworks, or SDKs that other teams consume - ideally as distributable Swift packages - and the API-stability discipline that comes with it.
- Experience designing or consuming evolving JSON APIs and collaborating with contract-first backend teams.
- An eye for good architectural decisions based on feature requirements, and knowledge of how to balance technical debt against delivery speed.
- Comfort with ambiguity and fast iteration: directions evolve as we learn, and prototypes are a tool, not a deliverable.
- Clear, concise communication, an open mindset for feedback, and enjoyment in working closely with design and product in a lean environment.
- Fluency in written and spoken English.
Nice to have
- Hands-on experience with The Composable Architecture and the Point-Free ecosystem (swift-dependencies, swift-sharing).
- Hands-on experience with agentic coding setups (e.g. Claude Code): agent skills, MCP servers, CLAUDE.md http://CLAUDE.md-style project conventions.
- Experience with Tuist or other project-as-code tooling at scale (modular workspaces, binary caching).
- Experience with Swift Testing (the modern successor to XCTest).
- Experience with real-time client features - live audio capture, streaming over WebSocket/WebRTC, low-latency interactions.
- Comfort navigating a legacy RxSwift/MVVM-C codebase - you'll help integrate our package into Babbel's main iOS app.
Practical notes
This role is full-time based in Berlin.