Ciao.Costruisco web app che durano.
Veloci per chi le usa, leggibili per chi le mantiene. TypeScript, dal frontend al backend.
man francesco
- NOME
- francesco — sviluppatore web freelance
- SINTASSI
francesco [--frontend] [--team] [--backend] [--refactor] <your-project>- DESCRIZIONE
Sono soprattutto uno sviluppatore frontend, e quando un progetto lo richiede mi occupo anche del backend. Mi trovo a mio agio nei progetti enterprise: codebase grandi, domini complessi e requisiti stringenti.
L'istituto tecnico mi ha dato delle buone basi di programmazione. Il resto, cioè quasi tutto quello che uso al lavoro, l'ho imparato da autodidatta, su manuali e corsi online.
Tengo al codice che nessuno vede tanto quanto all'interfaccia che vedono tutti. Più sotto ti spiego perché.
- STORIA
- 2018Finita la scuola inizio a lavorare, realizzando siti WordPress per attività locali.
- 2021Entro in una società di consulenza e comincio a lavorare su progetti enterprise.
- 2023Apro la partita IVA e da allora lavoro con più clienti in contemporanea.
- SETTORI
- STACK
Idee chiare, mente aperta
Qualche idea che guida il modo in cui scrivo software. È anche un modo veloce per capire se lavoreremmo bene insieme.
Unix e Linux
Programmi piccoli che fanno una cosa sola, ma bene, e si passano i dati come semplice testo. Resta la miglior lezione di progettazione software che conosca, e Linux è il sistema su cui lavoro ogni giorno.
$ cat app.log | grep ERROR | wc -lClean architecture
Logica di business che non sa su quale framework, database o interfaccia sta girando. Le dipendenze puntano verso il centro, i framework restano ai margini, e sostituirne uno non vuol dire ricominciare da capo.
react → core ← postgresProgrammazione funzionale
Funzioni pure, dati immutabili e composizione al posto di gerarchie di classi infinite. Codice che si capisce senza doverlo eseguire a mente, e che si testa senza mockare mezzo mondo.
const total = cart.map(price).reduce(add, 0)Strong typing
Se uno stato non è valido, non deve essere nemmeno possibile scriverlo. I tipi sono documentazione che il compilatore tiene aggiornata da solo, e ogni bug che trova lui è un bug che non finirà mai in produzione.
type Order = Draft | Paid | ShippedTutto da tastiera
Tiling window manager, terminale e una scorciatoia per qualsiasi cosa: se devo staccare le mani dalla tastiera per prendere il mouse, qualcosa è andato storto. Anche questo sito si usa così: prova a premere j e k.
[j] giù · [k] su · [g] inizio
Come posso aiutarti
Back-office, dashboard, portali per i clienti: dal primo prototipo alla produzione, in React, Next.js o Angular, a seconda di cosa serve davvero al progetto.
Mi inserisco in team già avviati su progetti enterprise, mi oriento in fretta anche in codebase grandi e mi adeguo ai processi che ci sono invece di reinventarli.
Quando al frontend serve un backend: API con NestJS e PostgreSQL, costruite in modo che la logica di business non dipenda dal framework.
Codebase cresciute troppo in fretta, rimesse in ordine un pezzo alla volta: senza fermare lo sviluppo e senza la grande riscrittura per cui nessuno ha mai tempo.
Parliamone.
Sono disponibile per progetti freelance. Che si tratti di una nuova app, di una codebase da rimettere in ordine o di una discussione sulle distro Linux, scrivimi due righe.
- → email · francesco@fstanziola.dev
- → github · github.com/shamiaza