Areas of Expertise
I have seven years of professional iOS/macOS/Swift experience:
- server side: Kitura, Vapor
- client side: UIKit (iOS), AppKit (macOS), SwiftUI
I've worked for large telco companies on their iOS app, macOS creative coding apps for art installations, and built startup products using native Apple technologies.
I have worked with Swift developers in Wisconsin and Utah, and overseas in Columbia and India, with a wide variety of skill levels and communication styles.
What does a typical project look like for me?
A client typically comes to me with a concrete problem that they need a solution for, which we quickly solve.
But after that initial victory, it becomes clear that many of these projects lack technical leadership, architecture, and an overall plan to accomplish their goal in the market.
That's where my leadership and creativity come in:
- I recommend low-hanging fruit to improve the product using the existing state-of-the-art packages
- I audit the current architechture, and draft a plan to build only the infrastructure that we need to move forward, while plugging existing holes
- I install processes and project management to track our tech progress and provide visibilty for the stake holders
Case Study: Solar Panel Canvassing App
This was an iOS front-end with an ASP.NET Web API back-end. It allowed companies to set up door-knocking campaigns through an admin site, and then the employees could install the app on their phones and go out and knock doors.
The main feature of the app was an MKMapView with many overlays, features, and door knocking records, all of which had performance implications.
What unique problems did this client face?
- The app was built by overseas contractors, with varying communication ability and skill level
- The MapView had a variety of performance issues, caused by many records and state updates happening in a non-optimal way
- Some of the features were not offered by the Apple Maps API, and needed research and implementation with advanced mathematics
- Some of the features required a huge dataset of a half billion records, and extreme attendence to detail and performance
What did I do to solve these problems?
- Initially, I parachuted into this project to fix a performance issue before a major conference happening in a couple days
- Because of my debugging skill, I stayed on the project to cure a variety performance issues, culminating in a visual reporting feature for the map that could handle tens of thousands of records
- I created my own geometry calculations to add features to our app that were not yet offered by Apple Maps
- Using a Python toolset usually used for Machine Learning, I processed half a billion records, migrated them to SQL Server, and developed fast queries using the native capabilities of the database
What outcomes are you looking for?
I have worked with developers all over the world, solving the craziest moonshot problems ever dreamed of--huge datasets, advanced mathematics, seemlingly hopeless codebases: if a problem can possibly be solved in this world, chances are I can do it.
Beyond pure skill, I have a unique mix of wide-ranging knowledge and gentleness--often times, both of these are needed during the journey of your startup.