Job Summary
We are seeking a Senior iOS Software Developer to design, develop, test, and support native mobile applications. This role involves preparing technical specifications, developing mobile solutions, performing unit and automated UI testing, and supporting production mobile systems. The developer will optimize application designs to deliver compelling user experiences across phones and tablets, troubleshoot technical issues, maintain development standards, and collaborate with architects, stakeholders, and junior developers to deliver high-quality mobile applications.
Key Responsibilities
• Prepare specifications, design, develop, and support mobile applications while maintaining documentation in accordance with mobile development best practices.
• Assess and optimize application designs through reviews, evaluation tools, and analysis to ensure appropriate user experiences across phones and tablets.
• Create and execute unit tests across a range of mobile devices.
• Build native iOS applications, support production mobile systems, and troubleshoot and resolve technical issues.
• Prepare documentation for new development work and maintain established development standards.
• Develop compelling user experiences that meet the needs of mobile users.
• Integrate mobile applications with REST APIs.
• Participate in code reviews and mentor junior developers.
• Support CI/CD processes and troubleshoot issues that arise during development and deployment.
• Apply iterative development methodologies, including Test-Driven Development (TDD) and Behavior-Driven Development (BDD).
• Collaborate with architects and stakeholders to develop appropriate technical solutions.
• Debug and resolve application memory and performance issues.
• Implement native accessibility features, including VoiceOver and Dynamic Type.
Required Qualifications
• 6+ years of native iOS development experience.
• Expert-level working knowledge of Swift.
• Experience with UIKit, Combine, and SwiftUI.
• Experience writing unit tests and automated UI tests using the XCTest framework.
• Experience integrating applications with REST APIs.
• Experience working with CI/CD processes and debugging related issues.
• Experience performing code reviews and mentoring junior developers.
• Experience with iterative development methodologies, including TDD and BDD.
• Strong interpersonal, negotiation, facilitation, analytical, problem-solving, influencing, prioritization, decision-making, and conflict-resolution skills.
• Excellent written and verbal communication skills.
Preferred Qualifications
• Experience with reactive architecture.
• Experience building native features as modules.
• Understanding of SOLID design principles.
• Experience collaborating with architects and stakeholders to develop appropriate solutions.
• Experience debugging memory and performance issues.
• Experience with native accessibility features, including VoiceOver and Dynamic Type.
• Enterprise application development experience.
• Experience working with design systems.