Skills
- ProgrammingLanguages: Swift, Bash, Python, Go, HTML/CSS, Ruby, Objective-C, JavaScript, Java
- Experience in Building: CLI Tools (in Swift, Bash, Go, Python, Objective-C, Ruby), macOS and iOS apps, automated testing (using XCTest, Bash, Go, Ruby, Java)
- Mobile Platform Tooling: xcodebuild, Xcode, Swift Package Manager, Tuist, Bazel, Fastlane, Gradle, Android Studio
- CI/CD Systems: GitHub Actions, Jenkins, Xcode Cloud, Tart + Tartelet, provisioning and management of physical and virtual machines
Open Source | github.com/hisaac
CenterMouse | github.com/hisaac/CenterMouse
A macOS utility that moves the mouse pointer to the center of your display when the computer wakes from sleep, exits the screensaver, or from a user-defined keyboard shortcut.
Tuist | My Contributions
Tuist is a tool for creating, maintaining, and interacting with Xcode projects at scale. While migrating Target's iOS project from Bazel to Tuist, I began fixing bugs and adding features to Tuist.
Bitrise | My Contributions
Bitrise is a CI/CD platform built for Mobile DevOps. Much of their tools and infrastructure are open source, and I got the chance to contribute many changes while working for the company.
Writing / Appearances
Pre-Converting .xcresult
Files for Codecov Using xcresultparser
A blog post for Codecov's technical blog explaining my methods for speeding up code coverage conversion for iOS projects using Codecov.
How to Speed Up Codecov Analysis for Xcode Projects, Revisited
About a year after my first post about converting Xcode's code coverage, I found an even faster way of conversion that also relies solely on tools included in Xcode's command line tools.
Hook Into GitHub Actions' Debug Mode
A "quick tip" post outlining how I hook into GitHub Actions' built-in debug mode to enable debug logging within the scripts run in my CI workflows.
Good, Better, Best: How Tandem Diabetes achieved iOS CI stability and speed with MacStadium
A case study I was interviewed for outlining my work migrating Tandem's build infrastructure to MacStadium's cloud-hosted Mac minis.
Work
Tandem Diabetes Care
Senior Developer Experience Engineer (January 2023 – present)
I was the first hire for Tandem's nascent Mobile Infrastructure / Developer Experience team. Initially my focus was on the build system and CI/CD infrastructure for Tandem's iOS and Android apps. Since joining, my scope has broadened to include app architecture, helping to modernize the iOS and Android teams' development practices, and recently has grown to include CI and tooling for Tandem's embedded C codebase which runs on their insulin pumps.
- Built a powerful and flexible build automation system consisting of a well-crafted set of Bash scripts and GitHub Actions workflows.
- Migrated the mobile team's built infrastructure from a fragile set of Mac minis to cloud-hosted infrastructure on MacStadium running virtualized machines used for builds.
Bitrise
Mobile DevOps Engineer (April 2022 – January 2023)
My responsibility at Bitrise was to build and maintain tools and infrastructure that mobile developers around the world rely on to build, test, and deploy their apps.
- Learned Go on the job and began contributing quickly.
- Championed improvements to Bitrise's internal tooling and infrastructure to improve developer experience and efficiency.
Target
Senior iOS Platform Engineer (April 2021 – April 2022)
I joined Target's iOS Platform team eager to learn more about platform development — the intersection of app development and DevOps. I quickly found my niche as the team's build-ops specialist, managing our build infrastructure, tools, and automation.
- Spearheaded and led a large migration of our iOS build system from Bazel to Tuist.
- Took over management of the team's languishing build infrastructure to improve its speed and reliability.
- Advocated for transparency and documentation by creating a team wiki, which became an invaluable resource.
Jamf Software
iOS and macOS Developer (March 2019 – April 2021)
I wore a few hats at Jamf, first working on a user-facing iOS and macOS app, then working on a low level macOS application with a command line interface — the backbone of Jamf's Mac management platform, Jamf Pro.
- Greatly improved the VoiceOver compatibility of Self Service, Jamf's primary user-facing macOS and iOS app.
- Helped maintain and improve multiple test systems used by my team and others within the company.
Q3 Contracting
iOS Developer (July 2018 – March 2019)
C.H. Robinson
iOS Developer (July 2017 – July 2018)
BBDO Minneapolis
IT Support Technician (August 2014 – April 2016)
Apple Inc.
Quality Assurance Engineer (August 2013 – November 2013)
Genius, Apple Store Southdale (August 2012 – August 2014)
Education
Prime Digital Academy
Full Stack Software Engineering Certificate (September 2016 – January 2017)
Prime is an intensive, 18-week web development boot camp, focused on both technical and business skills. Here I learned HTML, CSS, and full-stack JavaScript development, as well as honed my public speaking, project management, and group work skills.
Institute of Production and Recording
AAS Degree in Audio Production and Engineering (2008–2010)
University of North Dakota
General Education Requirements (2005–2008)
References
For the privacy of my references, I don't include their contact information here. Please email me at hello@hisaac.net to request references.