Role overview
Help evolve a widely used iOS trading application through a major redesign, architectural improvements, and new product features. The role combines platform-level engineering with hands‑on development of user‑facing capabilities, including adaptive interfaces for different screen sizes and device families.
Responsibilities
- Shape application architecture and technical direction in a modular, multi‑module codebase.
- Build and improve iOS features, including programmatic interfaces and adaptive layouts.
- Integrate REST APIs and persistent WebSocket or other socket connections.
- Work with Core Data, concurrency, and asynchronous operations to support performance and stability.
- Refactor legacy code while preserving existing behavior, and investigate bugs and performance issues.
- Maintain unit and UI test coverage and collaborate with QA, design, product, and engineering colleagues.
Requirements
- Strong Swift skills and practical knowledge of the iOS SDK, including UIKit, Core Data, and Core Animation.
- Experience with Auto Layout, Interface Builder, REST APIs, JSON, and persistent socket connections.
- Background maintaining and improving existing applications, and writing unit and UI tests; XCTest and Quick/Nimble experience is relevant.
- Knowledge of object‑oriented design, iOS architecture patterns such as MVC, MVVM, or VIPER, and modular projects.
- Practical RxSwift experience, plus an understanding of multithreading and asynchronous iOS programming.
- Experience with third‑party dependencies; fluent Russian and at least B1 English.
Nice to have
- Experience with fintech, trading, or other high‑load products with large user bases.
- Basic C++ knowledge or experience connecting Swift code with C++.
Benefits and work setup
- Full‑time remote work under a service‑provider contract, with compensation in euros and 20 paid days off annually.
- Corporate access to AI tools and a rewards marketplace that includes products and language courses.
- Opportunity to contribute ideas and influence architecture and technical direction. The team uses two‑week Scrum sprints and AI tools in development, reviews, debugging, and problem‑solving.