I joined Ro as Senior Software Engineer in early 2019 as the first American full-time engineer. At the time, the rest of the development team was in Poland. During my time there, the tech org quadrupled in size as the company experienced hypergrowth. I learned to be comfortable with and successfully manage change, as change was frequent.
In my role at Ro, I used my previous experience to help guide the monolith codebase and avoid technical debt as much as is possible in a rapidly evolving environment. Eventually I settled into commerce engineering, adding payment methods and owning the extremely complex pricing system. I interviewed a few dozen prospective engineers and was the onboarding buddy for several new engineers that are now highly successful.
Bringing PayPal to Ro increased overall revenue by 6%, allowing our customers more payment options.
My code in this area routinely processes ~$4M of revenue per month.
The pricing system was originally written to handle Ro's flagship product, ED medication. Over time, as more offerings were added, the system was updated with hack upon hack and eventually needed to be replaced.
With the new microservice architecture, I rewrote the pricing system as a matching engine. It gained enormous flexibility and modularity. The real challenge was integrating it into the existing system.
While at Ro, I was able to implement some of the things I learned from my previous company, Silverthread. This helped us gain valuable knowledge about the level of technical debt in the system and where efforts should be concentrated to make the biggest impact.
As Lead Engineer at Silverthread, it is my job to ensure that the software development team runs smoothly on a day-to-day basis. We are a small team of engineers in Reno, Nevada that operate as the primary development team for the company's headquarters in Boston, Massachusetts.
In addition to my responsibilities as an engineer, I guide the architecture of our core software, cloud processing, client interfaces, and output usability. We maintain 90%+ test coverage with unit, integration, and system tests. Our team works from home two to three days a week, using Slack, Zoom, and Jira to stay in contact.
CodeMRI Platform started as a handful of powerful data analysis scripts born from research out of MIT. Since then, I was the lead developer of the team that brought it to the market and enabled clients to access it easily.
This platform is the core of Silverthread’s advanced data processing - a pipeline that scans raw source code and generates a wealth of information about design quality and business outcomes. It has proven successful in several places in the Air Force as well as private industry.
As sales and marketing started to rise, Silverthread needed a scalable and flexible licensing system that would accommodate any potential contracted use of the software. Cerberus provides the ability to easily enable or disable individual features with a few clicks.
Often, clients need access to Silverthread's reports on code and design quality but are not technically savvy. The CodeMRI Scanner GUI adds a friendly face to Silverthread's powerful engine, allowing virtually anyone - from financial gurus to summer interns - to create useful reports.
I started fresh at IGT in 2001 straight out of college. Originally working with firmware, I wrote the Keno games in Game King 5 before moving on to special projects such as flash memory programmer, custom build system, testing tools, and peripheral device drivers.
The video topper sits on top of an existing slot machine and drives a tertiary display. Since it has separate hardware, it can run full screen video without reducing the performance of the machine.
Operator menus are used to configure a machine's protocols, enabled games, etc. The menus were based in an old 3d engine and needed to be upgraded to something easier to use, maintain, and extend.
Commander is a tool to communicate with and manipulate the DynamiX 3d engine. Used by artists and engineers alike, it is essential in debugging and developing DynamiX games.
When the underlying operating system shifted from QNX to Windows Embedded 7, it provided an opportunity to redesign the system diagnostics using off-the-shelf web tech and node's addon functionality.
The build process for the i960 line of slot products was clunky and difficult to use. The new process used a streamlined XML makefile for ease of use, unifying the various build processes across engineering, Product Assurance, and regulatory bodies.
Programming EEPROMs and flash memory is a core function of engineering and manufacturing. The flash programmers read raw binary images and interfaced with low level device drivers to program and verify images.
Born out of a love for Fromsoft’s Dark Souls game series, Soapstone is a mobile app that allows fans of the game to replicate one of the game’s most famous and unique features in the real world. This project was featured on Kotaku, PC Gamer, and a handful of other gaming news sites.
Zoom, Join.me, Slack, Hipchat, Stride, Google Hangouts, JIRA, Confluence, Sharepoint, TSheets
Python, C, C++, C#, JavaScript, ES6, CSS3, HTML5, JSON, Ruby, PHP, Perl, RegEx, XML, XAML, i960 asm, 8086 asm, BASIC
Django & DRF, Flask, FastAPI, AWS S3/EC2/RDS/Route 53/etc, MEAN, LAMP, ASP.Net MVC, Bootstrap, Laravel, Vue, Rails, Angular, Knockout, Ionic, Cordova, WPF, MFC, .Net, Numpy, Pandas
Windows, Linux/Ubuntu, OSX, Team City, Git, Mercurial, Perforce, StarTeam, TFS, SVN, CVS, Wiki, Office, Gimp, VisualStudio, WebStorm, Vim, Unity, Xcode, Android Studio, Eclipse, GCC, Borland Builder