ServiceTitan is looking for a Senior Software Engineer, iOS Mobile.
- Architect, develop and maintain iOS native mobile applications
- Develop and maintain iOS native plugins for our cross-platform mobile applications
- Actively assist in keeping our Apache Cordova cross-platform current with new releases and patches
- Continuously partner with QA and Infrastructure engineers to automate our build and test pipeline
- Evaluate beta iOS releases to ensure compatibility with our native and cross-platform mobile applications as well as identify new native services and features we might leverage throughout our products
- Deploy beta tests and release candidates to TestFlight/App Store as well as manage rollout to customers
- Work with product managers, designers, and engineers to prototype and implement low level, device native features
- Communicate effectively with other engineers, product managers, customers, and partners.
- B.S., M.S., or Ph.D. in Computer Science or similar discipline
- 4+ years of developing native mobile applications for iOS with Swift and Objective-C including:
- Developing reusable components via custom views, frameworks, or cocoapods
- Communication with JSON services with community standard libraries
- Automated UI and Unit Testing
- Solid foundations with GCD for asynchronous and parallel programming to keep the UX responsive
- Performance profiling for proper use of disk space, memory and battery life with XCode and Instruments
- Familiarity with Reactive programming (Rx*) highly desirable
- Though you need only be familiar with the iOS platform you may rarely need to assist in the development efforts for Android components where the conceptual bridge between platforms isn’t too wide. You will be given plenty of extra time for any such work outside your primary area of expertise
- Experience with Apache Cordova is desirable but totally optional. However, your willingness to learn and work with Apache Cordova will be required.
If you're familiar with Microsoft .NET it's a big plus but also completely optional — we use C#, .NET, ASP.NET MVC, Web APIs, Microsoft SQL Server on the backend