Sviluppatore web: che cosa fa, con chi lavora, a cosa deve essere preparato. È Laura a spiegarcelo. In Spindox da tre anni, ha una formazione da visual designer e un passato da freelance.

Allora, partiamo dal principio: che lavoro fai?

Sono sviluppatrice di software con tecnologie web, fra cui html, css e javascript. Inoltre faccio anche un po’ di design per l’interfaccia grafica.

In Spindox lavoro in un team che segue progetti di sviluppo di software nuovi o rifacimento di vecchi. Io in particolare programmo la parte che vede l’utente, per cui la grafica, le interazioni, tutti i comportamenti davanti al video.

Facci capire meglio. Come ti relazioni con gli altri membri del team?

Il mio lavoro viene subito dopo quello dello UX designer. Mi occupo dello sviluppo del codice, quindi front-end development.

A volte mi capita di comunicare direttamente con il cliente, ma più spesso mi confronto con l’analista funzionale. È lui o lei che si occupa di raccogliere le funzionalità da sviluppare. È la persona che effettivamente parla col cliente insieme al project manager e chiede: che cosa vuoi che faccia questo software?

Chiaro. E poi?

Poi viene da me, dallo sviluppatore, e dice: devi fare questo bottone, devi implementare queste funzionalità… Queste cose qui. A quel punto io gli chiedo sempre: va bene che ci chieda quel bottone lì, ma perché? Cerco di portare chi si interfaccia col cliente a fare una riflessione pratica.

E sei in Spindox da quanto tempo?

Da settembre 2013, tre anni. Prima avevo fatto qualcosina per conto mio, come grafica e siti web, e prima ancora ho studiato visual design qui a Milano.

Visual design?

Sì in verità io ho studiato quello, quindi grafica, pubblicità, illustrazione, tutte queste cose qui.

Infatti quando sono arrivata in Spindox all’inizio ho fatto user experience design, user interface. Dopodiché sono passata più alla parte di sviluppo e di codice vero e proprio. Adesso faccio quasi solo programmazione.

Quindi hai iniziato ad occupartene entrando in Spindox?

Avevo fatto qualcosina prima, ma cose veramente di base, è in Spindox che mi hanno lanciata verso lo sviluppo vero e proprio. Adesso faccio parte della service line Products and Services, prima ero in New Tech Solutions, quindi facevamo cose nuove, super-interattive, molto “fighe”. Cose che al cliente potevano piacere perché non le aveva mai viste. Tipo dashboard real time, mappe geografiche interattive, visualizzazione di dati relativi a vendite.

Studiare visual design è servito per il lavoro che fai ora?

Forse per quello che faccio adesso sarebbe stato meglio studiare approfonditamente lo sviluppo, però sono abbastanza contenta perché conoscendo anche la parte del design posso intervenire quando il designer vero e proprio non è disponibile.

Per esempio quando si richiede un intervento di aggiunta di funzionalità o di modifica posso farlo in autonomia, quindi anche per questo il percorso da design a sviluppo è buono. Se uno invece vuole occuparsi solo ed esclusivamente di sviluppo, suggerirei di studiare bene Javascript, Ruby o un altro linguaggio di programmazione puro.

Tutto sommato però sono soddisfatta del corso che ho fatto.

Ma parli di corso nel senso di corso di laurea?

No, un corso di laurea così mirato ai miei tempi non c’era. Avevo provato a iniziare design della comunicazione, però era troppo variegato: c’era dentro anche matematica, studio dei materiali, queste cose qui… Io non sono laureata, ma non mi pesa non aver fatto l’università.

Per quello che sto facendo io rischiava di essere tempo sprecato. Alla fine si impara tantissimo sul campo, con l’esperienza. Quando ti dicono che devi implementare un bottone in modo che faccia questa funzionalità, tu lo devi fare. O lo sai, o ti metti lì e cerchi su internet, su Google, su Stack Overflow…

Quindi in Spindox hai avuto modo di imparare.

Sì, mi hanno dato risorse da leggermi e da provare nel mio tempo libero. È stato un proseguimento del mio percorso di apprendimento.

Invece per iniziare il lavoro ti hanno contattato loro?

No, avevo visto un annuncio su monster.it, ho mandato il curriculum con lettera di presentazione. Ho fatto due colloqui, uno con HR e un altro, più tecnico, con due responsabili. Poi ho iniziato lo stage, dopo quello l’apprendistato e questo settembre il contratto a tempo indeterminato. Questo è il primo lavoro dipendente che faccio.

E com’è?

Molto più semplice (ride, ndr). Non si ha la responsabilità di tanti aspetti che da freelance bisogna seguire. A tutta la parte di marketing, comunicazione, relazione col cliente, ci pensano gli altri. Così io posso concentrarmi meglio sullo sviluppo.

Poi qui l’atmosfera è rilassata, non siamo chiusi in cubicoli a fare solo quello. L’ambiente è molto tranquillo in molti periodi dell’anno. Poi ci sono i periodi più intensi…

Tipo?

Eh, i periodi di rilascio del software! Test, bug, fretta… diventa più pesante ma ci sta. Per esempio, per un progetto dovevamo fare un digital asset management, quindi creare un sito in cui i creativi caricano i file per farli approvare o revisionare dai manager. Tutte le pubblicità, le varie immagini coordinate, loghi, eccetera, venivano raccolte qui per essere visualizzate.

E niente, da progetto abbastanza facile che era partito, si è complicato per tutta una serie di motivi. La cosa difficile è stata impostare l’upload delle immagini da mandare al server spezzettate e fargliele ricomporle in maniera giusta. Tecnicamente non è stato complicato, ma il tempo disponibile era poco.

Anche nei progetti in cui fila tutto liscio dall’inizio alla fine, c’è sempre quel periodo prima del rilascio finale in cui sei sempre sul chi vive.

Stress a parte, c’è un progetto che ti è piaciuto particolarmente?

Quello più divertente forse è stato programmare un’app per iPad per seguire una caccia al tesoro, per cui l’iPad si interfacciava con i beacon – sono degli apparecchi che emettono segnali Bluetooth per segnalare la posizione – per cui caccia al tesoro, tappe da raggiungere, sfide da superare… Quello è stato un bel progetto su cui era stata applicata una tecnologia nuova.

Anche lì ci sono stati cambiamenti e migliorie fino all’ultimo momento, si sono presentati problemi lungo il percorso, ma alla fine è andato tutto bene.

Ho capito, pazienza e perseveranza sono importanti. Cos’altro?

Capire la vera esigenza del cliente per metterla in pratica. Come ho detto prima, il cliente dice semplicemente “voglio un bottone qui”. A noi spetta il compito di chiederci se è davvero funzionale. Ci chiediamo cosa vuole si faccia effettivamente, qual è lo scopo finale, a cosa deve servire.

Dico il bottone per fare un esempio, ma parlo del software, di qualsiasi cosa. Questo è il compito principale dell’analista, ma anche lo sviluppatore deve cercare di capire la richiesta del cliente, perché tocca a lui programmare la funzionalità in modo che sia semplice, efficiente e che non richieda troppi clic.

Devi saperti immedesimare in quello di cui ha veramente bisogno il cliente. Lui chiede un risultato, di solito che la funzione da realizzare sia efficace e esteticamente bella. Il nostro lavoro consiste nel creare i presupposti per fornirgli ciò che vuole, cosa che ci spinge a porci domande più specifiche.

Dovete capire subito qual è la soluzione più adatta dal punto di vista pratico.

Esatto, serve avere sensibilità e saper individuare quale soluzione è più utile per lo scopo, evitando di perdersi in desideri imprecisi. Non fa parte del nostro lavoro.