Grey Hill

Projects

A project is anything I built outside of work on my own free time.

diategia

– Present

To track my diet strategy with meal prediction.

Skills

  • Researched machine learning algorithms for predictions and ranking
  • Adapted Material Design 3 to HTML & CSS
  • Utilized ChatGPT as research assistant and rubber duck

Knowledge

  • SolidJS
  • TypeScript
  • Astro
  • Sqlite
  • CSS
  • HTML
  • AWS
  • Terraform
  • ChatGPT

Job Application Tracker

– Present

To track job applications and perform analysis

Skills

  • Used Sqlite database in the browser
  • Migrated database schema over several versions
  • Conformed to constraint validation API for form errors

Knowledge

  • SolidJS
  • TypeScript
  • Sqlite
  • CSS
  • HTML

Resume

– Present

To hold all resume data; change resume quickly & easily

Skills

  • Used Dhall to hold data & configure content
  • Refactored from Dhall to TOML to shorten feedback loop
  • Created GitHub pages workflow for human capital

Knowledge

  • TOML
  • HTML
  • CSS
  • C#

Personal Website

– Present

To host my full resume and publish articles

Skills

  • Used PolyBuild to create website build system
  • Used Terraform to provision AWS infrastructure
  • Used server-sent events to perform hot reloading
  • Wrote articles on fixing bugs using data-oriented design

Knowledge

  • C#
  • HTML
  • CSS
  • .NET
  • Terraform
  • AWS
  • AWS CloudFront
  • AWS Route53

Personal Finance System

– Present

To track finances; automatically produce financial reports

Skills

  • Used Haskell's Shake build system to generate reports
  • Migrated to .NET due to limitations in hledger
  • Created new accounting Nuget packages based on hledger
  • Created new build system in .NET based on Haskell's Shake library
  • Maintaining 7+ years of financial data with monthly additions

Knowledge

  • Dhall
  • C#
  • .NET 7

Nuget.Finance

– Present

To provide accounting primitives for .NET based off hledger

Skills

  • Used property-based testing to ensure high confidence in correctness
  • Migrated from NUnit to TUnit

Knowledge

  • C#
  • .NET
  • CsCheck
  • TUnit
  • Accounting

PolyBuild

To translate "Build systems à la carte" into .NET

Skills

  • Translated Haskell to .NET (functional to object-oriented)
  • Added OpenTelemetry activities to debug long builds

Knowledge

  • C#
  • .NET
  • OpenTelemetry

Unnamed

To track tasks/goals centered on a graph model.

Skills

  • Researched creation of Canadian, SaaS corporation
  • Designed microservice architecture
  • Investigated creation of Progressive Web Apps

Knowledge

  • SolidJS
  • TypeScript
  • CSS
  • HTML
  • AWS
  • Terraform
  • AWS Cognito
  • AWS S3

Lamport Clock Paper

To create an interactive paper; to deeply understand Lamport Clocks

Skills

  • Used Web Components via Lit for future reusability
  • Created animated visualizations using SVG
  • Created interactive simulations using KonvaJS

Knowledge

  • HTML
  • CSS
  • TypeScript
  • Preact
  • Lit
  • KonvaJS
  • Web Components

Apartment Noise Tracker

To learn the basics of creating a Progressive Web App

Skills

  • Allowed offline use by making it a Progressive Web App (PWA)
  • Used modern CSS for responsive design (mobile/desktop & dark/light mode)
  • Created Playwright tests to allow CSS refactoring

Knowledge

  • SolidJS
  • CSS
  • TypeScript
  • PWA
  • Vite
  • Playwright

ECS-EC2 Simulator

To debug turbulent ECS & EC2 scaling

Skills

  • Created simulation of AWS Auto-scaling groups
  • Created simulation of ECS auto-scaling

Knowledge

  • AWS ECS
  • AWS ASG
  • Vue

Rent vs. Buy Calculator

To help make an important decision & convince others

Skills

  • Learned React (with hooks) to build frontend

Knowledge

  • React
  • TypeScript