Alpha Marketing Logo [white-optimized]

Interviste

Software Developer
Agostino Piqué

Agostino Piqué - Software Developer - Interviste - alphamarketing.it
Gli inizi

Cosa ti ha spinto ad intraprendere il percorso di studi in Boolean Careers? C’è stato un momento specifico in cui hai capito che volevi diventare Developer?

Ho iniziato il percorso con boolean con la voglia di volermi reinventare in un percorso di carriera che rispecchiava meglio le mie necessita e le mie passioni ed interessi.
Mi è sembrata la via piu interessante e promettente basandomi anche su conversazioni fatte con ex-studenti che ho contattato su linkedin.

Futuro di MAUI

L’introduzione di MAUI nel mondo dello sviluppo ha aperto nuove possibilità per le app multiplatform. Come vedi il futuro di questa tecnologia?

La tecnologia di maui porta avanti quella che era l’eredità del vecchio Xamarin, permettendo di scrivere del codice che può essere eseguito su più piattaforme. E’ sicuramente una tecnologia interessante che permette uno sviluppo più rapido e comodo di applicazioni. Credo che mi accompagnerà per molto tempo, vista la sua utilità e la sua giovinezza nel mondo dello sviluppo.

Docker

Che ruolo giocano i container come Docker nel tuo lavoro quotidiano, e come pensi che abbiano rivoluzionato il processo di sviluppo e deployment?

I container come Docker giocano un ruolo chiave nel rendere il lavoro di sviluppo e deployment più semplice ed efficiente. Permettono di creare ambienti di lavoro isolati e consistenti, eliminando il classico problema del “funziona sul mio computer ma non sul server”. Con Docker, possiamo pacchettizzare un’applicazione con tutte le sue dipendenze in un’immagine, garantendo che funzioni allo stesso modo ovunque venga eseguita.

Limiti dell’AI

Quali sono i limiti attuali dell’AI nello sviluppo software, considerando l’uso di chatbot per il coding e il debugging?

L’uso dell’AI per lo sviluppo è ormai una pratica molto usata. Permette di debuggare del codice in maniera semplice e veloce dando magari anche alternative al codice inizialmente fornito.
Non è però una tecnologia perfetta: serve sempre dello spirito critico e la capacità di comprendere cosa ci viene proposto dal chatbot per capire quando quanto presentato come risposta sia valida oppure sia un’errata interpretazione da parte del chatbot per mancanza di conoscenza di dominio.


Tutto sommato si tratta comunque di una tecnologia in rapida crescita che migliorera di anno in anno. Non bisogna però abusarne e cercare sempre di ragionare con la propria testa invece di far fare tutto alla macchina senza nemmeno provarci.

Nuovi Ruoli e Skill

Quali sono i limiti attuali dell’AI nello sviluppo software, considerando l’uso di chatbot per il coding e il debugging?

Come già citato, il ruolo del prompt engineer sarà sicuramente una posizione molto ricercata, come altri ruoli che ruotano intorno all’intelligenza artificiale. Linguaggi come Python saranno sempre più richiesti, il che suggerisce quindi a chi si sta approcciando adesso alla programmazione, ad investirci tempo e risorse per riuscire ad impararlo al meglio e in profondità.

Il tuo approccio

Quali principi segui per scrivere codice leggibile e manutenibile, e come bilanci queste pratiche con l’efficienza e le prestazioni?

Quando si scrive codice è sempre preferibile cercare di essere il piu chiari e puliti possibile, dal nome delle variabili al nome delle funzioni. Sarebbe anche ottimale scrivere un minimo di documentazione sulle funzionalità che vengono sviluppate nel corso del tempo, in modo da poter capire tramite un rapido commento, cosa fa e a cosa serve un determinato metodo.
In ogni caso vale sempre il concetto di “anche se ora capisci cosa fa il tuo codice, tra una settimana te ne sarai già dimenticato”.
Commenta sempre il tuo codice.

Teamwork

Lavorare in team è una parte fondamentale dello sviluppo software. Quali lezioni hai imparato collaborando con altri sviluppatori, e come queste influenzano il tuo approccio al lavoro?

Il lavoro in team, come già detto, è una parte fondamentale. C’è sempre un’altra persona con la quale dobbiamo interfacciarci, che sia un project manager o il cliente.
Lavorare con un team ti permette di apprendere conoscenze da chi ha una seniority più alta della tua, sia per trapasso di nozioni sia attraverso le cosiddette Code Reviews, durante le quali vai a rivedere e a spiegare il codice che scrivi ad altri dev, a volte anche non facenti parte del tuo team, in modo da ricevere commenti costruttivi e magari suggerimenti su approcci alternativi per risolvere le problematiche che hai dovuto affrontare.
Inoltre, lavorare in team ti permette di entrare in contatto con persone che sono in grado di consigliarti al meglio su possibili percorsi di crescita.

Team Ideale

Qual è la tua idea di Team ideale e come dovrebbe lavorare per ottenere i migliori risultati?

Il mio team ideale è un team affiatato e amichevole, che crea un ambiente in cui ci si può sentire liberi di dare voce a dubbi o perplessità senza essere giudicati.
Il mio team ideale lavora con metodologie Agile, che permette di avere un flusso costante di task ben definiti e suddivisi, in modo da poter cominciare un compito fin da subito e avere sempre attività da svolgere.

Sfide Scalabilità

Quali sono le principali sfide nello sviluppo di applicazioni scalabili e ad alte prestazioni? Puoi condividere un esempio pratico di come hai affrontato e risolto un problema?

Le principali sfide nello sviluppo sono la capacità di rimanere resiliente tra un problema e l’altro, il non farsi abbattere dalla sensazione di inadeguatezza che si può provare e il non aver paura di chiedere aiuto ad un membro del team quando si rimane bloccati. Siamo tutti costanti studenti, alcuni più avanti di altri e non c’è niente di male nel chiedere aiuto.
Quando incappo in un problema cerco di capire inizialmente se si tratta di una problematica dovuta ad un errore di battitura. Una volta appurato che non è quello il problema comincia la ricerca sul messaggio di errore che incontriamo. 9 volte su 10, gli errori che potremmo incontrare sono già capitati a qualcuno e sicuramente se ne trova traccia online, che sia attraverso forum come StackOverflow oppure sulle documentazioni della tecnologia che stiamo utilizzando.
Da lì si trovano una pletora di soluzioni che possiamo provare per risolvere il nostro problema.
E se proprio non riusciamo a trovare una soluzione nei primi 30-40 minuti allora è giunto il momento di chiedere un consiglio ad un nostro collega più esperto.

Consiglio per i Jr

Qual è il consiglio più importante che daresti a un aspirante sviluppatore che vuole iniziare una carriera nell’IT?

Consiglio a chi comincia ad approcciarsi allo sviluppo di non farsi scoraggiare dalla quantità di materiale da studiare. Nessuno sa tutto, e se anche impari una tecnologia, se non la usi spesso, finirai col dimenticare come si usa. E va bene così.
Inoltre, consiglio di utilizzare mezzi che ti permettono di mettere subito in pratica quello che impari, così da capire al meglio quello che stai studiando e anche rendere il processo più piacevole e soddisfacente.


Cerca coding challenges, idee per progetti da mettere nel tuo portfolio e unisciti a forum e gruppi che condividono il tuo interesse per lo sviluppo in generale o per un linguaggio/framework preciso, in modo da entrare in contatto con tante persone con esperienze differenti. Se puoi, consiglio anche di frequentare eventi di persona: sono un’ottima occasione per conoscere sviluppatori di altri paesi o personaggi che giocano ruoli fondamentali nello sviluppo delle tecnologie stesse che usiamo ogni giorno.

Progetti

Per concludere, c’è un progetto personale o professionale che vorresti condividere con i nostri lettori? Dove possono seguirti per conoscere meglio il tuo lavoro?

Per chi avesse qualche altra domanda o curiosità da chiedere può contattarmi sul mio profilo LinkedIn

E se qualcuno vuole esplorare un po’ di progetti che ho fatto nel corso degli studi può vedere il mio profilo GitHub  

web-design [service] - alphamarketing.it

Realizzazione Siti Web

web-design [service] - alphamarketing.it

E-Commerce

Web Design

Creiamo siti Web e negozi E-Commerce su misura, con alte prestazioni e un design professionale. Dalla progettazione personalizzata alla configurazione sicura dei pagamenti, ottimizziamo la tua presenza online per aumentare le vendite.

social media [service] - alphamarketing.it

Gestione Social

seo [service] - alphamarketing.it

Ottimizzazione SEO

Digital Marketing

Offriamo soluzioni complete di Marketing Digitale per potenziare la tua presenza online. Dalla gestione dei Social Media e SEO all'ottimizzazione grafica e copywriting, sviluppiamo strategie personalizzate per attrarre, coinvolgere e fidelizzare il tuo pubblico.

graphic design & branding [service] - alphamarketing.it

Grafica & Branding

copywriting [service] - alphamarketing.it

Copywriting

web-design [service] - alphamarketing.it

Servizi Fotografici

Produzione Video [services] - alphamarketing.it

Video Professionali

Foto & Video

Rivoluziona la tua comunicazione visiva con Foto, Video, Riprese con Drone e Tour Virtuali 360°. Creiamo contenuti originali e professionali per valorizzare la tua attività e attrarre l'attenzione del tuo pubblico online.

Riprese-aeree-con-Drone-Service-Background-alphamarketing.it

Riprese aeree con Drone

Produzione Video [services] - alphamarketing.it

Video 360°, VR & Virtual Tour

web-design [service] - alphamarketing.it

Il Nostro Team

Produzione Video [services] - alphamarketing.it

Portfolio Clienti

Produzione Video [services] - alphamarketing.it

Siamo giusti per te?

Produzione Video [services] - alphamarketing.it

Blog

Produzione Video [services] - alphamarketing.it

Interviste a Professionisti

Produzione Video [services] - alphamarketing.it

Contatti