Available for freelance work
Guilherme Cruz
Full Stack Developer · .NET + React
I build the whole product and ship it: database design, API, interface, app on the store, server, domain and HTTPS.
Four of my own products are running in production right now — each one carried by the same pair of hands, from the first commit to the certificate that renews itself.
Work
My products, live
All of them are my own: idea, code, infrastructure and release.
Investing
InvestFolio
Portfolio management for long-term investors. You enter how much you are putting in, and it tells you how much goes into each asset to pull the real portfolio back toward its target allocation.
Clean Architecture backend, installable PWA frontend.
investfolio.compilla.techVisit
Weddings
MyWeddingList
A wedding gift registry you share as a link. Guests pay by PIX or card and the money lands straight in the couple’s account — no store in the middle, no steep commission.
Image uploads and a real payment checkout.
myweddinglist.compilla.techVisit
Mobile app
StudyApp
A gamified study app: Pomodoro, spaced-repetition flashcards (SM-2), tasks and notes in a single flow — plus a virtual plant that grows as you study.
Android, shipped with its own backend.
studyappsunflower.comVisit
Tool
Stardew Planner
Drop in your Stardew Valley save and it tells you what the Community Center still needs — and what you can still finish this season.
No server, no database: the save never leaves the player’s machine.
stardewplanner.compilla.techVisit
Approach
End to end, without handing the problem on
Most of the friction in a project lives at the boundaries: between the frontend and the API, between the API and the database, between code that passes on your machine and code that stays standing on a server at three in the morning. Working alone across all four layers forced me to solve those boundaries instead of passing them to the next person.
In practice that means architecture that survives a change of mind, tests where the business rules are hard, and a deploy that is a single command — because a manual deploy is a deploy nobody runs.
Live product, not a prototype
I hand over something running on its own domain, with HTTPS and automatic certificate renewal — not a repository for someone else to deploy later.
Decisions written down
Every non-obvious choice is documented with its reasoning. Whoever picks the project up next does not have to guess why it looks the way it does.
Privacy by default
I only store data the product actually needs. In Stardew Planner that became the architecture: there is no server to leak anything.
Stack
What I use every day
Tools are a means. These are the ones I know well enough to estimate against with confidence.
Backend
- .NET 10
- C#
- Clean Architecture
- Minimal APIs
- EF Core
- xUnit
Frontend
- React 19
- TypeScript
- Next.js
- Vite
- Astro
- TanStack Query
Mobile
- React Native
- Expo
- Google Play
Data & infrastructure
- PostgreSQL
- Linux
- nginx
- systemd
- Let’s Encrypt
- GitHub Actions
Contact
Got something to build?
Tell me what you need. You will get an honest read on the scope — including if I think I am not the right person for it.