Responsibilities
• Contribute to the mobile application strategy
• Design and implement features for a suite of Mobile Applications
• Learn and apply new technologies, best design practices and usability patterns
• Contribute to end-to-end system architecture, working with back-end engineers
• Collaborate with product managers and other technical teams to create optimized and delightful user experiences.
• Maintain source code quality, provide code review feedback, and help create team coding principles.
• Mentor, train, and provide guidance to other team members and lead by example.
Basic Qualifications:
• Bachelor's degree in Computer Science (or equivalent experience)
• 7 years of software development experience with Apple platforms
• Expert knowledge of Swift
• Broad experience with the iOS SDK, particularly UIKit, SwiftUI, and Foundation
• Solid experience with asynchronous programming using structured concurrency and GCD
• Understanding of reactive paradigms, experience using Combine and/or RxSwift is a plus
• Solid understanding of the MVVM architectural pattern
• Experience with consuming and designing RESTful API type web services. Experience with realtime streaming frameworks like Socket.io, Ably, or LightStreamer is a huge plus.
• Strong knowledge of iOS UI design principles, patterns, and best practices. iPadOS is a plus. The ability to cleanly integrate with both in one codebase is ideal.
• Strong fundamentals with XCTest, and hopefully you've heard of SwiftTest. You don't aim for 100% coverage, but instead focus on what really matters.
• Excellent debugging and optimization skills, including use of Instruments for identifying issues as they arise, and utilizing performance testing to ensure they don't happend in the first place.