Drew Sen, Developer in Vancouver, BC, Canada
Drew is available for hire
Hire Drew

Drew Sen

Verified Expert  in Engineering

iOS Developer

Location
Vancouver, BC, Canada
Toptal Member Since
June 23, 2023

Drew is a seasoned iOS developer with 10+ years of experience crafting exceptional mobile experiences. Deeply familiar with Apple's ecosystem, he excels at creating high-performance, polished iOS apps. Drew's passion for innovation and staying at tech's forefront make him a sought-after expert. His ability to transform ideas into seamless user experiences ensures an unparalleled experience. Whether building apps or enhancing iOS ecosystems, Drew brings his clients' vision to life.

Portfolio

Bally
iOS, Model View ViewModel (MVVM), Swift, SwiftUI, Agile, UIKit, Xcode, Git...
Glance Networks
Swift, Objective-C, iOS, Object-oriented Programming (OOP), UIKit...
CounterPath
SDKs, VoIP, iOS, Objective-C, Swift, MacOS, SIP, XMPP, iOS Frameworks...

Experience

Availability

Full-time

Preferred Environment

Swift, Xcode, UIKit, Git, Model View ViewModel (MVVM), iOS, Agile, Design Patterns, SwiftUI, iOS Frameworks, Lottie, Firebase

The most amazing...

...app I've contributed to is the iOS version of Bria, which reached the top 100 in its category on the App Store and was featured in "Apps We Love."

Work Experience

Senior iOS Developer

2020 - 2023
Bally
  • Implemented smart onboarding, next-generation widgets, and enhanced user experience for the latest versions of iOS, using mainly SwiftUI and Combine for this purpose.
  • Used SwiftUI to create layouts with vertical, horizontal, and overlay stack views with VStack, HStack, and ZStack, respectively, and used async/await, actors, and tasks for asynchronous methods.
  • Led the hiring and mentoring of a team of 10-12 mobile developers, overseeing technical projects, one-on-one meetings, and code reviews.
  • Collaborated with product managers and designers to develop the latest features, serving as project stakeholders' main technical point of contact.
Technologies: iOS, Model View ViewModel (MVVM), Swift, SwiftUI, Agile, UIKit, Xcode, Git, Software Engineering, Design Patterns, iOS Frameworks, Lottie, Lottie-iOS, Google Maps SDK, Firebase, Core Data, Core ML, Custom Keyboards, CocoaPods, Android, iPad

Senior iOS Developer

2016 - 2019
Glance Networks
  • Rearchitected the app's transactional data model, Core Data layer, and REST interface, increasing app performance and reducing crashes by 98%.
  • Implemented a test-driven development methodology and established a continuous integration system using Nimble, Quick, Git, Fastlane, and Bitrise.
  • Designed a system for uploading and downloading transaction receipt images while the application runs in the background using PromiseKIT and GCD.
  • Updated legacy Objective-C code to Swift and used bridging headers to connect Objective-C and Swift libraries.
Technologies: Swift, Objective-C, iOS, Object-oriented Programming (OOP), UIKit, iOS Frameworks, Lottie, Lottie-iOS, Google Maps SDK, Firebase, Core Data, Core ML, Custom Keyboards, CocoaPods, Android, Networks, Metal, iPad

iOS SDK Developer

2012 - 2016
CounterPath
  • Acted as a counterparty in the evaluation of technical solutions delivered by external providers working remotely and provided technical debt assessment on the existing iOS codebase.
  • Reviewed and provided sign-off on architecture proposals for the VoIP company Dialpad and Rogers, focusing on VoIP and security aspects of the SDK and corresponding iOS apps.
  • Used the following major protocols and architectures: SIP, XMPP, NAT, TURN, STUN, RTP, TLS, HTTP, and HTTPS, implemented in sample iOS apps.
Technologies: SDKs, VoIP, iOS, Objective-C, Swift, MacOS, SIP, XMPP, iOS Frameworks, Lottie-iOS, Google Maps SDK, Firebase, Core Data, Core ML, Custom Keyboards, CocoaPods, Android, Networks, Metal, iPad

Sports Betting App for iOS

https://apps.apple.com/ca/app/bally-bet-sportsbook-casino/id1633504950
An iOS application designed for sports enthusiasts to engage in online sports betting. I played a crucial role in building the front-end user interface, implementing persistence mechanisms, and establishing seamless back-end connectivity through the network layer.

I ensured an intuitive and visually appealing user interface that enhanced the overall user experience. I integrated various external tools and APIs to provide real-time updates, live scores, and dynamic odds for a wide range of sports events.

I implemented robust data storage and retrieval mechanisms to securely manage user preferences, transaction history, and account information. This gave users a seamless and personalized betting experience across multiple devices.

Additionally, I established a reliable network layer that facilitated smooth communication between the app and the back-end servers. This involved implementing RESTful APIs and handling network requests efficiently, ensuring fast and accurate data retrieval.

Overall, my contributions to the Bally Bet sports betting app have helped create a polished and feature-rich platform that enables users to enjoy the excitement of sports betting while ensuring a smooth and seamless user experience.

Languages

Swift, Objective-C

Frameworks

UIKit, iOS Frameworks, Core Data, Core ML, Metal, SwiftUI, ReactiveSwift

Libraries/APIs

Google Maps SDK, CocoaPods, Lottie-iOS

Platforms

iOS, Firebase, Android, MacOS

Other

iPad, Lottie, Custom Keyboards, Networks, Software Engineering, Artificial Intelligence (AI), Computer Graphics, SDKs, VoIP, SIP, XMPP

Tools

Xcode, Git

Paradigms

Model View ViewModel (MVVM), Agile, Design Patterns, Object-oriented Programming (OOP)

2010 - 2012

Master's Degree in Computer Science

The University of British Columbia - Vancouver, BC, Canada

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring