iOS Engineer, Apple
Jul, 2022 - Present
On the Wallet and Apple Pay team, I develop and maintain our digital identity services and APIs, including Verify with Wallet and ID Verifier.
Seasoned iOS Engineer with over a decade of experience in developing innovative applications for high-profile companies such as Apple, Twitter, Microsoft, and Facebook. Highly skilled in both Swift and Objective-C, with a strong background in leading critical projects, enhancing user experiences, and mentoring junior engineers. Dedicated to continuous learning and community contributions through open-source projects, conference talks, and mentorship.
iOS Engineer, Apple
Jul, 2022 - Present
On the Wallet and Apple Pay team, I develop and maintain our digital identity services and APIs, including Verify with Wallet and ID Verifier.
Senior Software Engineer, Twitter
Aug, 2021 - Jul, 202211 months
Contributed towards launch of the Super Follows program on iOS, allowing creators to earn money from their largest fans. Worked on modularization and code cleanup efforts. Shipped a health-related feature and collaborated with the Spaces team on Super Follows Spaces.
Software Engineer 2, Microsoft
Dec, 2016 - Aug, 20214 years 8 months
[Microsoft Outlook]
I worked on calendar and time management features (such as appointment scheduling). I also led calendar and mail notifications work, solving high-stakes problems with duplicate notifications and payload decryption issues. I was a mentor to new teammates and a summer intern who later received and accepted a return offer.
[Microsoft To Do]
I joined post-acquisition Wunderlist team and worked on iOS/macOS clients for the upcoming product replacement. I built features like file attachments and list sharing to help reach parity with Wunderlist. I convinced leadership to ship our existing, native AppKit-powered macOS app over a potential web wrapper to meet Microsoft's strict accessibility standards. Highly proficient in integrating with Apple's assistive technology such as VoiceOver on both iOS and macOS. I mentored two iOS summer interns. (Microsoft Berlin did not have an official engineering internship program.)
Software Engineer, Shutterstock
Nov, 2015 - Dec, 20161 year 1 month
Worked on the contributor (seller) and consumer (buyer) apps for stock photography as a part of a distributed team between the New York and Berlin timezones. Both apps leveraged Core Data for persistence and in-memory caching. I added support for multi-process data flows (e.g. using group containers and user default suites) which enabled me to write a Siri (Intents) extension to search for stock photography, as well as a Share extension for uploading high-resolution imagery asynchronously to be sold on-platform.
Software Engineer, Facebook
Jan, 2014 - Sep, 20151 year 8 months
Worked on Rooms mobile codebase and Parse SaaS backend scripts. Focused on building novel interactions, animations and interfaces using Origami Studio and an internal framework that became the open-sourced POP library. Later I became a core team member of React Native, contributing to the framework's open-source readiness. I wrote iOS Native Module registration, which allows JS code to call into native Objective-C/Swift code through the RN bridge via RCT_EXPORT_MODULE.
Lead Mobile Engineer, Branch
Aug, 2013 - Jan, 20145 months
Wrote the mobile iOS client for Potluck, a link-sharing social network enabling friends to discuss online content. Used the MVC design pattern to build a practical, simple yet beautiful app. Wrote a customizable design system that allowed designers to tweak values both in code and in storyboard Ul files in real-time.
hackNY Internship, Foursquare
May, 2013 - Aug, 20133 months
My summer project involved updating the iOS client app to incorporate new UI design patterns from iOS 7. I quickly learned new APls and worked closely with the design team to polish the app efficiently within constraints of available resourcing.
Chief Panda, Pandamonia
Dec, 2009 - Present
Pandamonia is a creative outlet for me to publish apps for Apple platforms. One such app is Backgammon with Buddies, a beautiful and accessible, multiplayer backgammon game.
JavaPay (formerly PebbleBucks)
Dec, 2015 - Dec, 20151 day
Formerly PebbleBucks, JavaPay provided a native Starbucks payment experience on the Pebble smartwatch platform. It had the ability to fetch card details for Starbucks users from their online accounts; this functionality was removed at their request. Written in C and JavaScript.
Dec, 2016 - Dec, 20161 day
Built on top of Apple's private Sharing framework, TrollDropKit and the related TrollDropPlayground projects created a fun, abeit undocumented, way to share the joy of the troll-face meme with nearby AirDrop participants. (Note: Apple later patched sharingd to allow only entitled processes to initiate sharing operations.)
Backgammon with Buddies (Pandamonia)
Dec, 2019 - Present
UIKit
AppKit
SwiftUI
CoreGraphics
CoreAnimation
CoreLocation
MapKit
CoreData
sqlite
XCTest
XCUITest
RxSwift
RxCocoa
JSON
Protocol Buffers
MessagePack
CocoaPods
Carthage
SwiftPM
Bash
Ruby
Python
Git
Mercurial (Hg)
Jira
GitHub
Computer Science, B.Sc., Columbia University
Jan, 2012 - Jan, 2013
hackNY Fellowship , hackNY
Awarded on: Dec 31, 2013
This program connects university students and new graduates with NYC-based startups. It provides mentorship, networking opportunities, and hands-on experience in the tech industry, aiming to foster the next generation of tech innovators.
AddressBook.swift , Swift London, London, UK
Published on: Dec 31, 2014
Spoke about AddressBook.framework in Swift when, at the time, only a C-level API was available.
The Other WatchKit , NSLondon, London, UK
Published on: Dec 31, 2014
Discussed the Pebble SDK and watch programming topics before Apple Watch and associated SDK were available.
Death by Indecision , Swift Summit, London, UK
Published on: Dec 31, 2015
Highlighted how indecision can hinder side projects, emphasizing the need to focus on goals, make decisive choices, and maintain public accountability to avoid perfectionism and rewrites.
Accessibility , App Builders, Zurich, Switzerland
Published on: Dec 31, 2016
General overview of Apple platform accessibility features and why it matters that developers adopt them in their apps.
Cross-Platform SpriteKit , Mobile Era, Oslo, Norway
Published on: Dec 31, 2016
Overview of various features of the SpriteKit framework and how developers can leverage them cross-platform across Apple's device line-up.
Disassembly for Fun and Profit , NSSpain, Logroño, Spain
Published on: Dec 31, 2018
Explained disassembly and how developers can see implementation details and hidden functionality. Led a related workshop going in-depth into the private Sharing framework.
Advanced Collection Views with Custom Layouts, MobOS, Cluj-Napoca, Romania
Published on: Dec 31, 2018
Taught a workshop on how collection view layouts work under-the-hood and how to write a custom layout to express a unique design.
iOS: 10 Years in Review , App Builders, Lugano, Switzerland
Published on: Dec 31, 2018
Celebrating the 10th anniversary of the iOS SDK, explored the history of iPhone and its SDK through some key features and innovations that contributed to the evolution of software development as we know it.
Siri and SiriKit: an Intents Topic , Swift Alps, Crans-Montana, Switzerland
Published on: Dec 31, 2018
Workshop covering SiriKit's component parts, the Intents and IntentsUl frameworks, as well the two relevant app extension types. Worked with attendees throughout the day on integrating Siri support into their own projects.
Entwicklung eines barrierefreien Spiels , Macoun, Frankfurt am Main, Germany
Published on: Dec 31, 2019
[English]
My first-ever talk in German about developing an accessible game. Case study was my app, Backgammon with Buddies.
[Deutsch]
Ich habe einen Vortrag auf Deutsch (zum ersten Mal) über die Entwicklung eines von mir gemachten barrierefreien Spiels gehalten.