Overview
We are seeking a Senior iOS Engineer for a six-month contract focused on enhancing a well-known UK bank's iOS application. As part of a dedicated team, which includes a Principal iOS Engineer and another Senior Engineer, you will collaborate to build features, refactor code, and ensure high-quality performance and security in a banking environment. This position allows for a remote working arrangement with some on-site collaboration, providing an opportunity to influence the app's architecture while working with a supportive team.
Responsibilities
- Build features and refactor existing code in small, manageable steps, ensuring that unit tests protect the current functionality.
- Write unit tests, utilizing techniques such as dependency injection and mocking.
- Safeguard sensitive data through secure handling practices in storage and networking.
- Investigate and resolve defects and performance issues, including memory leaks and network performance.
- Review code in collaboration with the bank's mobile engineering team to ensure quality standards are met.
- Contribute to the architectural decisions of the app to enhance performance and maintainability.
Requirements
- Proven commercial experience with iOS development using Swift and a strong understanding of core iOS frameworks.
- Experience working within a large, established codebase, and familiarity with architectures like MVVM, MVC, or Clean Swift.
- Demonstrated unit testing skills, especially with mocking and dependency injection in asynchronous environments.
- In-depth knowledge of mobile security, including secure storage methods, secure networking practices, and certificate pinning.
- Strong problem-solving skills related to debugging memory, CPU, and network issues.
- Previous experience in banking, fintech, or regulated applications is preferred, as well as familiarity with Swift Concurrency or SwiftUI.