Lead Developer
Label Interactive
http://labelinteractive.com
Southbury, CT
November 2013 - May 2021
Lead developer for a digital interactive agency.
Built and maintain ordering services for a large retail chain in New England.
- Responsible for the creation and continued development of an inventory and order fulfillment management panel & JSON API built with Laravel, PHP7, Apache, MariaDB, Redis, and more, running on RHEL servers from Microsoft Azure.
- Wrote Ansible playbooks to automate Capistrano-style, zero-downtime deployments.
- Built and maintain multiple API consuming SPA's with Vue.js, Vuex, and vue-router that allow customers to create orders through in-store kiosks and online.
- Created in-store, live updating order fulfillment application with Vue, vue-router, and Socket.io for employees to fulfill orders.
- Successfully managed migration from bare-metal Rackspace servers to Azure managed cloud services.
- Integrated with many 3rd party services like Apple Push Notification Service, Firebase, Aurus, DoorDash, Maxmind GeoIP, Google Tag Manager, IBM XTMail, and Twilio.
- Created tooling that processes inventory pricing and availability updates for over 125k products multiple times a day across hundreds of retail stores fulfilling over half a million orders annually.
Built internal tools for the annual production and client review of thousands of online advertisements.
- Created a Node.js command line tool to automate the creation of new projects from a series of in-house templates.
- Created a Gulp.js pipeline that provides live-reloading during development and a variety of options for building and exporting ads for production.
- Built a client review panel with TypeScript, Vue.js, vue-router, and Vuex that talks to a Koa.js API running on PM2.
- Wrote tooling to unpack .zip archives, apply code transformations to manipulate production ready ads for display within the review panel (for example, swapping out production CDN paths for relative paths on the fly), and more.
- Provisioned and maintain a CentOS server with Ansible to keep software up to date.
Created dozens of shorter lifespan, high traffic sweepstakes, instant-win contests, micro-sites, and other unique projects for name brand companies.
Owner & Lead Developer
The Conference Scheduler (currently unavailable)
https://www.theconferencescheduler.com
February 2019 - October 2022
A side project; how I learned and stayed current. The Conference Scheduler is security-focused, available-everywhere, live-updating schedule management built for schools. It aims to make creating and managing parent-teacher conferences easier for administrators, teachers, and parents.
- CI/CD pipelines via CircleCI test and deploy the application to DigitalOcean droplets.
- Ansible playbooks are used for server provisioning and deployment.
- Vagrant is used for local development and to test provisioning and deployment.
- Built with current versions of PHP, CentOS, Caddy, Ansible, Laravel, Vue.js, Vuex, TypeScript, MariaDB, Redis, and Tailwind CSS.
Development Manager
PowerIT
Oakville, CT
April 2008 - November 2013
Lead developer and development manager for a leading national school CMS provider.
- Responsible for all development efforts for the company, including oversight of a team of six overseas developers.
- Managed the development of the next major version of the company's flagship CMS product, built on top of Drupal and the latest version of PHP.
- Successfully migrated all customer districts running on independent installations of the legacy product over to the new platform.
- Built an email archiving product with a combination of IMAP filters, PHP & shell scripts, and MySQL to help school districts meet regulatory requirements by maintaining a searchable database of all email communications into and out of the district.