Kevin Newman

Full Stack Developer · Remote · Canada

Payments and billing on the web, field-tech apps on mobile, and the odd Nintendo 64 game.

Introduction

I'm a full stack developer with 10+ years of experience shipping software, from payment platforms and customer portals to 3D marketing apps and hybrid mobile products.

Away from work I'm a game jam regular, always tinkering on a side project (and playing too much Age of Empires II: DE).

Work

Sonar SoftwareSoftware Engineer → Senior Software Engineer · Full-timeJan 2021 – PresentRemote

Three products over five years: the field-tech mobile app, payments and billing on the core platform, and the customer portal.

Mobile: Field Tech

  • Sole developer of the app ISP installers use to manage jobs, tickets and inventory
  • Built its offline sync so technicians keep working without a connection
  • Rebuilt it from Flutter in React Native and TypeScript, and now building white-label versions on the same codebase
  • Shipped card scanning for on-site payments, signed contracts, iOS Live Activities and the mobile CI/CD pipeline

Core Platform

  • Co-built SonarPay's disbursements, disputes, card verification and refunds on Payrix with one other developer, starting on the front end and now working full stack
  • Built flexible 30-day billing with proration alongside the same developer, released behind feature flags
  • Built Print-to-Mail with another developer, one of a set of white-label add-ons like SMS that customers can turn on à la carte
  • Split 35+ global frontend services into explicit imports, fixing circular dependencies and webpack memory issues
  • Built an AST-based code generator for type-safe enums used across the codebase

Customer Portal

  • Rebuilt the subscriber payment flow with auto-pay and multi-currency, and now rebuilding the rest of the portal

TS, Vue, PHP, Laravel, GraphQL, PostgreSQL, Flutter/Dart, Riverpod, Drift/SQLite, React Native, Redux Toolkit, Apollo, Auth0, Azure Pipelines, GitHub Actions, Fastlane, Docker

Visit Sonar Software ↗

XelloFull Stack Web Developer · Full-timeJan 2019 – Jan 2021Toronto, CA
  • Maintained and evolved a micro-frontend shell application orchestrating web-component-based modules
  • Migrated legacy AngularJS components, services, and unit tests to Angular and Jest
  • Localized the product for the UK market, adapting flows to a different school system
  • Improved performance of existing SQL queries and authored new stored procedures

TS, SCSS, Angular, NgRx, RxJS, .NET, SQL, Slack API, Jest, Jenkins, Octopus, Azure

Visit Xello ↗

WuzzalsFull Stack Web Developer · ContractOct 2018 – Jan 2020Toronto, CA
  • Sole developer maintaining and extending the Laravel + Vue platform for a personalized children's-book company
  • Automated the book-cover creation pipeline with Photoshop Action scripts and dynamic image resizing
  • Refactored components for reusability and improved site-wide performance and design
  • Launched comic books as a new product line and introduced a Trello workflow adopted company-wide
  • Managed support for users, writers, artists, and teachers

Laravel, Vue, Photoshop scripting

Visit Wuzzals ↗

TrailerworksFull Stack Web Developer · ContractAug 2018 – Jan 2019Toronto, CA
  • Built the company's interim and final marketing sites in React
  • Wrote technical estimates for client RFPs
  • Managed the existing Magento e-commerce store
  • Launched a Shopify storefront for honey produced on site

React, Magento, Shopify

Visit Trailerworks ↗

GrassriotsFull Stack Web Developer · ContractMar 2018 – Jul 2018Toronto, CA
  • Cut campaign delivery time from over a month to about ten days by streamlining the development workflow
  • Rebuilt the Webpack configuration, improving build reliability, performance, and developer speed
  • Added multilingual support with languages easy to add or remove
  • Modernized the codebase from ES5 prototypes to ES6 classes
  • Delivered campaigns for UNICEF Canada, World Vision, Ecojustice, and Cystic Fibrosis Canada

JS (ES6), Webpack, Babel

Visit Grassriots ↗

GEFrontend Developer · ContractOct 2017 – Feb 2018Markham, CA
  • Built interactive 3D marketing apps in Babylon.js for GE Healthcare, Energy, and Grid Solutions
  • Prototyped and benchmarked modern frontend frameworks against GE's in-house Haxe stack to guide platform decisions
  • Rebuilt a Flash-based conference showcase as an HTML5 Vue app shipping to web and desktop (Electron) with offline storage

Babylon.js, Vue, Electron, Haxe

Visit GE ↗

IndegeneFrontend Developer · Full-timeFeb 2017 – Oct 2017Oakville, CA
  • Developed Angular 2 components and themed an Ionic 3 hybrid web/Android app for the pharma industry
  • Designed backend microservices in collaboration with the Java Spring team
  • Implemented Redux state management and custom offline state handling for Android
  • Internationalized the app and maintained support down to Android 3.0 tablets
  • Interviewed and onboarded new hires

Angular 2, Ionic 3, Redux, Java Spring

Visit Indegene ↗

Digital EchidnaFull Stack Web Developer · Full-timeFeb 2015 – Feb 2017London, CA
  • Delivered front-end themes and custom back-end modules across Drupal client sites
  • Built Python scrapers for content migration and maintained a CodeIgniter application
  • Represented the company at Drupal 8 code sprints in Ohio and Toronto
  • Built sites to meet AODA accessibility standards
  • Onboarded co-ops, interns, and new hires

Drupal 7/8, PHP, Python, CodeIgniter

Visit Digital Echidna ↗

ProjectsView all →

Skills

My core stack

TypeScriptReactReact NativeVueNode.jsLaravel (PHP)PostgreSQLGraphQL

Also experienced with

AngularFlutterRxJSC / C++.NETRedisSQLiteREST APIsMCP serversDockerCI/CDAzure / AWSThree.js / Babylon.jsUnityBlenderFigmaAdobe Creative Cloud

Education

Interactive Media Specialist

Fanshawe College · 2014–2015

3D Character Design & Animation

Fanshawe College · 2013–2014

Interactive Media Design

Fanshawe College · 2011–2013