Nel mio post precedente, ho scritto di come ho incontrato inaspettatamente PrestaShop 1.1 mentre lavoravo al mio primo e unico lavoro fisso. Questo passo apparentemente casuale si è rivelato un momento cruciale che in seguito ha portato alla creazione di PrestaRock – probabilmente l’agenzia leader di soluzioni PrestaShop in Lituania.
Mentre crescevo e mi sviluppavo come professionista, con riluttanza e timore ho fatto la transizione dal lavoro sotto contratto freelance a stabilirmi come lavoratore autonomo. Ricordo che decidere di aprire una partita IVA è stato un processo doloroso di due o tre settimane, durante il quale temevo le tasse – come avrei dovuto consegnare quasi un terzo dei miei guadagni? Non ero sicuro di poter gestire correttamente e contabilizzare questa attività. Non sapevo come emettere fatture o cosa significasse essere un contribuente IVA.
Tuttavia, ho preso la decisione e sono diventato un lavoratore autonomo indipendente.
In questa fase della mia vita, probabilmente durante il mio primo o secondo anno di università, avevo un reddito stabile da lavori e progetti di programmazione regolari. I miei compagni di classe, proprio come ai tempi della scuola quando portavo articoli, a volte mi chiedevano ironicamente chi pensassi di essere per definirmi programmatore senza nemmeno aver finito l’università.
Tuttavia, di recente, uno di quei compagni di classe mi ha fatto un complimento, dicendo: “Ho letto i tuoi post e non mi ero mai reso conto che lavoravi costantemente mentre studiavi.” Esatto! Durante il mio primo anno, ho persino ricevuto una borsa di studio. In seguito, ho capito che per ottenere un voto perfetto dovevo mettere molto più impegno rispetto a un voto da 8 o 9, cosa perfettamente accettabile per me.
Mentre studiavo e programmavo, i docenti mi lodavano spesso perché avevo già affrontato specifici algoritmi o lavori di progetto in scenari reali, cosa che apprezzavano molto. Ho avuto l’onore di studiare C++ all’università sotto la guida di J. Blonskis, una delle leggende della Facoltà di Informatica della Università di Tecnologia di Kaunas.
Studiare all’università ha posto le basi per importanti competenze di programmazione, pensiero critico e apprendimento, quindi sono fermamente convinto che se si vuole diventare un vero programmatore, completare solo alcuni corsi non è sufficiente. Un buon programmatore deve avere una solida formazione formale; altrimenti, rimangono solo dei “script-kid”.
I primi due anni di università sono probabilmente stati i più difficili perché gli studi erano pieni di materie astratte che sembravano non avere nulla a che fare con la programmazione, come la matematica, la fisica o la filosofia che si portava dietro dal liceo.
Tuttavia, sono estremamente grato alla mia docente di matematica, Nijolė Janušauskaitė. Mi ha insegnato una competenza preziosa – comunicare con i clienti in modo preciso, utilizzando la terminologia corretta e capendo che la matematica è una scienza della precisione. Questa competenza potrebbe non entusiasmare sempre i colleghi, poiché li sfido oggi proprio come lei ci sfidava. Mi rifiuto di continuare se le loro risposte o domande non sono precise e ben formulate.
Ricordo come ci chiedeva la stessa domanda quattro o cinque volte finché non riuscivi a rispondere con precisione e correttezza – precisamente, concisamente, chiaramente e con la terminologia corretta, priva di interpretazioni personali. Insegno attivamente questa competenza ai miei project manager, analisti e team leader, sottolineando che anche una singola frase male formulata può avere conseguenze significative in situazioni non conflittuali con i clienti.
Un’altra delle sue forze era la sua equità nel formulare compiti e esami. Era sistematica e progettava compiti così chiaramente che potevi comunque ottenere un voto sufficiente anche se mancavi di talento o pensiero logico. Per coloro che puntavano a un punteggio perfetto, c’era sempre un problema leggermente più impegnativo, ma risolvibile. Questo approccio ti permetteva di decidere quanto impegno mettere e a quale voto puntare. C’era un sistema in tutto, persino nelle valutazioni.
Molti studenti, me compreso, maledicevano mentre programmando in C++ perché sembrava di non poter creare o imparare nulla di valore. Ma quei primi due anni non erano per creare prodotti funzionali; ci insegnavano a pensare come programmatori.
J. Blonskis e il suo team di docenti di programmazione ci hanno insegnato a pensare in modo algoritmico. Durante le sue lezioni, scrivevamo codice su carta senza possibilità di debuggarlo. Era brutale, e tutti odiavano quelle valutazioni, ma oggi capisco che la programmazione riguarda il modo in cui pensi, non solo l’atto di scrivere codice. Questa competenza è la più critica per il successo nella carriera di un programmatore.
Non ricordo il nome del mio docente di fisica, ma ci faceva prendere appunti durante le sue lezioni, scrivendo quasi parola per parola i suoi pensieri. Sembrava una pratica antiquata, ma si è rivelata incredibilmente efficace. Scrivere le cose ci aiutava a ricordare e imparare, anche senza rendercene conto. Le sue spiegazioni, seppur semplici, mi ricordavano spesso i video didattici in stile Harvard su YouTube. Anche se la fisica è sempre stata una sfida per me, questo docente chiariva anche i concetti più complessi.
Il lavoro di laboratorio di fisica mi ha insegnato un’altra competenza preziosa che in seguito si è rivelata utile nella mia carriera. Anche se potevi condurre gli esperimenti nel modo che preferivi (e riuscivano solo a volte), difendere il tuo rapporto e analisi era una missione quasi impossibile. I docenti esaminavano ogni piccolo dettaglio, a volte senza tregua. Tuttavia, questo mi ha insegnato come scrivere specifiche, relazioni ed esplanazioni chiare e corrette per i clienti.
Ancora oggi, la nostra azienda ha regole ben definite per formulare domande ai clienti – se dovrebbero essere aperte o chiuse e quando usarne una o l’altra. Abbiamo linee guida per buone e corrette risposte, utilizzate da tutti, dai tester ai project manager e ai programmatori. E sì, proprio come quei docenti di fisica, insisto sulle risposte corrette e le restituisco ai colleghi finché non sono scritte correttamente, evitando discussioni “ping-pong” senza senso con i clienti.
Attraverso queste sessioni di laboratorio, ho imparato anche alcuni principi di vita fondamentali. Ad esempio, devi scrivere conclusioni solide anche se il tuo esperimento è fallito e non hai ottenuto i risultati desiderati. Quando fatti bene, nessuno potrebbe notare gli errori, o almeno capirà che nonostante gli errori, comprendi l’essenza del soggetto e puoi spiegare perché i risultati non sono stati come previsto.
Oggi, sono imbarazzato nell’ammettere che c’è un post sul mio blog in cui ho contemplato l’idea di abbandonare l’università. A quel tempo, era di moda pensare di poter essere un programmatore senza una laurea perché si stava già guadagnando soldi. Ed era esattamente quello che facevo – e piuttosto con successo.
Sono orgoglioso di dire che mi sono laureato alla KTU, indubbiamente la migliore e di più alto livello università della Lituania per i programmatori. Nella mia esperienza, assumere professionisti è diverso dall’Università di Vilnius. La KTU è l’unica università della Lituania in grado di produrre veri programmatori.
Forse non è un caso che oggi sia un ex allievo e mentore presso Kaunas University of Technology, cercando di restituire alcuni di quei punti “casuali” di karma aiutando uno o due studenti a crescere ogni anno accademico o a diventare un punto di svolta nella loro vita.
Ecco perché l’università non è solo per fare networking, nonostante ciò che spesso sottolineano gli specialisti di marketing delle università private ed costose. Prima di tutto, si tratta di imparare a imparare. L’università mi ha instillato una competenza cruciale: la capacità di imparare e crescere continuamente, di svilupparsi e non smettere mai nel mio campo professionale. E, come diventerà evidente nei miei futuri post, questo è inscindibile dal successo nella carriera.
Siamo professionisti dell’e-commerce e realizziamo negozi online PrestaShop dal 2008.
Nessun negozio online è utile senza comprendere il business che lo sostiene. Analizziamo i processi interni, definiamo i profili dei clienti, conduciamo ricerche sui concorrenti e fissiamo obiettivi misurabili per garantire il successo nel mondo omnicanale.
Ogni parte di un negozio online, dalle integrazioni alla ricerca fino al checkout, deve funzionare senza intoppi. I nostri sviluppatori esperti garantiscono codice veloce, scalabile e di alta qualità per prestazioni ottimali.
Alti tassi di conversione si ottengono attraverso un’architettura informativa strategica e un design eccezionale. La nostra esperienza in UI/UX garantisce una connessione fluida tra il tuo business e i tuoi clienti.
L’e-commerce è un sistema in continua evoluzione che richiede supporto tecnico 24/7 e tempi di risposta rapidi. Il nostro accordo di supporto garantisce un tempo di reazione di 1 ora per bug critici.