iOS Software Development – Global Network
Full Job Description
This role is an iOS software developer with solid software development and user experience design skills. The iOS Software Developer will be working with an on-site client team and will be expected to mentor and share their skills and knowledge across the existing client developers.
• Extensive experience developing native applications for iOS in Swift and / or Objective-C
• Version Control using GIT
• A test-first development mentality using TDD and XCTest
• Able to provide examples of clean, self-documenting, readable code
• Demonstrable understanding of S.O.L.I.D. principles and Object-Oriented patterns
• Integrating third party open source software using CocoaPods, Carthage or other
• Continuous Delivery with FastLane or TestFlight together with CI systems e.g.TeamCity or Xcode Server
• Experience of Agile software delivery methodology
• Excellent communication and mentoring skills, good verbal and written communication;
The following are not required but an advantage
• 2+ Years experience of development with Swift
• Knowledge of Clean Architecture patterns such as MVVM or VIPER (above and beyond MVC).
• Experience of GCD and asynchronous multicore programming an advantage
• Framework development and distribution via CocoaPods, Carthage or Swift Package Manager
• Providing technical iOS leadership within their team
• Consistently delivering to challenging business objectives and adhere to Service Level Agreements with commercial implications for success and failure
• Demonstrating strong problem-solving skills
• Utilising their XP knowledge; TDD, Continuous Integration
• Working predominantly using pair programming, imparting skills and knowledge in a small team
• Introducing Open Source products/ tools as appropriate to optimize the delivery time scale and quality of the software product