- Freelance Software EngineerTulsaIO (via Toptal)2017 - PRESENT
Technologies: React Native, Node, PostgresSQL, Twilio, Dwolla, Auth0, Stripe
- Built a React Native mobile video chat application.
- Developed Auth0-based password-less authentication.
- Set up a Node.js API server.
- Integrated with Stripe, Dwolla, Twiliio, and Auth0.
- Owner/Software EngineerMoksaMedia2001 - PRESENT
Technologies: Objective-C, Cocoa, Swift, Java, PHP, MySQL, MongoDB, React, Redux, Node.js
- Developed Retreat Minder, a React/Node app that will assist in managing, planning, and finding contemplative retreats.
- Created Call2Power: a ReactNative web application that uses location services and Google Civics API to help people contact their elected representatives.
- Wrote StoryWriter, a custom word processing application that has an intuitive, tree-based project layout similar to a programming IDE, while writing my first book. I have written two books with it.
- Built MixMaster, a Mac/OS X utility designed to be used with Native Instrument’s Traktor that uses a custom algorithm to sort songs by key and BPM.
- Freelance Mobile DeveloperColorado University (via Toptal)2017 - 2017
Technologies: React Native
- Building a React Native mobile application that retrieved data from Tableau data servers and presented visualizations.
- Freelance Software EngineerFirstImage (via Toptal)2016 - 2017
Technologies: Laravel, WordPress, PHP, InfusionSoft, Stripe, Wishlist Member
- Rewrote and maintained a Laravel PHP back-end with heavy custom integration with WordPress, Stripe, Memberium, InfusonSoft, and PayPal.
- Freelance Software EngineerTraveltar (via Toptal)2016 - 2017
Technologies: iOS, Swift, Location Services
- Built an iOS/Swift location aware mobile app.
- Senior PHP DeveloperSound Web Solutions2012 - 2017
Technologies: PHP, WordPress, Amazon AWS
- Migrated and maintained a website using Docker, Node, and WordPress Headless.
- Debugged production PHP systems as needed.
- Created WordPress plugins to customize GravityForms + PayPal checkout procedures.
- Senior Java Engineer/Java Server EngineerYounity/Entangled Media2015 - 2016
Technologies: Java, AWS, Spring, Groovy, Vertx
- Created a Pub/Sub messaging system on Amazon AWS using Vertx.io with a Hazelcast back-end.
- Assisted in managing a complex AWS server environment.
- Refactored various older Spring API functions to more modern Spring.
- Web Developer and Software EngineerPepPod2014 - 2016
Technologies: Magento, PHP, Amazon AWS
- Took over development of the Magento eCommerce website. Created a test server and a development Git branch to allow for a modern, professional workflow.
- Created a completely custom sub-theme based on their design.
- Wrote custom modules to integrate with other technologies including Capsule CRM.
- Worked remotely by contract/hourly, communicating via email and phone and using Assembla to manage tickets and releases.
- Managed Amazon AWS EC2 instances using Route53, a load balancer, and various RDS instances.
- Freelance DeveloperAbaris (via Toptal)2015 - 2015
Technologies: Java 1.8, Spring, REST, Jersey, Maven
- Created a REST interface for a custom application API according to supplied specifications using Spring MVC and Jersey.
- Extensively unit-tested and integration tested using test-driven development.
- Senior PHP Architect and DesignerBar-o2013 - 2015
Technologies: CodeIgniter, PHP, Amazon AWS
- Modernized an existing CodeIgniter web application, taking over from a previous developer. Cleaned up numerous aspects of the application, applying OO and functional design paradigms as appropriate.
- Refactored the Authorize.net payment system to use a custom-built Braintree payment library.
- Designed and managed Amazon AWS server instances.
- Web Developer/Software EngineerPulsar Web Works2013 - 2014
Technologies: PHP, CodeIgniter, Symfony, Magento
- Rewrote, in less than a week, a CodeIgniter codebase to be object-oriented, which to allowed for the proper integration of an Authorize.net payment system. Later, this refactoring paid off when the client asked us to change the payment system to Braintree—now that it was properly designed, the switch was easy.
- Created an inventory update system that linked a windows XP machine running unsupported POS software to a Magento store by creating a Visual Basic script that read the database on the client side and pushed it to a custom Magento extension on the server side, where the inventory data was parsed and translated into Magneto objects, creating any new items on the fly, as necessary, as well as updating stock and price.
- Updated and managed various Magento eCommerce stores.
- Software EngineerUniversity of Texas2012 - 2014
Technologies: Java, Groovy, Spring, Jersey, Linux, Jenkins, Nexus, Maven, Gradle
- Worked as a major contributor to build a Groovy mainframe to a UNIX interface processing a million transactions per month.
- Migrated a build server running Jenkins, Nexus, Crucible, and Sonar from a failed hard disk to a new VM in three days.
- Refactored the university’s self-service application, a proprietary legacy web application using a non-standard procedural technology, to use an OpenAM-based authentication system.
- Designed and developed a custom library that interfaced a BonitaSoft webform application with UT’s business process layer, LDAP server, and Active Directory servers.
- Developed a Groovy script to be run regularly that searched the University of Texas' various identity systems for user accounts that have not authenticated within the previous 15 months. The script included accessing Splunk records via a REST interface; directly querying the school's Active Directory domain via a Spring template; querying an REST interface for UT's implementation of OpenAM called UTLogin; as well as making broker calls to a mainframe module via a Java API.