Tom Pridham

Contact

Skills

Job History

Osmos | May 2022 - Oct 2024 | Senior Software Engineer

Duties

  • Implement features independently across our React, Typescript and Rust codebases
  • Work closely with CS team to solve customer problems, ranging from visual bugs to database improvements
  • Reviewing code and technical specifications, providing feedback and solutions

Notable Achievements

  • Ran standup and other planning meetings while team lead was on paternity leave
  • Implemented a brand new notification service in Rust within a month of starting
  • Fixed long standing race condition during account creation, so account creation was fault tolerant and idempotent
  • Major overhaul of billing service to accommodate new billing tiers, improve test coverage, and improve error handling
  • Updated CI processes to create per PR deployments to improve e2e testing and feedback cycle
  • Added analytics client to allow Product and Design more insight into real world app usage

Technologies Used

  • Rust
  • Diesel
  • Nextest
  • React
  • Typescript
  • Jest
  • Github Actions
  • GCP

PDQ.com | January 2020 - May 2022 | Senior Software Engineer

Duties

  • Implement standards and best practices for JS guild, JS repos across the org, and Rust repos
  • Mentor other developers to ensure code quality, consistency, and performance
  • Provide feedback on architecture and tech proposals and brainstorm solutions

Notable Achievements

  • Pitched doing a pivotal part of new initiative in Rust, took the lead on development, helped teammates onboard with Rust
  • Utilized Cloudflare Workers to implement A/B testing for our marketing and sales sites
  • Moved our marketing site to a modern pipeline and deployment environment using K8s
  • Created a live chat and QA app for viewers of our weekly webcast using Firebase as a backend
  • Diagnosed and fixed a build issue that was including 6MB of JSON in every page

Technologies Used

  • Typescript
  • Rust
  • Web Workers
  • Node
  • React
  • Docker
  • Firebase
  • Kubernetes

Jane | October 2017 - December 2019 | Software Engineer

Duties

  • Perform rigorous code review and uplift other engineers
  • Create new features based off of designs and product specifications
  • Gradual migration of old Angular codebase to React

Notable Achievements

  • Completed a large feature that enabled our sellers to manage their employees
  • Implemented performance improvements to our customer facing site that cut load times in half
  • Successfully pushed for Typescript in all new JS projects and incremental adoption in existing projects

Technologies Used

  • React
  • Typescript
  • Graphql
  • Koa
  • Node
  • AngularJS
  • C#

Projects

Random Task

Demo: https://tompridham.me/projects/random_task/

Repo: https://github.com/TomPridham/random-task

A little utility that will parse a tab nested list of tasks and select a random one

  • Rust
  • WASM

WasmSweeper

Demo: https://tompridham.me/projects/wasmsweeper/

Repo: https://github.com/TomPridham/wasmsweeper

A basic minesweeper implementation written with Bevy that compiles to WASM

  • Rust
  • Bevy
  • WASM

Brutemoji

Repo: github.com/tompridham/brutemoji

A picture replication program that works by randomly placing emoji on a blank canvas and comparing that to the original picture. If the new picture is closer than the old picture is, it keeps that image and repeats the process.

  • Rust
  • image manipulation

routefor.me

Repo: https://github.com/TomPridham/routefor.me

An app that uses data scraped from mtbproject.com to recommend random mountain bike trails. Implemented a fully-functional webscraper to pull trail data from mtbproject.com.

  • webscraping
  • text-parsing
  • AngularJS

Education

DevMoutain - May 2016

Studied web development focused on the MEAN-Stack. DevMountain is a programming bootcamp - https://devmounta.in/web-immersive

Salt Lake Community College - December 2015

A.S. in Mathematics