- Moved into a Lead Developer role with 8 developers reporting to me within my first year.
- Joined a payments project to address shortcomings of the existing architecture. Led the rewrite of the payment system’s server side concerns into a design that was easier to reason about and build on, with an improved database schema leading to easier debugging and reporting. The new payments system worked alongside existing payment gateway implementations allowing a gradual rollout. Migration from the old payment architecture to the new involved maintaining data parity between both architectures while validating the new payments system to minimize risk.
- Identified a performance bottleneck in our use of Laravel’s service container that massively improved user experience by significantly lowering resource use (about the discovery). Response times were reduced by 40% on average, and browser time to interactive was seconds faster in some instances.
- Led the rewrite of 2 major components from a Laravel monolith to Go applications. Load testing showed performance improvements of 50% or better in both cases with much lower resource usage. These were my first Go projects, but I was able to overtake the productivity of devs with far more experience quickly.
- Converted a struggling mission critical JavaScript app from vanilla JavaScript to TypesScript to formalize types and verify sane code, reduce defects, and make the codebase more approachable for new devs. I also made the changes needed to run the converted app in production.
- Refined aging apps by leveraging existing tools already used in the projects. One frontend app used Flow annotations but its validation was not automated. Fleshing out the use of Flow so the whole project could be analyzed successfully helped identify dozens of bugs, and helped reduce defects going forward by adding the validation to the continuous integration workflow.
- With every project I touch, both frontend and backend, I aim to find ways to improve user experience, developer experience, stability, performance, coding conventions and practices.
- In addition to backend and frontend applications, I work on improving the CI workflow and efficiency, and solving production issues with application servers and related k8s configuration.
- I perform regular mentoring to elevate the team and build stronger developers.
Go, PHP, TypeScript, Laravel, React, Docker, GCP, New Relic, Kubernetes, Github Actions, SQL, RabbitMQ and CodeceptJS.
- Led the greenfield development of a customer facing mobile app for Fishing enthusiasts, the server side application was created with Rails and the hybrid frontend application was created with Ionic. I married together several open source GIS databases to identify water bodies where fish were caught.
- Built and maintained internal facing hybrid single page applications using Angular deployed on low powered Android devices. Collaborated across acquired brands as the organization standardized the software used in stores.
- Led the development of an all new in store kiosk experience using an Angular based single page application. Also drove the development of a bespoke custom sporting goods online experience with a React based single page application.
- Created the basis for the main website’s product search built on Elasticsearch with features such as keyword boosting, synonym dictionaries, and varying results dependent on device type. The new search platform outperformed the previous search tool by 90% at ingestion and end user searches by 40%.
- Maintained the Elasticsearch cluster containing the main website’s catalogue with hundreds of thousands of products.
- Introduced Ansible for deployment management, which was then widely adopted as the company shifted to a devops style of production ownership.
- Worked with the many other teams in the corporate environment to requisition new servers, configure WAFs, load balancers, databases, establish disaster recovery plans, and load test.
- Performed regular mentoring to elevate the team.
- Participated in hiring and marketing at co-op recruiting events.
Angular, React, TypeScript, Cordova, Swift, New Relic, Java, Elasticseach, Jenkins and SQL
- Created a tool to generate automated reports to track the ROI of our clients' online and offline marketing efforts.
- Developed websites using Magento, WordPress and ProcessWire to create affordable featureful experiences.
- Created a content management system and ecommerce platform with Symfony. Implemented countless catalogue and ecommerce websites with those apps.
- Integrated a local bookstore with Google Books allowing them to compete with Kindle.
- Led a team of 4 in house developers and occasional contractors.
- Managed on site development servers and backup processes.
- We serviced government clients, all the way through large local retailers.
- Owned the technology concerns of the company as it grew from 5 members to over 20.
- Managed the infrastructure used to host hundreds of applications on shared hardware. Monitoring activity was essential to identify bottlenecks to make the most of the hosting.
Symfony, PHP, JavaScript, CSS, Magento, SQL and Apache Lucene.