> Markdown version of [/jobs/ext/3342046-ios-senior-engineer](https://www.wearedevelopers.com/jobs/ext/3342046-ios-senior-engineer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # iOS Senior Engineer - **Company:** FDJ UNITED - **Location:** Madrid, Spain - **Contract:** Permanent contract - **Skills:** Application Programming Interfaces (APIs), Apple IOS, Apple Xcode, JIRA, Unit Testing, Dependency Injection, Message Queuing Telemetry Transport (MQTT), Package Development Process, Data Streaming, Management of Software Versions, WebSocket, Swiftui, Concurrency, Backend, Gitlab, Git, Xctest, Jenkins - **Published:** September 3, 2026 - **Apply:** https://es.indeed.com/viewjob?jk=100d2f15f3f7a65c ## About the Role * Solid commercial experience building production iOS apps or libraries in Swift * Strong SwiftUI skills: composition, navigation, state management, performance-aware UI * Comfortable with modular Swift Package development and multi-repo / multi-package dependency graphs * Practical experience with async/await and main-actor boundaries, able to reason about concurrency bugs * Experience writing unit tests and testing UI behavior (XCTest and/or Swift Testing) * Ability to work in a large codebase with shared components, strict linting, and CI gates * Clear communication in English and confidence collaborating across squads Nice-to-have * Experience with Factory, Resolver, or similar DI containers * Exposure to Combine and migration toward Observation / @Observable * Realtime systems experience (MQTT, WebSockets, push-driven UI) * Sportsbook, betting, trading, or other high-frequency / odds-driven product experience * Experience embedding libraries into a host app (SDK-style delivery, integration contracts, versioning) * Familiarity with analytics/tracking instrumentation, localization pipelines, or media/player SDKs * Comfort with GitLab, conventional PR reviews, and Jira-linked delivery ## Description * Integrate KSP into the Sports host app via shared contracts * Design and maintain modular SPM APIs, keeping module boundaries clean and public surfaces intentional * Implement real-time sportsbook experiences: odds/live data flows, navigation, analytics, localization, and media * Own quality end-to-end: unit tests, SwiftUI view tests, lint/format, CI feedback, and PR hygiene * Collaborate with product, design, QA, and other platform teams on high-impact sportsbook journeys Our tech stack (what you'll use day to day) * Language & platform: Swift 5.10+, SwiftUI, iOS 17+, Xcode * Architecture: Modular Swift Packages, feature-oriented modules composed through an integration layer * Dependency injection: Factory (Container-based DI, test/preview-friendly registrations) * Concurrency & reactivity: Structured concurrency (async/await), preference for modern Observation patterns * Networking & realtime: REST-style providers plus MQTT/WebSocket for live offering data * Testing: Swift Testing (preferred for new tests), ViewInspector for SwiftUI * Tooling & delivery: SwiftLint, SwiftFormat, Git hooks, Jira, GitLab, Jenkins/CI, Fastlane, * You deliver reliable sportsbook features with clean module boundaries and predictable integrations * You write testable, maintainable Swift that fits existing KSP conventions * You improve live UX quality under real conditions: odds updates, navigation, betslip flows, and streaming * You leave the codebase healthier than you found it: better tests, clearer APIs, fewer regressions, * Product mindset: you care about customer journeys, not only tickets * Pragmatism: prefer simple solutions, abstract complexity only when needed * Ownership: you follow work through build, test, review, and production feedback * Collaboration: you can partner with web / backend sportsbook teams and host-app iOS engineers ## Related Videos - [SwiftUI In Production](https://www.wearedevelopers.com/videos/134-swiftui-in-production) - [GitOps for the people](https://www.wearedevelopers.com/videos/461-gitops-for-the-people) - [How a Small Team Shrank a Microsoft Monorepo by 94%](https://www.wearedevelopers.com/videos/1236-how-a-small-team-shrank-a-microsoft-monorepo-by-94) - [From Zero to Mobile Developer in 45 Minutes With SwiftUI](https://www.wearedevelopers.com/videos/183-from-zero-to-mobile-developer-in-45-minutes-with-swiftui) - [Improving quality with Agentic AI with Rovo Dev and Xray](https://www.wearedevelopers.com/videos/2005-improving-quality-with-agentic-ai-with-rovo-dev-and-xray) - [Git for Code Reviews](https://www.wearedevelopers.com/videos/429-git-for-code-reviews) ## Related Articles - [Dev Digest 120 - Apple and peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers) - [How We Built a Worry-Free System That Runs for 10+ Years – And What We’d Do Again](https://www.wearedevelopers.com/magazine/751-how-we-built-a-worry-free-system-that-runs-for-10-years-and-what-we-d-do-again) - [Dev Digest 103 - Superb Owl Trafficking](https://www.wearedevelopers.com/magazine/388-dev-digest-103-superb-owl-trafficking) - [Cross Platform Mobile Development Frameworks to Use in 2025](https://www.wearedevelopers.com/magazine/404-cross-platform-mobile-development-frameworks-to-use-in-2025) - [Basic And Advanced Networking in Dart and Flutter](https://www.wearedevelopers.com/magazine/112-basic-and-advanced-networking-in-dart-and-flutter) - [Dev Digest 118 - not a total recall](https://www.wearedevelopers.com/magazine/452-dev-digest-118-not-a-total-recall)