Full-stack developer
dodoshell
I build products end to end, and I fix bugs in other people’s code.
Open to full-time roles and freelance projects
Things I built
Four products, from the database schema to the last pixel. Each one is live.

Poltrona
Cloud management for hair salons and barbershops.
Next.js 16, React 19, TypeScript, Tailwind 4, Supabase

Corsia
Exam prep for taxi and chauffeur drivers.
Next.js 16, React 19, TypeScript, Tailwind 4, Supabase

Sconti Nova
Amazon deals, verified every hour. Built with a partner.
Next.js 16, React 19, TypeScript, Tailwind 4, Supabase

Iter
Leave requests with a three-role approval workflow.
Java 21, Spring Boot 3, Spring Security, PostgreSQL 16, Flyway
Fixes in other people’s code
I pick open issues in projects I don’t maintain, reproduce them, and send a fix with tests. The list below comes straight from GitHub.
How I work on a bug
- 1
Reproduce it
A bug I can’t trigger on demand is a bug I can’t prove I fixed. First a script, a test or a number that shows it.
- 2
Find the cause, not the symptom
The torch thread leak looked like a Flask problem. It wasn’t, and fixing Flask would have hidden it for a while.
- 3
Change as little as possible
Maintainers review the diff, not the intent. Small, focused changes in the project’s own style get merged.
- 4
Leave a test behind
Every fix ships with the test that would have caught it, so the bug can’t come back quietly.
Have something to build or fix?
I’m looking for a team to join or a project to take on. You can find me and my work on GitHub.