Skip to content

Oct 2026

Career Tracker

A serverless application tracker on AWS, in daily use.

My role: Solo project

Architecture diagram of the Career Tracker: browser, Amplify Hosting, Lambda, DynamoDB and Cognito in eu-west-3, deployed by GitHub Actions through OIDC and AWS SAM
How the Career Tracker runs on AWS. The app itself is private, so this shows the design instead of a screenshot.

What it is

Tracks every role and programme I apply to: deadlines, follow-ups, documents and contacts, in table, kanban and dashboard views.

What I did

  • Built a React and FastAPI tracker on AWS Lambda, DynamoDB and Cognito, tracking 700+ roles and programmes.
  • First deployed with CloudFront, S3 and AWS CDK, then cut to Amplify and AWS SAM to remove services a single-user app did not need.
  • Keyless CI/CD through GitHub Actions and OIDC, least-privilege IAM roles, $0 a month on the free tier.
  • Optimistic locking with versioned conditional writes, and an API that verifies every Cognito access token.
  • 62 API tests, including the DynamoDB layer on moto and token forgery cases, and 7 Playwright end-to-end tests on desktop and phone.

Outcome

  • Live since 15 October 2026. The repository is private and the app sits behind a login, because it holds my own data.

Built with

  • React
  • TypeScript
  • FastAPI
  • AWS Lambda
  • DynamoDB
  • Cognito
  • AWS Amplify
  • AWS SAM
  • GitHub Actions