Andrew Wood

Senior Software Developer

[email protected] | Ontario, Canada

About

Business workflow orientated backend developer with a passion for building scalable and efficient systems.

I enjoy learning new things, campfires, golf, pixel art (+ low poly 3d modelling) and renovating my home (in the sticks).

Current Experience

Senior Software Developer

2016 - Present

ExperiencePoint Inc. Toronto, Canada

  • I design, build, deploy and maintain our internal systems and integrations that help run day-to-day business operations (accounting, certification, workshop management, NPS, reporting <br>and Customer Support Team workflows).
  • I've worked on a vast array of projects over the years from greenfield monorepos written in Node.js and Angular w/ NX to upgrading and maintaining legacy monolithic products written in Symfony 1 all the way up to 6+ (PHP 4-8+).
  • I create and maintain API integration points across our macroservice ecosystem and third party providers (SalesForce, Accredible, Docebo, Typeform, NovoEd etc etc).
  • I'm also involved with our dev tooling and infrastructure using technology such as: Vault, Ansible, Makefiles and GitLab CI

...

Skills

Tools & Technologies

PHP (+Symfony / Laravel)C# (.NET)PostgreSQLJavaScriptTypeScript (+Angular / React / Vue)Node.jsGit (+ Conventional Commits / GitLab CI / GitHub Actions)Docker (+ Docker Compose)AnsibleFreeBSD (bash, make and a lot of ags or greps)HTMXTailwind CSSGo / Golang (+ Gin)

How this website works

This website is built with Go on the GOTH stack (Go, Postgres, Templ, HTMX). For demonstration purposes there's an app for the main website frontend and a secondary RESTful api app to separate and handle data endpoints.

Overview

Build

docker-compose orchestrates website, API, and Postgres; each service has its own Dockerfile.

Static rendering

This page is rendered server side with templ; HTMX loads Mermaid diagrams (.mmd files) over the wire.

API integration

The data on this page is served over an authenticated server-to-server reverse proxy. HTMX on this page makes a call to /api/something-restful which is routed through to the api service which returns JSON and is then templated with templ