Contact
- e-mail: hello@pewpewthespells.com
Technical Skills
- Writing
- Speaking (on hiatus since 2016)
- Programming Languages (ranked by proficiency)
- Objective-C
- C
- Nim
- Python
- Go
- AppleScript
- Ruby
- Groovy
- Swift
- x86 Assembly
- Javascript
- C++
- Frameworks
- Cocoa (Interfacing with Objective-C, Swift, AppleScript, Python, and Nim)
- CocoaTouch (Interfacing with Objective-C and Swift)
- CUDA (Interfacing with C)
- OpenGL (Interfacing with Objective-C, C, and C++)
- Projects
- pbPlist, an all-purpose plist library written in Python that allows reading and writing of ASCII/NeXTStep Property Lists.
- bsl-validator, a interpreter for Bungie Scripting Language (written in C)
- nslocalizer, a tool for finding missing and unused NSLocalizedStrings (written in Python)
- pyconfig, a DSL for building and managing xcconfig files easily (written in Python using pyparsing)
- xcparse, an implementation of the Xcode build system (written in Python)
- aosd, a tool for downloading packages available from opensource.apple.com (written in Python)
- SDMMobileDevice, Reverse Engineered from Apple's private framework for iOS device management and low level communication
- x86engima, World War 2 German Enigma Encryption Machine (written in x86 Assembly)
- iOS 5.x and 6.x tethered jailbreak (based on p0sixspwn)
- Build Systems
- Xcode (iOS and OS X)
- Gradle (Android)
- CMake (Multiple architecture and platform configurations)
- Make (Multiple architecture and platform configurations)
- Autotools (Multiple architecture and platform configurations)
Work Experience
- Ruby Engineer, BAMTech Media, February 2017 to Present
- Build & Release Engineering, Supporting Mobile App Development
- Maintained CI instances (Jenkins) and developed new interfaces to control build jobs
- Migration from Jenkins Job DSL to use Jenkins Blue Ocean and Pipelines
- Mac Developer, Feral Interactive, May 2011 to Present
- Oni (Homepage)
- Updated deprecated code from PPC to run on Intel platform
- Implemented new engine features with collision detection
- Updated existing graphic engine to take advantage of modern hardware
- Build Engineer, iRobot Corporation, August 2016 to December 2016
- iRobot Home App (App Store)
- Maintained CI instances (Jenkins) for the Software Applications team
- Integrated C++, Android, and iOS unit tests with internal CI service (Jenkins)
- Automated release procedures for iOS and Android applications
- iOS Developer, iRobot Corporation, April 2015 to August 2016
- Ava 500 Control App (App Store)
- Implemented new UI and features for an app to control a telepresence robot
- Maintained a build server for doing daily builds for internal SQA testing
- iRobot Home App (App Store)
- Managed build system tooling for the mobile development team
- Created on-boarding UI for setup of Braava-Jet
- Build System Engineer, CocoaPods Project, September 2014 to Present
- CocoaPods (ruby gem)
- Assisted with changes to the integration process with Xcode
- Debugging issues with third party developers
- Mac Developer, Flexibits, May 2014 to July 2014
- Fantastical 2 for OS X (Homepage)
- Extensive work with date/time programming
- Implemented communications with iCloud CalDAV service
- Prototyped implementation of geo-fencing for reminders
- iOS Developer, Chaotic Moon Studios/Marvel Studios, September 2013 to April 2014
- Marvel Unlimited (App Store)
- Rapid prototyping of client designs
- Integration of third party frameworks (audio and video media integration)
- iOS Developer, American City Business Journals, August 2012 to December 2012 (internship)
- American City Business Journals (App Store)
- Extensive UX design on ACBJ mobile app for iOS
- Creation of mobile app for iPad
- Refactor of existing mobile app code to improve performance
- iOS Developer, Survey.com, January 2012 to May of 2012 (internship)
- Survery.com (App Store)
- Refactored the UI of the iPhone application
- Implement new controls for taking surveys in the app