Parker Harris

  • Former AWS identity engineer
  • Independent developer
  • Builder at heart

Open to software development roles

Projects

Software

RACEMATE

  • TypeScript
  • React
  • Express
  • AI-assisted development

RACEMATE is a web app for managing sailboat races, from checking boats in to calculating final results.

Race committees often work with clipboards and stopwatches. Recording finishes can take three people: one to watch boats cross the line, one to call out times, and another to write everything down. RACEMATE lets an operator stage approaching boats in a short, reorderable list, then tap each boat as it crosses to record its finish time.

The app also guides the start sequence with a countdown and timed reminders, records boats that cross the starting line early, and calculates corrected times and results using the selected scoring method.

I’m developing RACEMATE with Seattle’s Center for Wooden Boats, where it is already being used to manage races. Feedback from the race committee is driving an ongoing effort to make the interface more intuitive and handle unexpected actions—such as recording a finish before a race has started—without producing inconsistent results.

RACEMATE has also been a hands-on education in AI-assisted development. I’ve used Claude Code extensively and learned that it works best when I first lay out the design, work through the data flow, and make specific implementation requests. I use AI to help build the app while keeping responsibility for product decisions and how the pieces fit together.

BeatBurner

  • JavaScript
  • Web Audio
  • Capacitor
  • PHP

I built BeatBurner because I enjoy rhythm games and wanted to play with my own music. It uses JavaScript’s Audio Context to analyze audio and generate playable levels, synchronizing moving tiles with the music.

Automatically generating rhythm-game levels from multiple audio sources presented a host of engineering challenges. For example, the live radio feature streams music from online sources, but the incoming audio wasn’t directly compatible with JavaScript’s Audio Context analysis tools.

To solve this, I built a pipeline that divides the stream into ten-second chunks, plays and records each chunk internally without audible output, and analyzes the recording to generate tiles. The audio then plays to the user with a delay, synchronized with the moving tiles. This process runs continuously, making the separate clips sound like one uninterrupted stream.

Keeping all those pieces synchronized—including when a player pauses and resumes the game—was a significant challenge, but the kind of challenge I thrive on. It’s incredibly satisfying to see all the moving parts of a complex system come together.

BeatBurner supports built-in songs, user-uploaded music, live radio, and audio sent through a connected computer—including music from streaming services.

GRAFFITI

  • JavaScript
  • PHP
  • SQL
  • Browser extensions

GRAFFITI is a browser extension that adds a shared comment section to any webpage. It was my first major independent project after leaving AWS, revisiting an idea I originally built more than a decade earlier.

The idea started with Craigslist. If I went to see an item for sale, I wanted to leave useful context for other buyers: “Looks great in person,” or “The photos don’t show its current condition.” I couldn’t add features to Craigslist itself, but I could store comments separately, associate them with page URLs, and retrieve them through an extension whenever someone visited that page.

GRAFFITI takes that idea beyond classifieds. I built the extension’s interface and a PHP API backed by a SQL database, focusing on making the commenting experience clear and easy to use. The architecture was straightforward; the satisfying work was bringing the design and interactions together into a finished product.

GRAFFITI is live and available to use. It works well, and I’m proud of the finished product's clean interface and smooth integration of features.

Wind & Waves

  • JavaScript
  • React
  • Canvas
Wind & Waves in motion. Press play to watch the simulation.

OK this one really brings out my inner nerd and channels my former life as a high school physics teacher. The forces that make a sailboat work are the subject of a surprising amount of debate, even among sailors.

I built this simulator to illustrate those forces - you steer a boat around the screen and you can see, in real time, arrows representing the forces on the hull, sail, and centerboard. And it's not just a diagram over a boat graphic; underlying the boat's motion is a physics model using those exact forces to calculate acceleration.

This one is an oldie but a goodie - I still love how I was able to write a simulation using JavaScript and basic physics and the result moves surprisingly like a real boat.

View screenshots

CheckMatey

  • Ruby on Rails
  • React
  • Redux

Who hasn't wished for a pirate-themed chess website?

Inspired by chess.com, CheckMatey is a fully-functional online community for chess players with multi-player functionality as well as single-player games against the computer. There's also a community forum where you can share your chess or pirate-related thoughts with other players. You can even use the move-recording feature to share that new opening you just invented.

If your opponent's not online when you want to play, just use the "invite a friend" feature to challenge your friend via email. If you're still online when your friend clicks the link, you'll automatically be put in a game together. Of course, if you prefer Tetris to chess, we've also got you covered.

CheckMatey has a Ruby on Rails backend and a React & Redux frontend.

SimpleChessMove

  • PHP
  • JavaScript
  • CSS

Projects such as CheckMatey made me wish for a publicly facing chess API, but I couldn't find one. Why isn't there a simple endpoint where I can describe a game state and it suggests a move?

So I built one. It's a public facing API for chess - you can use SimpleChessMove to either suggest a move or to check if a move is legal. This way anyone building a chess application online doesn't have to implement the chess logic - why solve that problem more than once?

The user interface is simple: just a chess board where you can play against the computer. More interesting is the detailed documentation for use of the API and the section that allows you to adjust parameters and query the API to simulate what your own chess application will do. The algorithm is simple: it looks ahead the requested number of moves, maximizing the piece point advantage or, if possible, winning the game. Check it out and see if you can beat level 4 or 5.

Don’t Die Together!

  • JavaScript
  • React
  • Canvas
  • MongoDB
  • Socket.IO

Don't Die Together! is a top-down, multiplayer zombie survival game. You start off with a pistol and, with zombies closing in from all sides, you must survive as long as possible. You can invite your friends to play in the same game with you, but be careful: the more players there are, the more zombies arrive!

Don't Die Together! uses MongoDB on the back end and React on the front end. Multiplayer functionality is through Socket.IO. The game rendering uses HTML5 canvas.

Other collaborators on this project are Ryan Sabik, Wesley Tam, and Ryan Sullivan.

Boggler

  • React
  • TypeScript

A customizable Boggle game for finding words in a grid of letters. Play a generated board, enter words, and reveal the answers when you want to see what you missed.

You can also upload your own letter grid and customize the word list. Built with React and TypeScript.

Connections²

  • React
  • TypeScript

Based on NYT’s Connections game, but with the ability to create custom puzzles and send them to your friends!

Other cool stuff

7ft sailing dinghy

I designed this tiny sailing dinghy to act as the tender for a larger boat. My goal for the project was to build a boat light enough I could pick it up and carry it around myself and capable of carrying up to 3 people and being rowed, sailed, or motored. I was super happy with the resulting boat. She is made of 1/8" and 1/4" marine plywood sheathed in fiberglass.

13ft sailing dinghy

I had the idea for this boat in college: a hull made of foam and covered in fiberglass with a thin wooden deck. I thought it would be the simplest sailboat to build. Well, I built it but it turning into a much bigger project than expected. I eventually launched the boat with my good friend Dave and later sailed her to Fisher's Island, around two miles off the coast of Connecticut.

Van conversion

My first van conversion. I started with a 1992 Ford Econoline 350 cargo van and built a custom interior. Despite the small space, I managed to fit a full sized bed, a tiny bathroom with a shower, a fridge, hot and cold running water with a propane instant water heater, and a fridge. I even built a cat door for my orange tabby, Spark.

Box truck conversion

Building on skills I developed building my van conversion I converted this former uhaul truck over the course of two years starting in 2020. Although the overall length is almost identical to the cargo van, the box width and height meant I could fit far more amenities. It's insulated on the floor, walls, and ceiling with 2" R10 foam and features a propane heating system as well as a tiny wood stove - it's fantastic for winter trips.

I was working from home for AWS at the time, so I knew I needed a big desk with plenty of power so I included 600 amphours of battery which could be charged by plugging in, running the enginer, or from 200 watts of rooftop solar. In addition to the main, full sized bed there's a couch that easily converts to a single bed or a table, a galley with propane stove, microwave, and a big sink, and a bathroom with tiled floor and a shower. The pressurized hot and cold running water is supplied by 80 gallons of fresh water storage.

Building this truck is one of my favorite projects. Figuring out how to integrate systems such as plumbing, propane, and electrical and getting them to all work together in a space that feels warm and inviting was a wonderful challenge. I've driven this truck all over the country and lived in it quite comfortably (along with my cat!) for several months at a time.

Chess table

I build this wooden chess table several years ago and I'm still quite proud of it. Most of the wood is mahogony, while the chess surface itself is maple for the light squares and walnut for the dark squares. There's also a thin purple heart border around the chess board area. The surface looks inlaid, but the tabletop is actualling made of plywood with the squares and bordering wood glued in place.

Oil painting

For the last few years I've started painting with oil paints. Here are a few of my favorite paintings.

Experience

2023 — PRESENT

Independent Developer

Multiple projects using React, JavaScript/TypeScript, backend frameworks, and AI-assisted development

Since leaving AWS to pursue personal projects, I’ve built, among other things, web applications, mobile games, and browser extensions. I have particularly enjoyed that working independently has given me room to experiment—from using JavaScript’s audio tools to generate rhythm-game levels to incorporating AI-assisted development into my workflow, every new tool I learn has fueled my excitement for the future.

My current project is working with Seattle’s Center for Wooden Boats on an app for managing sailboat races. My time working independently has been a blast, but I miss the collaborative aspects of being part of a team and I’m now ready to find my next position. I hope you take a moment to look at some of the recent projects.

MAR 2020 — SEP 2023

Amazon Web Services

Frontend Software Engineer
Identity & Access Management

As a member of a small team in the AWS identity organization, I worked to upgrade, maintain, and monitor the Identity and Access Management web console. This involved migrating frontend components from Angular to React, working with designers and backend engineers to add new features, and deploying the IAM console to AWS’s ever-growing network of regions across the globe.

Every new component I wrote was accompanied by unit tests, and the console was continually monitored for errors or downtime. I participated in week-long on-call rotations, responsible for quickly responding to high-severity events and working with engineers across many teams to diagnose and fix problems.

AWS account automation

I personally designed and implemented a system to manage hundreds of internal AWS accounts across 25+ regions. The IAM console relied on other AWS services and was deployed to multiple servers across AWS regions. Each region required multiple accounts for deployments, testing, and continuous monitoring, with separate accounts for individual processes.

I created a series of scripts to manage these accounts through a single entry point for defining which regions to deploy in and what each region needed. The system iterated over those regions and requirements, retrieving existing accounts or creating and provisioning new ones as needed.

This system significantly reduced the manual work required to deploy our web console across AWS’s growing collection of regions.

OCT 2014 — JAN 2016

Gas Magic LLC

Founder & Owner

I founded Gas Magic, a membership-based gasoline delivery service in Seattle. I designed and built the software that supported the business, including user authentication, delivery scheduling, member communications, and tools for tracking employee hours and pay.

PHPSQLHTML / CSS

Hi, I’m Parker.

Parker sailing

I'm a software developer with a background that also includes mechanical engineering and teaching. Over the course of my diverse career I've taught middle and high schoolers math, science, and philosophy and coached a fledgeling student robotics team as they went to their first state competition. On the engineering side I've designed custom tooling for the manufacture of large aircraft and worked for New York State improving building energy efficiency.

I've been a coder since I first programmed Lego robots when I got my first computer at age 10. Before turning to software full time I worked on numerous web projects including building a complex system for a gasoline delivery business involing user accounts, tools to schedule and manage deliveries, and keeping track of employee hours and pay.

In 2019 I graduated from the super-competitive coding bootcamp App Academy and shortly after started as a frontend engineer at AWS, where I worked for three and a half years before leaving to pursue independent projects. Since then I've build numerous web applications, small games and apps, and learned several new technologies. I'm building my latest project, an app to assist with running sailboat races, using AI assistance and I am blown away by the capabilities. What an exciting time to be alive!

When I'm not coding I spend my time sailing, playing chess, and doing and doing various projects such as converting a box truck to an rv or building a small boat. I'm a builder at heart, and I'm always looking for my next challenge.

Education

App Academy · Full Stack Web Development
Clarkson University · MS, Engineering Management
Union College · BS, Mechanical Engineering & BA, Philosophy

Contact

I’m looking for my next software development role.

802–760–7970