Sì, c'è davvero. Ma non è così grave come pensa la maggior parte delle aziende che se ne lamentano. Peggiorano attivamente la situazione per loro stessi.
Molte persone finora hanno detto qualcosa sul fatto che c'è una carenza di "sviluppatori esperti". Questa è una parte, ma non tutta la storia. Ci sono due grossi problemi che sono interamente colpa delle aziende che hanno problemi a trovarli.
Il primo è che c'è poca coerenza in ciò che le diverse aziende vogliono. Triplebyte (una società di reclutamento tecnico di terza parte) ha recentemente fatto alcune ricerche quantitative su questo problema: Who Y Combinator Companies Want - Triplebyte Blog
Certo, questi dati si applicano solo ad una certa categoria di aziende start-up, ma la mia esperienza aneddotica suggerisce che è generalizzabile. L'affidabilità inter-rater su "cosa fa un buon programmatore" è statisticamente indistinguibile da zero. Questo ha due conseguenze:
1. È impossibile allenarsi o prepararsi per essere il "candidato perfetto". Il meglio che puoi fare è cercare di essere il miglior candidato per una particolare azienda - e solo se sai effettivamente cosa stanno cercando, cosa che probabilmente non sai, perché sono notoriamente pessimi nel dirtelo! La maggior parte delle buone assunzioni saranno superate dalla maggior parte dei processi di assunzione perché non spuntano le caselle giuste su un modulo HR - caselle che sono diverse ovunque - nonostante il fatto che la maggior parte di quelle caselle probabilmente non hanno importanza e quei candidati avrebbero fatto un ottimo lavoro.
Entrambe queste cose sono esacerbate dal fatto, notato anche da molte altre risposte, che la maggior parte delle persone incaricate di assumere sviluppatori non hanno la minima idea di cosa facciano effettivamente gli sviluppatori, o di come assumerne di buoni - il che si traduce in criteri di filtraggio effettivamente casuali che sono diversi ovunque.
In secondo luogo, le aziende tendono ad essere irragionevolmente rigide in quello che sono disposte ad offrire ai potenziali dipendenti. Si potrebbe pensare che questo sia un problema soprattutto per le grandi aziende con un sacco di burocrazia e di burocrazia; e probabilmente c'è del vero in questo. Ma anche le start-up agili e in rapida evoluzione mostrano problemi simili. Inizi il processo di intervista e ti dicono: "Certo, possiamo lavorare intorno alle tue esigenze individuali; ma man mano che vai avanti, la pressione si fa sentire.
"Abbiamo politiche di vacanza molto flessibili--chiama quando vuoi, tempo libero illimitato finchè porti a termine i tuoi progetti" -- "OK, bene, avrò bisogno di prendere ogni venerdì per andare a prendere i miei figli..." -- "Spiacente, non sei adatto a noi!"
"Abbiamo davvero bisogno di gente tosta che possa lavorare 80 ore a settimana in ufficio durante un periodo di crisi, e abbiamo catering gratuito ogni mercoledì e opzioni flessibili di telelavoro! -- "Beh, posso farlo, durante un periodo di crisi, ma non mi interessa molto il catering e avrò bisogno di telelavorare durante le ore di straordinario..." -- "Ci piacerebbe molto che tu venissi in ufficio; forse possiamo darti un bonus per comprare un'altra macchina" -- "No, ho davvero bisogno di telelavorare per qualsiasi cosa oltre le 40 ore; accetterò anche una riduzione di stipendio se voi..." -- "Scusa, terremo il tuo curriculum in archivio!"
La maggior parte delle volte, questi requisiti non sono irragionevoli. È più facile lavorare con impiegati che si adattano tutti ad un certo stampo. Ma se non sei disposto a negoziare per soddisfare le esigenze dei top performer, non avrai i top performer. Non si tratta nemmeno sempre di stipendio - ci sono molte aziende che non potrebbero permettersi di pagare 200.000 dollari all'anno per il migliore, quindi devono passare; ma quella stessa azienda probabilmente potrebbe permettersi di pagare 100.000 dollari in cambio di ferie extra, orari di lavoro personalizzati, o qualsiasi altra concessione che un particolare sviluppatore potrebbe trovare preziosa (e potrebbe effettivamente aumentare la sua produttività, per giunta!) ed è interamente colpa loro se non vogliono preoccuparsi di fare lo sforzo.
La linea del partito, naturalmente, è che "non dobbiamo trattare con te, perché ci sono altri cinque candidati dietro di te che non hanno richieste speciali". Ma se questo fosse vero, non vi lamentereste di una carenza, vero?