Nathan Brodin
A frontend engineer with a passion for web development, design, and user experience.
About
Originally from the west of France, I've been moving north ever since: interning in Oslo, exchanging in Finland and Sweden, and somehow ending up north of the Arctic Circle in Tromsø, Norway.
I build things for the web, mostly on the frontend, and I care way too much about how buttons feel when you click them.
- Laval — Hometown
- Kokkola — Exchange semester, Finland
- Oslo — 3 internships
- Sundsvall — Exchange semester, Sweden
- Tromsø — Currently here
Social Links
GitHub Contributions
Tech Stack
Experiences
I'm building a production grade web application from scratch: frontend, backend and infrastructure.
- Frontend with React 19 + Compiler, Vite, TanStack Router/Query/Table/Pacer, Tailwind, Base UI, shadcn/ui (and coss ui)
- Backend with Django REST Framework with Redis for caching, ClickHouse integration, and PostgreSQL
- Infrastructure with Docker, deployed via NGINX on self-managed servers
- I've set up full end-to-end type safety with drf-spectacular (OpenAPI schema generation) and Orval-generated TanStack Query hooks
- Implemented RBAC, admin tooling, and resource management
- Made the CI cover linting, builds, schema generation, and automated testing (~700 backend tests, ~100 Playwright E2E tests) with caching and sharding
- Wrote full docs, DX tooling, DB seeding, and Makefile commands so the whole project sets up in a few commands
- TypeScript
- React.js
- Tailwind CSS
- Tanstack
- Django
- Docker
- NGINX
- UI/UX Design
- Design System
Worked across multiple AI products used by 100k+ users. It was my end of studies internship, of 6 months, that counted toward my Master's degree (graded 92/100).
- Managed to push to production +15 massive features across 3 frontend applications
- Migrated a production app from Gatsby to Vite, cutting build times by 60%
- Built a full E2E test suite with Playwright. With 350+ tests across browsers, and a CI that runs under 90s with caching and sharding
- Wrote technical docs and analysis reports, generally tried to make the DX better for the team
- TypeScript
- React.js
- CSS
- Playwright
- Redux
Built the frontend of a GenAI chatbot platform used by 100+ users. From blank repo to well-tested app (92% coverage, Storybook, documented architecture). Focused on developer experience: clean code, consistent styling, and full test setup.
- TypeScript
- React.js
- CSS
- Redux
- Playwright
- Storybook
Shipped an internal admin panel from scratch used by 10+ users, based on Figma designs. Small project with basic tech (CRA + JS), but good foundations. I handled everything from UI, API integration, auth, and deployment. My first production app.
- JavaScript
- React.js
- CSS
- Redux
Education
Education
I completed my Master's degree in Software Engineering at ESIEA, the 7th best graduate Engineering school in France. Graduated with 92/100.
The first few years relied heavily on mathematics, algorithms, physics and electronics, moving toward programming and broader software development and software engineering practices at the end. Coupled with 3 internships for a year of real work experience as I graduated, and 2 exchange semesters.
- C
- Python
- JavaScript
- Full Stack Development
- Application Design
- Algorithms
- Systems Programming
- Distributed Systems
Exchange Semester in Sundsvall, Sweden. Applying systems concepts both on paper and on the ski slopes.
It was more project based, with real implementation of distributed systems and IoT. But also very theoretical algorithm applications.
- IoT
- Advanced Networking
- Distributed Systems
- Algorithms
Exchange Semester in Kokkola, Finland. Enjoyed the Northern Lights and the snow (and sometimes studied).
Got an introduction to databases (SELECT * FROM grades;), operating systems (playing with Arch) and different programming languages to do the same things (calculator app in Python and C#).
- Python
- C#
- Object-Oriented Modeling
- OS
- SQL
Projects
A chatbot that knows everything about me: my experiences, projects, career, all of it. Users can just ask anything and get real answers. It works as a conversational portfolio. I'm using React Server Components with the AI SDK, which is genuinely hard to pull off since their docs are not even working (and not even recommended anymore), but it makes the streaming flow feel really smooth. Built with Next.js, Tailwind, Drizzle, and the Vercel AI SDK.
- TypeScript
- React.js
- Next.js
- Tailwind CSS
- AI SDK
- Drizzle
A place where I save links to UI libraries, shadcn registries, and websites that just look really good. When I need inspiration, I open a few of these and let my creativity do the rest. The UI is heavily inspired by zed.dev. Built with Next.js, Tailwind, Drizzle, and SQLite (Turso (because their free tier is really generous)).
- TypeScript
- React.js
- Next.js
- Tailwind CSS
- Drizzle
A theme for the Zed Editor based on the colors from Vercel's docs. Currently top 15 most downloaded themes with 52k+ downloads. Lee Robinson was using it, which was pretty cool.
- Zed
- VIM
