Sr. iOS Developer
Location: Remote – All Location
Schedule: Mon-Fri, 8am-5pm
Start Date: ASAP
Full time position: Yes
Position to fill: 1
Possibility to extend or convert: Yes / Yes
Contract length: 6 months with option to extend for 1 year
• Loves exploring new and innovative technologies, and has dabbled with things like Combine and Swift UI (iOS)
• Believes that pixel-perfect UI implementation is fundamental to delivering the “wow factor” to customers
• Thrives in a fast-paced environment and approaches it with a “startup attitude”, where we move and adapt to changes quickly
• Understands and exemplifies the value of writing clean and highly testable code
• Familiar with package distribution systems like Cocoapods / SPM (iOS)
iOS The Payments team has a mission to deliver brand new payment processing capabilities to our users through the use of mobile technologies, allowing everyday entrepreneurs to elegantly sell in-person.
Responsibilities
• Contribute to our mobile application(s) using Swift to deliver a compelling user experience
• Participate in planning, architectural discussions, implementation, and maintenance of the Payments codebase and application integrations
• Be accountable for code quality by following established patterns and writing high quality and comprehensive tests
• Work collaboratively on a distributed team
• Perform code reviews to suggest, encourage, and support coding best practices
Requirements
• You have at least 5 years of experience using Swift to develop and deliver production applications for iOS
• You are an expert with using MVVM to create compelling user experiences
• You are an expert with UIKit including using Auto-Layout
• You have experience with Reactive Programming using Combine and/or RxSwift
• You have experience building interface components and experiences using SwiftUI and understand its limitations
• You believe in writing high quality code with a focus on testability by:
• Adhering to the SOLID principles
• Testing all possible outcomes
• Writing maintainable and understandable code
• Performing small refactors as you go to clean up technical debt while delivering on business-critical initiatives
• You have experience working with BLE / Bluetooth peripherals within a mobile applicatio