David Gadd

Software Development Manager Ios & Senior Ios Developer @PayByPhone

Vancouver, BC, CA
MOBILE NUMBERS
+91 *********19

Signup · Get unlimited contacts

WORK HISTORY

Feb 2017 — Present

Software Development Manager Ios & Senior Ios Developer @PayByPhone

View department →

CA

I am the Software Development Manager for the iOS team at PayByPhone, where I lead a team of 7 developers and 2 QA. I devote 75% of my time to managing the team and 25% of my time to coding.I first prototyped a native iOS app for PayByPhone as a skunkworks project in 2012 which led to building a full native app, released in 2016 with a small team. The app included dynamic labelling for each city, ApplePay, and AppleWatch support. In early 2017 I became the Software Development Manager for the iOS team. As a manager I have developed a leadership philosophy focused on warmth, regarding every member of the team as highly skilled and competent. I foster team member contributions through bi-weekly check-ins, I facilitate daily stand-ups and weekly grooming, but mostly, just get out of the way. I continue to spend 25% of my time coding, remaining engaged in the app architecture, the app feature set, and our migration to SwiftUI.Our team works with Xcode, git, Stash/Bitbucket, TeamCity, fastlane, and TestFlight to develop, test, pull request, merge and run continuous integration for multiple release streams in git. The team is typically developing for the next 3 upcoming releases, all while working within the company\'s 2 week sprint cadence in JIRA. The team meets weekly to discuss architecture, process, and refactoring improvements. In the last two years the team designed a new client framework architecture: Commands through a coordinator to a chain of protocols (handlers, services, gateways, ports, repositories), returning an async response via PromiseKit as Codables to CoreData to view models. The devs have created more than 5800 unit tests for this client framework, while QA has built an automation suite of UITests. Pull requests require code coverage as a condition of merge.I meet regularly with Product for features, with platform teams to review API contracts, with front-end managers to define user stories, and with the iOS team to groom tickets.

SKILLS

Test Driven DevelopmentApisContinuous IntegrationWeb ApplicationsC#.netAgile MethodologiesMobile ApplicationsWcfWeb ServicesIos DevelopmentAndroidNhibernateSoaMicrosoft Sql ServerGitXmlRestXsltScrumAsp.netTddVisual StudioAjaxAndroid DevelopmentNunitWhiteboardingAjax FrameworksIosAsp.net Mvc

ABOUT DAVID GADD

I am the Software Development Manager for the iOS team at PayByPhone where I devote 75% of my time to managing the team and coordinating with other teams to deliver new features, and the other 25% of my time I spend coding. PayByPhone is one of the fastest growing mobile payment companies in the world, processing over 102 million transactions totalling more than $500 million USD in payments annually. Through the company\'s mobile web, smartphone and smartwatch applications, PayByPhone helps millions of consumers easily and securely pay for parking without the hassles of waiting in line, having to carry change or risking costly fines.My key expertise areas: Leading an iOS development team: 7 developers and 2 QA, daily standups, weekly grooming, 2-week sprint cycle, multiple release streams in git. Regular check-ins with team, weekly architecture meetings to improve architecture and process. Coordinating across teams: Regular meetings with platform teams to review upcoming API contracts, with Designers to review new designs and U/X flow, with front-end teams to coordinate cross-team epics and user story tickets. iOS framework development: All app logic contained in client framework with extensive code coverage of more than 5800 unit tests. The structure of the framework is a chain of protocol dependencies, from Commands to handlers to services. Services chain to gateways protocols for networking (URLSession) and JSON response (Codables). Services chain to repository protocols for persistence (CoreData, NSUserDefaults and iOS keychain). iOS app development: Currently migrating from storyboards to SwiftUI. SwiftUI views populated by @ObservableObjects containing @Published view models, which are updated via async responses from the framework. Apple watch and Siri development: These two additional clients share the same framework code for app logic, and are populated from the same view models. Test-Driven Development, command-line git, Stash/Bitbucket, continuous integration with Team City uploading to Test Flight.

This profile is compiled from publicly available professional sources. Unifers is not affiliated with or endorsed by LinkedIn. Request removal of this profile.

David Gadd — Software Development Manager Ios & Senior Ios Developer at PayByPhone in Vancouver, BC, CA | Unifers