MATTHEW BOSTON
Software Engineer & Technology Leader
Denver, CO
+1 (937) 361-9266
matthew.boston@gmail.com
matthewboston.com
linkedin.com/in/bostonaholic
github.com/bostonaholic
ABOUT
I lead teams to build reliable, secure, and efficient software systems by focusing on quality, automation, cost optimization, and continuous improvement. Not only do I transform the software, but I am also committed to maintaining an equally significant impact on the people.
SKILLS
TECHNICAL EXPERTISE, LEADERSHIP, STRATEGIC THINKING
Programming Languages: Ruby, JavaScript, TypeScript, Clojure, ClojureScript, Java
Frameworks: Ruby on Rails, NestJS, Node.js, React, Redux
Components: AWS, Kafka, RabbitMQ, PostgreSQL, Redis, Elasticsearch, Docker, Kubernetes
API Designs: REST, GraphQL, gRPC
Architectures: Service-Oriented Architecture, Microservices, Event-Driven Architecture, CQRS, Event Sourcing
Practices: Domain-Driven Design, Event Modeling, Architecture Decision Records, C4 Architecture Modeling
OPEN-SOURCE CONTRIBUTIONS
I am involved in improving existing open-source projects and creating and sharing my solutions to common problems. I enjoy sharing knowledge and contributing to a growing community.
Here are some open-source libraries I created or currently maintain:
- ring-okta: Creator/Maintainer — Clojure Middleware for integrating Okta and Ring
- analytics-clj: Creator — Idiomatic Clojure wrapper for the Segment.io 2 Java client
- clojurescript.csv: Creator — A ClojureScript library for reading and writing CSV
- baizen: Creator — BAI file format parsing and validation in Clojure
- Test::More::Behaviour: Creator/Maintainer — Rspec-style tests in Perl
I have also contributed new feature development, bug fixes, and documentation to others, including Clojure, ClojureScript, Liberator, Spacemacs, Groovy on Grails, RailsAdmin, Redcarpet, Kitematic, and many others.
EXPERIENCE
Shopify - Staff Software Engineer
JUNE 2024 - PRESENT
Making commerce better for everyone.
Procore Technologies - Principal Software Engineer
OCTOBER 2020 - MARCH 2024
Leading the design and execution of a service-oriented architecture using event-driven systems and domain-driven design.
- Technical Leadership and System Enhancement: Assumed ownership of critical systems; led significant performance improvements, security enhancements, cost savings, and upgraded technology stacks. Most notably responsible for leading a 70% service cost reduction saving the company millions of dollars per year in AWS EC2 costs.
- Strategic Architectural Initiatives: Drove architectural direction for significant projects; identified and mitigated architectural risks across multiple platforms.
- Performance Optimization and Security Management: Enhanced system performance, notably achieving an 84% improvement in API response times; effectively managed and resolved over 30 security vulnerabilities.
- Cross-Functional Collaboration and Process Innovation: Spearheaded collaborative efforts with multiple teams for platform development and API design; innovated an ADR/RFC process, significantly enhancing design decisions and project throughput.
- Educational Contributions and High-Impact Presentations: Developed comprehensive skill-building frameworks and workshops for engineers; represented teams in high-level architectural reviews and operational assessments.
Technologies: TypeScript, NestJS, Node.js, React, Ruby, Ruby on Rails, AWS, PostgreSQL, Kafka, Redis, Sidekiq, Elasticsearch, Docker, Kubernetes
CircleCI - Staff Software Engineer
OCTOBER 2017 - OCTOBER 2020
- As the technical lead on the Plans & Payments team, I was primarily responsible for the architectural design and implementation of a suite of microservices for plan management and billing integrations with Stripe, Zuora, and Chargify. I collaborated with other Staff+ Engineers to document architectural values and enable others to make decisions to reach our company and team's architectural goals.
- Identified, designed, and built a SQL performance optimization to improve our mean PostgreSQL read IOPS. This improvement caused 95% of all pipelines on CirlceCI to start 0.4 sooner and 2 seconds sooner in the worst case.
- Designed and implemented systems that consume millions of events daily from RabbitMQ and built RESTful, GraphQL, and gRPC APIs for numerous clients. These efforts required collaboration to build scalable, performant, tested, and maintainable solutions.
- Built complex SQL queries and performed data analysis to help the Product team make informed decisions and determine feature priorities.
- Mentored others through pair programming, code reviews, architectural decision reviews, and various internal book clubs and knowledge-sharing initiatives.
Technologies: Clojure, ClojureScript, JavaScript, React, REST, GraphQL, gRPC, AWS, PostgreSQL, RabbitMQ, MongoDB, Docker, Kubernetes
Flye - VP of Engineering
MARCH 2017 - OCTOBER 2017
As the VP of Engineering, I acted as the principal engineer and architect, designing, building, and maintaining a suite of microservices to ensure the products remained agile, autonomous, and adaptive.
- Designed, implemented, and maintained an API-Driven architecture for both web and mobile clients. Written in Clojure using Immutant and Liberator.
- Built a real-time event stream microservice to send Server-Sent Events (SSE) to web and mobile clients. Written in Node.js, consuming messages from Redis.
- Used React and Redux to build a JavaScript single-page app (SPA) with real-time updates and authentication.
- Maintained several legacy Node.js services, fixing and replacing them with more suitable solutions.
Technologies: Clojure, React, Redux, JavaScript, Node.js, PostgreSQL, RabbitMQ, Redis, AWS
CircleCI - Senior Software Engineer
AUGUST 2016 - MARCH 2017
- As a member of the Growth Team, I focused on discovering and implementing features to improve user experience and increase user engagement in the CircleCI product.
- I made data-driven decisions with product owners, data scientists, and other engineers. A/B testing, feature flags, incremental feature rollouts, behavior analytics, and other processes to ensure new features were reliable, stable, and valuable to users.
- As a senior engineer on the team, I mentored others, helping those new to Clojure and ClojureScript. Mentorship involved using code reviews, pair programming, and instituting “function of the week” to improve everyone on the team.
Technologies: Clojure, ClojureScript, React, MongoDB, Docker
Test Double - Software Developer
JULY 2013 - AUGUST 2016
A focus on building well-crafted applications in Clojure, ClojureScript, JavaScript, and Ruby on Rails. I have also worked on applications using Groovy on Grails and Java. I am passionate about understanding users’ needs and solving problems simply and elegantly.
- Worked with accounting professionals to build a full-featured ledger system and track loan amortization schedules. This required precise mathematical equations to ensure accuracy to the penny. Clojure, ClojureScript, and Datomic were used.
- Enhanced a JavaScript widget to allow non-profit organizations to share news stories and track donation progress. Built with vanilla JavaScript.
- Added features, tests, and stability to a Backbone.js application that dealt with 3D modeling and dimensional price estimates of pool liners.
- Encouraged and advised a team of Java developers to write more JavaScript, showing the benefits of client-side development. I also introduced CoffeeScript and behavior-driven development (BDD).
Technologies: Clojure, ClojureScript, Datomic, JavaScript, Ruby, Ruby on Rails, Backbone.js, Groovy on Grails, Java
Neo Innovation - Client Principal
MAY 2012 - JUNE 2013
- As a Client Principal, I worked with clients from the introductory call to product inception and development. I also provided project management, high-level technical guidance, and agile & lean software development coaching.
- I worked with clients ranging from entrepreneurs with ideas for a startup to those who work for larger companies looking to solve a particular business problem. In both scenarios, I assist the client in defining a vision and scoping an appropriate first release, and from then on out, I am the client’s primary point of contact and technical lead.
EdgeCase - Software Artisan
OCTOBER 2011 - MAY 2012
Note: EdgeCase was acquired by Neo (above)
- Developed a Ruby on Rails application allowing users to create paid websites. Some significant features are credit card payments, social networking integration with Facebook and Twitter, and custom site theming.
- Created an application utilizing Clojure for back-end web services and the Ember.js JavaScript framework for a responsive and dynamic UX.
- Implemented an ETL system in Ruby. This application reads thousands of records from pre-existing data sources and performs transformations, logic, and analytics before posting to a pre-determined endpoint. The application was written using multi-threaded concurrency workers using the Thread Pool pattern.
Technologies: Clojure, Ruby, Ruby on Rails, JavaScript, Ember.js
Pillar Technology - Software Craftsman
JULY 2010 - OCTOBER 2011
Provide development and coaching to all levels of clients’ developers in agile development techniques, including TDD, continuous integration, source control, clean code, refactoring, and legacy rescue.
- Successfully integrated Groovy and Grails into an existing J2EE application to meet the client’s needs for drastic workflow changes. Also coached the client’s existing developers unfamiliar with Groovy and Grails in proper agile development with the new tools.
- Enhanced a largely non-tested legacy Java application by wrapping it with tests to preserve current functionality. This allowed the development team to modify and extend the application safely and with confidence.
- Worked on a legacy Perl project introducing agile development techniques. Developed and published a BDD test framework in Perl to ease the testing of the application. This allowed the developers to write much cleaner code and expressive tests, revealing the working code's intent.
Technologies: Groovy on Grails, Java, Perl, Ruby, Ruby on Rails
Click4Care - Software Developer
APRIL 2008 - JULY 2010
- Implemented an integration test framework written in Python to synchronize testing of multiple cooperative systems. This application accesses common datapools in XML and JSON, transforms with XSLT using Jython, and performs tests written in JUnit and IBM’s Rational Functional Tester (RFT).
- Built fully automated functional tests to interact with multiple systems and provide feedback regarding the synchronization of interactions.
- Designed test plans and developed JUnit 4 tests to consume exposed web services adhering to a WSDL contract and sending data using SOAP/REST.
- Worked in large and small teams in an agile environment to implement new J2EE functionality by applying core technologies such as EJB 3, Spring Framework, and Hibernate.
- Engaged in industry-standard best practices using SVN, Maven, Hudson CI (Jenkins), and Bugzilla issue tracking.
- Installation and configuration of Oracle 10g databases and WebLogic servers on Linux and Windows.
Technologies: Java, J2EE, Java Swing, Python, Oracle Database 10g
BearingPoint - Analyst Intern
JUNE 2005 - DECEMBER 2007
- The sole creator from inception to implementation of a VB Application used to automate the creation and analysis of large financial spreadsheets. This was used to accurately and efficiently analyze revenue and expense amounts accumulated by client engagements.
- Created an application to parse timesheet data from generated HTML files to send to other applications for analysis; this saves the user eight labor-intensive hours per week while eliminating countless errors.
- Applied advanced mathematical and analytical abilities to significantly improve functions and automate the reconciliation process of many large, relational spreadsheets.
- Worked with managing directors nationwide to gather software requirements, enhancements, and revisions.
- Coordinated meetings to present project updates and train team members on functionality enhancements.
Technologies: Excel VBA
EDUCATION
The Ohio State University - B.S. Computer Science & Engineering
SEPTEMBER 2002 - JUNE 2008
Capstone focuses on algorithms, data structures, and distributed systems.
- Business Minor
- East Asian Minor in Japanese
- Theta Tau Professional Engineering Fraternity
AWARDS
1st Place Overall and Best Demo - Startup Weekend Columbus
JULY 2012
Built a profitable and compelling product demo integrating with Amazon Associates.
Posh Haven - Tech Crunch