iOS Engineer
Are you interested in serving the needs of millions of customers by building the best-in-class digital experience that helps them in financial planning, investing, and retirement solutions? Our organization comprises teams that work on a wide range of applications and platforms spanning company websites and mobile applications. We're looking for product-aware engineers who are passionate, inquisitive, and responsible individuals to help us on our mission to deliver the best omni-channel experience to our customers.
The Purpose of Your Role
The teams build and work towards the organization's digital presence. As a Mobile Software Engineer, you will help us build the omni-channel user experiences and the underlying platforms needed to support our digital presence. You'll work on building entire features, taking these from concept to deployment, as part of our autonomous, cross-functional teams. You'll have the opportunity to share ideas to improve our products as well as develop your skills, learn new technologies and languages, and continue to learn. We're looking for highly motivated individuals who work well in an iterative and fast-paced environment.
The Expertise We're Looking for
Designing, developing, and maintaining Mobile Native iOS applications in a fast-paced Scrum environment.
Optimally employ DevOps, Automated Testing and Continuous Delivery using technologies such as Jenkins and Azure DevOps.
6+ years of professional experience developing publicly available iOS apps using Swift, SwiftUI supported by RESTful web services.
Verifiable experience as a domain specialist using Swift, Cocoa Touch, UIKit, and XCode in a large enterprise environment, preferably as part of a team of iOS engineers.
Participated in the release of at least one publicly available app to Apple's App Store, participating from feature inception to launch using automated tooling like Jenkins, Artifactory, and Apple development-to-store workflows.
Experience working in a team of iOS developers participating in code reviews, pull requests, and pair programming.
Proven experience mentoring and coaching other iOS developers in a team-based organization.
Bachelor's Degree in Computer Science, Information Science, Mathematics, or equivalent.
The Skills You Bring
Hands-on experience using Swift, Cocoa Touch, UIKit, SwiftUI, and XCode in a large enterprise environment.
Desire to delight clients with the latest mobile technologies using deep knowledge of iOS design patterns including MVP, MVC, MVVM, and VIPER with a focus on Test Driven Development.
Passion for crafting amazing experiences on iOS using Apple's Human Interface Guidelines and a strong understanding of functional programming and reactive patterns.
Knowledge of the mobile landscape, architectures, trends, and emerging technologies used in building performant, resilient, and robust iOS apps.
Advanced Git skills and strong understanding of modern development principles such as trunk-based development, feature toggles, and branch by abstraction.
Excellent understanding of computer science fundamentals, data structures, and algorithms.
Excellent understanding of testing concepts and frameworks.
Strong understanding of CI/CD tools such as Jenkins, Artifactory, Fastlane, and XCode Server.
Comfortable working with Visual Design and Rapid Prototyping.
Experience with API Design & Development and Microservices Architecture is a plus.
Knowledge of HTTP-based APIs, networking, and how the internet works.
The Value You Deliver
Using business knowledge to translate the vision for divisional initiatives into business solutions by developing complex or multiple software applications and conducting studies of alternatives.
Creating and maintaining comprehensive documentation for multiple applications or subsystems.
Participating in iteration planning to maintain velocity and deliver quality each sprint.
Analyzing business requirements and system development specifications.
Participating in problem solving, troubleshooting, performance tuning, production support, and maintenance of existing applications.
Playing a key role in resolving technical roadblocks involving multiple technologies.
Ensuring code reviews, unit testing, and integration testing are completed efficiently and effectively.
Helping coordinate the delivery of technical components across internal and external technical teams.
Providing technical leadership and mentoring to junior team members.
Working towards process improvement initiatives to maximize velocity for the product team.
How Your Work Impacts the Organization
We believe that diversity in background and experience will develop an inclusive and engaging work environment for our employees. This ultimately enables us to deliver a better product for our customers.
Being technically competent is only telling half the story. We believe that delivering the best possible customer experience requires an artful blend of human ingenuity and technology. While we value smart technologists, we are fanatics about our culture that promotes autonomy and leadership at all levels.
People who are great cultural fits demonstrate curiosity to learn, are unafraid to break things, step up and take the lead, take ownership of their projects, and thrive by sharing knowledge and demonstrating our core pillars: