L’annuncio di lavoro che cerca l’impossibile

Il supereroe che non esiste

“Cercasi Fullstack Developer: esperienza in React, Angular, Vue, Node.js, Python, Java, C#, Docker, Kubernetes, AWS, Azure, GCP, MongoDB, PostgreSQL, Redis, Machine Learning, DevOps, UI/UX design, SEO, gestione server, cybersecurity. Preferibile esperienza in blockchain e quantum computing. Stipendio: entry level.”

Questo non è un annuncio satirico. È la media di decine di annunci reali che appaiono ogni giorno sui portali di lavoro. Aziende che cercano un supereroe tecnologico che sappia fare letteralmente tutto, dal design dei bottoni all’ottimizzazione del database, dalla configurazione dei server alle strategie SEO.

Il problema? Questo supereroe non esiste. E se esistesse, non accetterebbe mai uno stipendio entry level.

Ma soprattutto: se esistesse, probabilmente sarebbe mediocre in tutto invece che eccellente in qualcosa.

L’impossibilità matematica dell’aggiornamento continuo

Facciamo due conti per rimanere aggiornati su tutto lo stack moderno:

Frontend: React, Vue, Angular. Ognuno con aggiornamenti continui, nuove specifiche CSS, standard browser in evoluzione.

Backend: Node.js, Python, Java, Go, Rust. Ognuno con librerie, framework, best practices in continua evoluzione.

Database: Relazionali, NoSQL, in-memory, time-series. Ognuno con ottimizzazioni e strategie diverse.

Infrastruttura: Container orchestration, serverless, edge computing.

DevOps: CI/CD, monitoring, logging, security, infrastructure as code.

Moltiplicate il tempo necessario per rimanere veramente competenti in ognuna di queste aree. Non “ho letto un tutorial”, ma “so usare questo in produzione senza fare disastri”.

Le ore in un giorno non bastano. Letteralmente. Il fullstack developer moderno è un mito matematicamente impossibile.

Il piccolo negozio vs il centro commerciale

Il fullstack aveva senso vent’anni fa. Le applicazioni erano semplici: HTML, CSS, un linguaggio server-side, un database. Come gestire un piccolo negozio: il proprietario poteva occuparsi di tutto.

Ma il mondo digitale moderno è una metropoli. La complessità è esplosa. Frontend non è più “una pagina HTML”. È state management, routing, performance optimization, accessibility, testing, build optimization.

Backend non è più “un server che risponde”. È microservizi, message queues, caching, database sharding, load balancing.

Chiedere a una persona di fare tutto questo non è ottimizzazione. È un modo elegante per dire “tre lavori per lo stipendio di mezzo.”

La superficie brillante della mediocrità

Il vero problema del fullstack tuttologo non è solo che non può essere esperto in tutto. È che spesso non è consapevole di quanto non sa.

Quando conosci solo la superficie di una tecnologia, non sai nemmeno quali domande fare. Non vedi i problemi finché non esplodono. Non conosci le best practices perché non hai avuto il tempo di impararle veramente. E soprattutto, pensi di sapere molto di più di quanto effettivamente sai.

È l’effetto Dunning-Kruger applicato allo sviluppo software: “Ho fatto un tutorial di tre ore su Kubernetes, ora sono un esperto di orchestrazione container!”

Il risultato è codice che funziona… fino a quando non funziona più. Architetture che reggono… fino al primo vero carico. Decisioni che sembravano ragionevoli… fino a quando non ti rendi conto che c’era un modo molto migliore, che avresti conosciuto se avessi avuto vera competenza nell’area.

Cosa succede quando il fullstack va in vacanza

C’è un modo infallibile per scoprire se un fullstack developer è veramente tale o se è semplicemente l’unica persona che capisce quel sistema: mandalo in vacanza per due settimane.

Se il progetto si blocca completamente, congratulazioni: non avevate un fullstack developer, avevate un single point of failure umano. Una persona che sa tutto perché è l’unica persona, non perché sia effettivamente competente in tutto.

Questo è il vero rischio del modello fullstack: crea dipendenze pericolose. L’azienda dipende da una persona che conosce tutti i segreti del sistema. E quella persona è costantemente sotto pressione perché qualsiasi cosa vada storta, in qualsiasi parte dello stack, è un suo problema.

È una ricetta perfetta per il burnout.

L’illusione del risparmio

“Ma assumere specialisti costa di più!” Falso. Anzi, doppiamente falso.

Primo: un fullstack mediocre che scrive codice di bassa qualità su tutto lo stack costa molto di più a lungo termine. Debito tecnico, bug, performance scadenti, manutenzione da incubo.

Secondo: gli specialisti possono lavorare su più progetti contemporaneamente. Un esperto frontend contribuisce a tre progetti diversi nella stessa settimana, portando qualità ovunque. Un fullstack deve dedicarsi a uno per volta, con risultati mediocri.

Tre specialisti su dieci progetti costano meno di dieci fullstack mediocri impantanati ognuno nel proprio progetto.

La ribellione silenziosa della specializzazione

Mentre il mercato pubblica annunci per fullstack onniscienti, sta emergendo una controtendenza: professionisti che scelgono deliberatamente di specializzarsi.

“Sono un esperto di performance frontend. Punto. Non faccio backend, non faccio infrastruttura. Ma se hai un problema di performance nel frontend, io lo risolvo.”

E sapete cosa? Questi specialisti sono richiestissimi. In un oceano di gente che sa fare tutto male, qualcuno che sa fare una cosa eccezionalmente bene è un tesoro raro.

Legge dell’offerta e della domanda: quando tutti sono fullstack mediocri, l’eccellenza specializzata diventa preziosa.

I tre casi in cui il fullstack ha ancora senso

Esistono esattamente tre scenari in cui cercare un fullstack developer è ragionevole:

Sistemi legacy maturi: Hai un’applicazione di quindici anni che nessuno vuole più toccare. Serve qualcuno che capisca quella specifica combinazione di tecnologie obsolete. Okay.

Progetti microscopici: Il sito del negozio sotto casa che avrà dieci visite al giorno. Non serve un team, serve una persona che metta su qualcosa che funzioni. Va bene.

Startup pre-funding: Non hai soldi per assumere un team. Serve qualcuno che faccia tutto abbastanza bene da arrivare al primo round di finanziamento. Temporaneo, ma comprensibile.

In tutti gli altri casi? State cercando l’impossibile. E anche se lo trovate, state creando un sistema fragile che dipende da una persona sotto stress costante.

Il futuro appartiene ai team

La verità scomoda è che lo sviluppo software moderno è un’attività di squadra. Non perché sia bello collaborare, ma perché è matematicamente impossibile che una persona sola abbia tutte le competenze necessarie.

Frontend specialist, backend specialist, DevOps engineer, database administrator, security expert, UX designer. Ognuno con competenza profonda nella propria area. Ognuno capace di comunicare con gli altri, capire il quadro generale, contribuire quando necessario.

Questo richiede coordinamento e comunicazione. È più complesso che avere un fullstack che fa tutto da solo. Ma produce risultati infinitamente migliori.

Il fullstack developer tuttologo è un residuo di un’era più semplice. Continuare a cercarlo è come cercare un fabbro per riparare un’auto moderna: tecnicamente entrambi lavorano con il metallo, ma le competenze sono radicalmente diverse.

Se vedete un annuncio che cerca un fullstack per progetti complessi, state guardando un’azienda che non ha capito come funziona il mondo. O peggio, che spera di trovare qualcuno ingenuo abbastanza da accettare tre lavori per lo stipendio di mezzo.


Questo articolo è tratto da “Non funziona niente! – I progetti IT in crisi”, il primo libro della collana Nothing Works! — una tragicommedia aziendale per chi ha visto troppi Gantt chart trasformarsi in fiction.

Scopri la collana completa, gli altri libri e le prossime uscite su nothingworks.it

Vuoi il libro subito? Compralo su Amazon

Potrebbe interessarti anche