Alla parola "ingegnere" ho dato sempre di più un rispetto maggiore nel corso del tempo. Sarà perché nei primi anni della mia carriera universitaria ho studiato per diventare fisico, e di teoria ne ho vista tanta, fino a rendermi conto che volevo iniziare in qualche modo a utilizzare quella teoria per costruire, per portare valore alla società in qualche modo.
Allo stesso tempo la parola "software" ha acquisito sempre di più il fascino dovuto alla leva che può dare nella creazione del valore, e per questo, consapevolmente o inconsapevolmente, la direzione che ho preso è quella.
Ci sono due vie per portare valore alla società:
- partire dai problemi e trovare la migliore strada, soluzione o tecnologia che possa risolverli
- partire dalla tecnologia, dalla conoscenza approfondita, dalla curiosità e capire quali problemi quella strada può aiutare a individuare e risolvere.
Nella sezione Writing porto avanti la prima direzione; qui cercherò di portare avanti la seconda.
Da dove partire?
Sicuramente da un bagaglio di modelli mentali giusti, che si applicano bene a questa professione, e dal provare ad assumere a tempo pieno una persona che in ogni momento ti ricorda: ti stai ponendo le domande giuste? Non è facile, proviamoci. Da qualche parte bisogna comunque partire. Miglioreremo tutto con il tempo e l'esperienza.
Inoltre ho ormai maturato esperienza lavorativa in diversi settori, con il vantaggio di avere una visione ampia su alcuni temi e problemi. Lo svantaggio è che, seguendo una direzione che mi ha portato ad esplorare tanto, ho alcune lacune teoriche e pratiche da colmare. Quindi riprendiamo il percorso dalle basi: più sintetico dove ho già consolidato, più approfondito dove devo ancora imparare.
Come si fa a migliorare come software engineer? Come diventare quella persona capace, attraverso lo sviluppo software, di risolvere problemi e creare valore, oggi e in futuro?
Ci sono diversi principi e modelli mentali che si applicano anche qui. Proverò a raccontare la mia versione e la direzione che sento più adatta a me. Ma, come sempre, spero che possano esserci spunti utili anche per chiunque voglia crescere come software engineer e, in generale, come persona in grado di generare valore.
Vorrei approcciarmi allo studio e alla pratica cercando di lavorare su progetti con il giusto potenziale di leva, e allo stesso tempo continuare a imparare.
Inoltre nel ruolo di software engineer una delle competenze centrali è saper prendere le scelte giuste, architettoniche e di design; tutto dipende però dal progetto e dal dare il peso giusto a requisiti, informazioni, vincoli e trade-off.
Inoltre, attenzione: sfruttiamo il blog come diario e sintesi: ormai non mi serve portare dentro definizioni, ma solo connessioni, schemi e sintesi. Per i dettagli basta una ricerca. Basta chiedere a Claude.
Farsi le giuste domande! Capire in che direzione. Anche qui diventa fondamentale.
Da dove iniziare?