102471 – iOS Engineer B.
Summary
We are seeking a Senior iOS Engineer to design, develop, and maintain large-scale, consumer-facing iOS applications using Swift. This role is central to delivering polished, high-performance mobile experiences and shaping the user-facing side of our product.
You will work across the full software development life cycle in an Agile environment, collaborating with product, design, and backend teams to build maintainable, efficient codebases that follow Apple’s Human Interface Guidelines and best practices for memory management and local data persistence.
Responsibilities
- Design and implement new features and user interfaces that follow iOS UI design principles and deliver intuitive user experiences.
- Write clean, efficient, and well-documented Swift code following best practices and coding standards.
- Conduct thorough code reviews to maintain high code quality and share knowledge across the team.
- Collaborate with backend engineers to design and consume secure, scalable, and performant APIs.
- Debug and resolve complex software issues, including memory leaks and performance bottlenecks.
- Refactor existing code to improve maintainability, readability, and performance.
- Enhance automated testing coverage and improve testing processes to ensure product reliability.
- Work closely with product managers and designers to translate requirements into technical specifications and deliverables.
- Mentor junior engineers and foster a collaborative, results-driven team environment.
- Stay up-to-date with iOS development trends, tools, and technologies to continuously improve the app and development processes.
Requirements
- 5+ years of experience developing large-scale, consumer-facing iOS applications.
- Expert-level proficiency in Swift, including advanced features such as generics, protocols, closures, and concurrency.
- Deep understanding of the iOS ecosystem, app lifecycle, and deployment processes.
- Strong foundation in object-oriented programming principles and ability to design modular, reusable architectures.
- Familiarity with the full software development life cycle and experience working in Agile environments.
- Proficiency in designing and implementing UIs that follow Apple’s Human Interface Guidelines using UIKit, SwiftUI, Auto Layout, and adaptive layouts.
- In-depth knowledge of iOS memory management (ARC, strong/weak references) and strategies to avoid retain cycles and memory leaks.
- Proficiency with CoreData for local data persistence, including data modeling, fetching, caching, and migration strategies.
- Strong debugging skills and experience diagnosing runtime issues and performance problems.
- Independent, accountable, proactive communicator with a results-oriented mindset and a collaborative team approach.
Nice to Have
- Experience profiling and optimizing iOS applications to improve startup time, responsiveness, and battery consumption.
- Ability to collaborate on API design (RESTful or GraphQL) to ensure efficient, secure mobile consumption.
- Familiarity with Xcode debugger, LLDB, and other diagnostic tools for deep debugging.
