My GitHub Portfolio

Brennan Stehling of SmallSharpTools LLC

View the Project on GitHub brennanMKE/Portfolio

My name is Brennan Stehling and I have worked as a software engineer with various technologies for many years including web and iOS. I've built multiple apps which are available in the App Store. Below is a sample of a few of them.


My most recent work has been with StravaKit which is an Open Source project which is an API client for Strava. I created it to deepen my experience with Swift and experiment with techniques to improve code coverage with unit tests. This project currently has 99% code coverage.

iOS Apps

In early 2016 I gave a talk at the Swift Language Users Group called Conquering Your Fear of Adopting Swift. At the time Swift 2 usage was spreading with Swift 3 expected to be released at WWDC in June. Many companies have still continued working with Objective-C despite the many benefits of Swift. I addressed the benefits, risks and strategies of adopting Swift so it is not such an intimidating fact of building apps for iOS, tvOS, watchOS and OS X. More and more every day companies are making the change as are the thousands of iOS engineers who are transitioning to Swift from Objective-C.

In 2015 I moved to the Bay Area and started working for startups. One client has been Wynd Technologies which had me build Air Bubbles which is an iPhone app built in Swift to display air quality information for several countries. I planned and built the app and prepared a junior iOS engineer to take over maintenance of the app.

Air Bubbles is the first app I've released to the App Store built with Swift. This was a client project under contract with Anna Bleker who wrote up an overview of the process of creating the app. I enjoyed helping the getting the first several updates out to the App Store.

In 2014 I worked for a startup called SpotHopper which is an app used to discover bars and drinks using a backend database of places and drink menus. The app has a very custom UI with many interactions with the backend through web API calls.

The app built for Marquette is meant to be a primary app which acts as a hub for the other apps which will be created for niche purposes for the Marquette student, staff and alumni communities. The MU Tours app is used to help prospective students and new students to get to know the campus. Both of the Marquette apps are very visual to leverage the many great photos available in their archives as well as the iPhone's Retina display. Users can use the map to find places on campus and search contacts for staff so users can reach them by phone or email.

SonicMax Pro processes audio in realtime. A JVC version was featured at CES. It integrates with their car stereo, docks and headsets. You can see a feature video of the app on YouTube.

I have also worked on other iOS projects for use privately as business tools which are not in the App Store as well as other apps which are not listed here.

I value constantly learning and publish my work on GitHub as I experiment and create solutions which may be useful to others. Always learning has been especially important with iOS because it has been rapidly changing over the past few years. Below is a sample of the work I have made available as Open Source on GitHub:

  1. Permission Gateway - Module to handle permissions in iOS apps
  2. Pullup UI - A prototype for UI used in one app which is a composition of views
  3. Xcode snippets - Various snippets I use all the time which I've made easy for others to use as well
  4. Optimized Networking - Code I created to learn to use NSOperation and used in a couple of apps
  5. Photo Zoom - Sample Project like the Photos app which I use in multiple apps
  6. Interfaces - Experiments with iOS interfaces like the SideBar UI and more to come
  7. Multiple Targets - Sample Project with a list of steps to build multiple versions of apps from a single project
  8. ADN Activities Collection - Activities for sharing content to clients
  9. Bitly for iOS for shortening URLs to share via Twitter, SMS and other services.

I frequently reference other projects on GitHub and occasionally fork projects and send Pull Requests for any improvements I have made. It is a good challenge to fork an established project and get a Pull Request accepted. It has helped me guage where I am as a developer and get useful feedback from other developers.

I can be found on LinkedIn and on Twitter as @brennanSV or my company account @smallsharptools.