JJ

2016 — 2020

BEng Mechanical Engineering, 2:1

University of Bristol

Covered systems & control, mechatronics, and finite element analysis — then earned a First on my final-year project, applying MATLAB simulations and neural networks to experimental research.

Jan — Apr 2021

Software Development Bootcamp

Nology

12-week intensive covering JavaScript, React, and software engineering fundamentals — agile workflows, best practices, and real client projects.

Aug 2021 — Dec 2022

Junior Front-End Developer

Bendi · Remote/London

Led front-end on an MVP reporting app for Shopify merchants, then built a retailer survey app solo — shipping with React, Next.js, GraphQL, and AWS (Amplify, Cognito, Lambda).

Jun 2022 — Dec 2022

Digital Trainer

Future Coders SE · Remote

Built a full web development course — projects, worksheets, and resources — then delivered hands-on training, reviewing code and coaching learners individually and in small groups.

May 2023 — Apr 2026

Front-End Developer

Radii Devices · Hybrid/Bristol

Sole front-end developer for a start-up building a browser-based CAD platform with Three.js — owning architecture, auth, and file versioning, then continuing as freelance lead through code review and deployment.

memaday

A group photo-sharing app: each group gets one randomly-selected photo per day. Members view it and comment. When the next day's photo is selected, the previous one — image and comments — is permanently deleted, everywhere. Claude Code-assisted project built for web and mobile with a shared backend API for authentication and data handling.

TypeScriptpnpm workspacesTurborepoHonoCloudflare WorkersCloudflare R2Cloudflare PagesCloudflare Cron TriggersWranglerPostgresNeonDrizzle ORMDrizzle KitBetter AuthExpoReact NativeReact Native WebExpo RouterReactlibsodiumVitestGitHub Actions

Test Project Two

Placeholder project with a short description, just to see how a small card sits next to a large one.

Next.jsTypeScriptTailwind

Test Project Three

Placeholder project with a longer description, deliberately wordy so it runs past a single line and exercises the tile's overflow and expand behavior the same way memaday's does.

ReactNode.jsExpressPostgreSQLDockerAWSGraphQLRedis

Test Project Four

Another placeholder, with a long stack and a deliberately wordy description, so more than one tile in the grid can be overflowing and expandable at the same time — this one lets the click-to-expand interaction be tested project after project, in different combinations and orders, instead of only ever having memaday around to click. The stack below is padded out well past what it would realistically need, purely to guarantee this card clips at its normal size the same way memaday's does.

VueNuxtPiniaViteVueUseSupabasePostgRESTRow Level SecurityStripeStripe WebhooksResendZodVitestPlaywrightStorybookESLintPrettierGitHub ActionsFly.ioSentryCloudflare DNSFigmaLinearpnpmTurborepo

Test Project Five

A fifth placeholder, also deliberately overflowing, with its own long list of technologies — so the grid has to keep multiple pinned and expanded tiles from ever colliding with each other or with the rest of the grid as they're clicked through one at a time, in different orders and starting from different positions in the layout. Long enough on its own, before even counting the stack list below, to clip at the card's normal size.

RustAxumTokioSQLxSQLiteWebAssemblywasm-bindgenReactZustandTailwind CSSRadix UITanStack QueryDocker ComposeNginxLet's EncryptGitHub ActionsGrafanaPrometheusLokiMinIOCaddy

Languages

JavaScript (ES6+)

Languages

TypeScript

Languages

Node.js

Frameworks

React

Frameworks

Next.js

Frameworks

Astro

Frameworks

Angular

Frameworks

Three.js

Frameworks

React Three Fiber

Frameworks

Redux / Zustand

Styling

HTML5

Styling

CSS3

Styling

SCSS

Styling

Tailwind CSS

Tooling & Testing

Git

Tooling & Testing

GitHub

Tooling & Testing

GitLab (CI/CD)

Tooling & Testing

Docker

Tooling & Testing

Claude Code CLI

Tooling & Testing

Cursor

Tooling & Testing

Jest

Tooling & Testing

Puppeteer

Cloud & APIs

AWS Lambda

Cloud & APIs

AWS API Gateway

Cloud & APIs

AWS DynamoDB

Cloud & APIs

AWS S3

Cloud & APIs

AWS Cognito

Cloud & APIs

REST APIs

Cloud & APIs

GraphQL

Cloud & APIs

Stripe

Platforms & CMS

Shopify

Platforms & CMS

Squarespace

Platforms & CMS

CMS Integration

Design

Responsive Design

Design

Figma

Get In Touch

If you have a project in mind or like my work then give us a shout!