iOS Engineer
Location: West Sussex- 3 days on site
Contract: Initial 6 months
Rate: £300-£345 per day
IR35: Inside IR35
The Role
As an iOS Engineer, you'll be responsible for developing and improving high-quality mobile applications, working across the full development life cycle.
- Building, developing and improving iOS applications
- Designing solutions for open-ended and technically challenging problems
- Writing clean, maintainable and well-tested code
- Finding, diagnosing and fixing bugs
- Performance analysis and optimisation
- Working with modern iOS development methodologies
- Working with existing Objective-C code and supporting the gradual reduction of Legacy code
- Developing unit and integration tests
- Working with Continuous Integration and modern development practices
- Collaborating closely with designers, product owners, QA and other engineers
- Integrating applications with Back End services and REST APIs
- Working within a globally distributed engineering environment
- Contributing ideas and helping the team continuously improve its development practices
Technical Skills & Experience
We're looking for strong commercial experience in iOS development, with knowledge of:
- Swift
- iOS application development
- UIKit
- MVVM
- REST APIs
- Objective-C, particularly within Legacy codebases
- XCTest/XCUITest
- GitHub Actions
- CircleCI
- Tuist
- xcodebuild
- Continuous Integration patterns
- Functional coding patterns
- Performance analysis and optimisation
- Unit and integration testing
You may also encounter or have experience with:
- Danger
- RAML API documentation
- µFeatures architecture
- Open-source technologies and contributions
- Bespoke Back End services
About You: You'll be someone who:
- Has strong commercial experience building iOS applications
- Is confident working with modern iOS technologies and development practices
- Takes pride in writing clean, high-quality code
- Cares about user experience and building intuitive applications
- Enjoys solving complex problems and working through ambiguity
- Is comfortable diving into technical challenges and rapidly iterating on ideas
- Can work independently and manage your own workload effectively
- Is confident sharing ideas and contributing to technical discussions
- Works well within a collaborative, globally distributed team
- Can balance modern development approaches with working within established or Legacy environments
A Bachelor's degree in Computer Science or a related subject, or equivalent commercial experience, would be beneficial.