I'm a tenacious developer with a background in biochemical research and a passion for solving tough problems.
I had my first introduction to software development through a Bioinformatics course I took while studying Biochemistry at Boston University. It was just a taste of Python, but I was immediately hooked. Since then, I’ve had a chance to build applications for biochemical research, ecommerce, and restaurant point of sale.
My experience in research instilled in me a relentless and detail-oriented approach to problem solving. In fact, some of my favorite moments in the development process come from hitting a wall. There’s a unique sense of satisfaction I get from pulling out a hammer and some nails to start building a ladder. I’m eager to bring my determination, and my passion for learning to a forward-thinking engineering team where I can help to drive growth through thoughtful, scalable solutions.
Golang, MongoDB, Angular.js, Node.js, PostgreSQL, AWS Serverless infrastructure
Worked as a full-stack developer on a web-based restaurant point of sale, and on the associated ETL pipelines, data warehouse, and reporting software. Highlights include:
Rebuilt a legacy Spark/Scala traditional ETL with a serverless Go-based real-time streaming ETL, reducing typical data latency by 80% and allowing for automated scaling under heavy load
Implemented a cross-platform payment processing integration for Restaurant POS, coordinating internal teams across Android, Web, and Server-based platforms along with 3rd-party teams at PAX and TSYS
Restructured the storage, transportation, and editing of labor data across three (formerly separate) internal platforms to allow for a shared “source of truth” and consolidated payroll processing for our customers
Ruby on Rails, PostgreSQL, Redis, RabbitMQ, AWS
Worked as a back-end software engineer on an e-commerce site where gamers can purchase coaching time from esports professionals. Highlights include:
Identified API endpoints causing significant memory consumption issues, then refactored and optimized the queries used in these endpoints, resulting in an 80% reduction in request/response time for the most affected users, and a 50% reduction in application memory usage during periods of typical load
Added integration of AmazonPay to the payment system, and built a refund system that integrates with Stripe and Paypal.
Redesigned the calendar availabilities and lesson scheduling system to allow for more granular control of what types of students a sensei accepts lessons from at any given time.
Ruby on Rails, Ruby-Grape, Cassandra, Apache Spark, Scala, PostgreSQL, RabbitMQ, GCP
Worked as a back-end software engineer and data engineer on a League of Legends meta analysis platform.
Built a Ruby-based system that spiders through the Riot Games League of Legends API to transform and store data from hundreds of millions of matches into a Cassandra database.
Built a system using GCP BigQuery and Apache Spark (Scala) which performs a series of transformations and aggregations on the large-scale match dataset and user data to generate and store a number of detailed meta analyses.
Built Rails/Ruby-Grape APIs to serve the aggregated and blended data to the leaguemeta.gg web platform, and to the senseibot discord chat bot.
Ruby-Grape, PostgreSQL, Steam API
Worked as a back-end software engineer on a 'shooting range' mastery game for first-person shooters, available on Steam. Projects included:
Built a user authentication system, and an API to recieve, validate, and store incoming match data from the game client.
Built a leaderboard and achievement system that integrates with the Steam developer API.
A full-stack e-commerce site where users can browse, search, sort, and purchase a variety of products across a range of categories. Payments are processed via the Stripe API. Users’ order history and cart contents are stored on the back end. This was a group project created alongside the wildly talented developers Andrew Young and Pedro Tavarez.
A full-stack application featuring a turn-based, roguelike RPG. Users can fight through increasingly difficult waves of goblins, purchase weapons and character upgrades with gold they earn in battle, and compete for a place on the global leaderboards.
An inventory/task management tool where users can organize ‘Items’ they care about (tangibles, to-dos, etc.) into shareable ‘Boxes’. Major features include access control lists for each Box, and SMS messaging via Twilio.
A single page application hub for different variants of Tic Tac Toe, including classic and numeric game modes. Each user’s games are saved to their account and can be reloaded to play again another time.