Torna all'elenco degli articoli Articoli
Tempo di lettura: 9 minuti

Come diventare uno sviluppatore SQL

Non esiste una risposta semplice alla domanda "Come si diventa sviluppatore SQL?". Tuttavia, se la risposta fosse troppo complessa, non avrebbe senso scrivere questo articolo, eppure lo sto facendo. Quindi, da qualche parte lungo la strada, troveremo la risposta.

Come detto nell'introduzione, non esiste una bacchetta magica che vi trasformerà in uno sviluppatore SQL. Ma la lettura di questo articolo vi farà risparmiare tempo e vi aiuterà a concentrarvi su ciò che è importante per raggiungere il vostro obiettivo. Per prima cosa analizzeremo cosa fa effettivamente uno sviluppatore SQL. Questo mostrerà quali sono le conoscenze necessarie per candidarsi a una posizione di sviluppatore SQL.

Cosa fa uno sviluppatore SQL?

Io mi definirei uno sviluppatore SQL (tra gli altri titoli che potrei darmi, ma non è importante per questo articolo). La mia risposta preferita a ciò che faccio è "lavoro al computer". Questo spaventa la maggior parte delle persone, ma immagino che a voi non spaventi. Quindi, sarò un po' più dettagliato.

Ecco cosa fa uno sviluppatore SQL nella maggior parte dei casi:

  • Analitica - Un lavoro di sviluppatore SQL richiede la scrittura di query SELECT a vari livelli di complessità. Questa abilità si sviluppa nel corso degli anni quando si incontrano nuove situazioni. Anche se la maggior parte delle query sarà piuttosto semplice, ci saranno alcune situazioni che richiederanno di dare il meglio di sé e di scrivere un "mostro" SELECT che verrà eseguito in pochissimo tempo. Che le query siano semplici o complesse, il risultato è importante perché verrà utilizzato per prendere decisioni aziendali.
  • Programmazione di database - A seconda dell'organizzazione per cui lavorate e del vostro titolo di lavoro, passerete meno o più tempo a programmare stored procedure, funzioni e/o trigger. Sebbene includano anche istruzioni SQL (SELECT, INSERT, UPDATE, DELETE ), poiché sono effettivamente memorizzate come oggetti di database, rientrano nella programmazione.
  • Progettazione del database - L'ultima cosa che ci si può aspettare è che vengano apportate modifiche allo schema del database. Questo include probabilmente l'aggiunta, la rimozione, la modifica di tabelle e la creazione di relazioni.

I tre punti precedenti sono ciò che ci si può aspettare nella maggior parte dei casi. Nelle organizzazioni più grandi, probabilmente vi concentrerete solo su uno di questi tre aspetti, mentre nelle organizzazioni più piccole li svolgerete tutti e tre, oltre a compiti aggiuntivi come i backup.

Oltre ai compiti strettamente legati all'SQL, a volte dovrete:

  • Scrivere codice in linguaggi di programmazione.
  • Comunicare con il vostro team.
  • Raccogliere i requisiti aziendali dal cliente o, più in generale, parlare con le persone coinvolte nel processo.

Requisiti professionali dello sviluppatore SQL

Finora abbiamo visto cosa fa uno sviluppatore SQL. In questa sezione esamineremo i requisiti richiesti a uno sviluppatore SQL. Queste sono le informazioni che di solito si trovano negli annunci di lavoro, quindi immagino che almeno in parte le abbiate già viste.

Come diventare uno sviluppatore SQL
  • Laurea in informatica, ingegneria o materie affini: di solito non è richiesta, ma è auspicabile. Avere una laurea dimostrerà al vostro potenziale datore di lavoro che avete abbastanza perseveranza da portare a termine qualcosa che dura nel tempo, oltre a essere una garanzia che possedete almeno alcune conoscenze di base di diversi domini IT.
  • X anni di esperienza come sviluppatore SQL o in un ruolo simile - Ok, questo è previsto. Se volete lavorare come sviluppatore SQL, sarebbe opportuno che aveste già lavorato in questo ruolo. Questo potrebbe essere importante se vi candidate per una posizione non giovanile.
  • Ottima conoscenza della programmazione SQL - Un altro requisito fondamentale. Questo è un prerequisito per quasi tutte le posizioni di sviluppatore SQL, da quelle junior a quelle senior. Dovreste avere almeno una buona comprensione dei concetti, ma l'esperienza pratica è sempre più auspicabile.
  • X anni di esperienza con SQL Server Reporting Services e SQL Server Analysis Services - Anche se questo testo è specifico per i lavori legati a SQL-Server, lavorare con strumenti aggiuntivi specifici per alcuni DBMS (database management system, ad esempio MySQL, Oracle) è utile nella maggior parte dei casi. Sarà necessario se la posizione è quasi interamente legata a questi strumenti.
  • Ottima conoscenza di Microsoft SQL Server - Questo dipende dal sistema DBMS utilizzato dall'azienda, ma MS SQL Server è un sistema comune. Per uno sviluppatore SQL, se sapete usare bene un DBMS, non dovreste avere problemi a passare a un altro.
  • Capacità di pensiero critico e di risoluzione dei problemi - Questo aspetto è presente in quasi tutti gli annunci di lavoro nel settore IT. Queste due abilità sono l'essenza di quasi tutti i lavori (IT o non IT) che non sono solo una ripetizione degli stessi movimenti o procedure. (I lavori ripetitivi saranno presto automatizzati, se non lo sono già stati, quindi è importante iniziare a ragionare in modo critico o altrimenti andare in pensione).
  • Giocatore di squadra - si spiega da sé.
  • Buona capacità di gestione del tempo - si spiega da sé.
  • Ottime capacità interpersonali e di comunicazione - si spiega da sé.

Trovo divertenti gli ultimi tre punti, perché dovrebbero essere un requisito di base. Nessuno vuole un dipendente che non sappia organizzare il proprio lavoro e il proprio tempo, che non sappia comunicare e che sia allo stesso tempo giudicante e litigioso.

Abbiamo elencato alcuni requisiti formali del lavoro di sviluppatore SQL. Ora vi farò notare alcune mie osservazioni personali:

  • Si vedono continuamente titoli come "Il Paese X ha bisogno di importare XXX esperti IT". È semplice: c'è un'elevata richiesta di esperti IT in tutti i settori. Lo stesso vale per gli sviluppatori di database e SQL. Poiché le università non "producono" abbastanza esperti, molte aziende sono disposte a dare una possibilità a persone che non hanno un'istruzione formale (correlata) ma che hanno le conoscenze o il desiderio di imparare.
  • Per la maggior parte delle persone, anche nel settore IT, essere uno sviluppatore SQL non è "sexy". Oggi è "sexy" essere uno sviluppatore di giochi, lavorare con le nuove tecnologie, ecc. Tuttavia, ci sono alcuni tipi strani, tra cui io stesso, che trovano divertimento in questo lavoro. Se siete ben organizzati e vi piacciono hobby come la filatelia e giochi come gli scacchi, è molto probabile che possiate essere un ottimo sviluppatore SQL.
  • Non abbiate paura di candidarvi anche se non avete tutte le caratteristiche richieste. La maggior parte delle persone che si candidano non li copre tutti, e va bene così. Sarà difficile competere con candidati che hanno le stesse competenze ma più esperienza. Tuttavia, continuate a sperare. Ho ottenuto il mio primo lavoro a tempo pieno (come sviluppatore SQL) anche se alcuni degli altri candidati avevano più esperienza. Il motivo era che davo semplicemente l'impressione di una persona normale (con una dose di umorismo). In seguito hanno scoperto la verità :). È utile anche se avete fatto il colloquio dopo il tizio che si è presentato in abito argentato e ha appoggiato le gambe sul tavolo (a me è successo davvero).

Formazione per sviluppatori SQL

Ora sappiamo cosa è richiesto a uno sviluppatore SQL. Potremmo non avere le competenze (minime) giuste per candidarci a questo lavoro. Non importa quanto siate bravi o quante barzellette sappiate raccontare al minuto, molto probabilmente non avete la bacchetta magica. Se non sapete come JOIN alcune tabelle per ottenere il risultato giusto, le possibilità di ottenere il lavoro sono quasi pari a zero.

Potete sempre provare a lavorare senza essere pagati per fare esperienza. Anche se questa è un'opzione, non sono un fan del lavoro non retribuito. Pertanto, vi consiglio di investire un po' di tempo nella formazione prima di candidarvi per la posizione desiderata. Dopo la candidatura, otterrete il lavoro o saprete cosa dovete migliorare (chiedete sempre un feedback). Quindi, da dove iniziare?

Ci sono alcuni modi per apprendere le competenze necessarie:

  • Lettura - Se non ne sapete nulla, vi consiglio di iniziare con la lettura. All'inizio sarà probabilmente frustrante perché vi sembrerà di non riuscire a capire la cosa più semplice. Potrebbe volerci un po' di tempo per capire i concetti di base. Ma va bene così. Dopo un po' di tempo e dopo aver letto e cercato su Google le cose che non capite, dovreste avere un quadro generale del materiale. La lettura è ottima perché potete fermarvi in qualsiasi momento e continuare facilmente da dove avete lasciato. Suggerisco di leggere il blog di Vertabelo (un luogo in cui molti collaboratori condividono le loro conoscenze, per lo più relative alla modellazione dei dati, in modo da poter vedere molti punti di vista e opinioni diverse) e di utilizzare la biblioteca di LearnSQL.it (un luogo con articoli per gli studenti di SQL e ricettari SQL per i professionisti del settore). Per chi preferisce leggere i libri, consiglio "Sams Teach Yourself SQL in 10 Minutes" di Sam Forta.
  • Guardare video - Ci sono tonnellate di video online. Dedicatevi un po' di tempo, trovate un buon tutorial su YouTube che faccia al caso vostro e imparate cosa hanno da dire gli esperti. Si tratta di un'operazione simile alla lettura, ma che probabilmente richiede una maggiore concentrazione. Probabilmente è meglio guardare i video dall'inizio alla fine, senza interruzioni.
  • Sporcatevi le mani e provate voi stessi - I due punti precedenti sono ottimi, ma niente è meglio che sporcarsi le mani. Dopo aver capito cosa bisogna fare, bisogna scrivere codice. Scrivete il più possibile. Provate le cose. Giocate con il codice. Più esplorate, più la teoria dei database avrà senso.
  • Corsi - Questo è un passo avanti rispetto allo sporcarsi le mani. I corsi sono uno dei modi migliori per imparare. Il motivo è che qualcuno ha investito molto tempo nella creazione del corso. Pertanto, probabilmente otterrete il massimo da questo approccio. Inoltre, al termine del corso otterrete un certificato. Potrete mostrarlo a un potenziale datore di lavoro, dimostrando di possedere alcune competenze e di aver investito tempo e denaro nel vostro sviluppo professionale. I reclutatori apprezzano molto questo aspetto. Sulla piattaforma LearnSQL.it ci sono corsi che coprono diversi argomenti di SQL, come i fondamenti di SQL, come creare report o quali sono le funzioni avanzate di SQL. Oltre all'apprendimento, c'è anche uno spazio per fare pratica con l'SQL.

Come si diventa uno sviluppatore SQL?

Ho iniziato con questa domanda e finirò con questa. Spero che vi siate fatti un'idea generale di ciò che vi separa dall'obiettivo di diventare uno sviluppatore SQL. Non è un percorso facile, ma è fattibile se lo si vuole e si è pronti a impegnarsi. Una volta apprese le basi e ottenuto il primo lavoro come sviluppatore SQL, continuerete a imparare ogni giorno di più. Ma come ama dire mia nonna (che lavorava come insegnante):

Impariamo per tutta la vita e moriamo comunque stupidi.

Lo stesso vale per gli sviluppatori SQL. Non saprete mai tutto. Ma se conoscete le cose più importanti e le gestite bene, è più che sufficiente. Imparerete altre cose lungo la strada, quando saranno necessarie.