Il CEO di un’azienda è quasi sempre la figura carismatica da cui dipende il successo dell’impresa, ne incarna i valori e ne tiene saldamente le redini, quasi sempre è il frontman che galvanizza i dipendenti e ammalia i finanziatori. A seconda dei gusti possiamo immaginarlo al timone di una nave, scegliete voi le dimensioni e la velocità di punta, coi capelli lunghi accarezzati dal vento, che tiene saldamente il timone con una mano mentre con l’altra parla al cellulare, lo so l’incanto è stato spezzato ma senza almeno un cellulare un CEO non è facilmente identificabile.
Bene ora scendiamo giù dalla plancia, attraversiamo cabine, stive, garage, cabina radio, terza classe ed eccoci finalmente nella sala macchine, un tripudio di vapori, grasso da macchine e rumori assordanti.
In questo inferno dantesco, oltre a sviluppatori dannati per il solo fatto di non aver scelto un lavoro più umano, si erge un angelo caduto: il CTO.
Identificarlo non è sempre facile perché a seconda del backlog quotidiano potrebbe essere vestito addirittura in giacca, credetemi ne ho visti più di uno. In realtà nessuno sa bene cosa sia esattamente un CTO.
Lo stereotipo più popolare è il classico nerd con barba incolta e maglietta di qualche evento improbabile, che però rappresenta il 99% dei programmatori.
Per individuare un cto è più facile studiarne il comportamento.
Articolo consigliato: CTO vs. Management, possono sedere allo stesso tavolo?
Cosa fa? dipende dalla dimensione della start up
Alcuni tipi di CTO:
Il founder tecnico : ho conosciuto persone che pur essendo gli unici dev di un azienda facevano gli stand up meeting; ok magari è un pò esagerato però riportare cerimonie agile anche quando siamo in modalità “one man band” è un buon modo di restare focalizzati .
Solitamente è impegnato la metà del tempo a sviluppare feature che nessuno ha chiesto, passa un altro 50% per cento a inseguire il CEO per avere chiarimenti su mail troppo lunghe per essere lette, ancora un 50% a debuggare e rifattorizzare il suo codice, il rimanente 50% a studiare linguaggi che promettono performance pazzesche ma che nella realtà fanno impazzire solo chi le utilizza. Il risultato delle attività è naturalmente il 200% perchè i CTO/founder hanno performance assolutamente fuori scala, questo non è quasi mai un bene per l’azienda e sicuramente non è mai un bene per il CTO
Il Dev solitario: è il primo dev che arriva in azienda, si occupa lui di tutto ed è quindi nominato Cto per mancanza di altri candidati.
All’inizio non gli dispiace aiutare i colleghi babbani a creare macro su excel o spiegare come si usano gli stili in word, poi, improvvisamente, le cose cambiano, un giorno il CEO si ricorda che alla base del business c’è un software che ancora non si vede e chiede lumi, diventa intrattabile e si mette le cuffie anche per andare in bagno. Recupera con immane fatica il gap iniziale, ma nessuno sembra accorgersene finché incomincia a riammodernare pagina LinkedIn e curriculum.
Lead engineer di un piccolo team: il primo serio distacco dal codice arriva in questo scenario, qualsiasi persona che abbia mai avuto un’esperienza del genere potrà citarvi come competenze chiave: Focalizzazione sugli obiettivi, conoscere i pregi e i difetti di ciascun membro del team, fornire feedback regolare, mantenere alta la motivazione etc.
Tutte competenze relative alla gestione del team e quasi nessuna skill tecnica, una volta che vi danno responsabilità sulle persone quella diventa la priorità.
In molti casi ho visto ingegneri brillanti tornare a programmare dopo brevi esperienze da Lead, le persone non possono essere formattate e dotate di un sistema operativo diverso, sollevando l’annosa questione se si sta facendo uno “step back” o uno “step aside”, ma questo può essere lo spunto su cui fare altri tipi di riflessioni
Capo del team di prodotto
E’ un ruolo abbastanza autoesplicativo, senza voler entrare nei dettagli la leggenda vuole che, ogni qualvolta qualcuno in quel ruolo pensa di dare una mano ai team di sviluppo aprendo anche una semplice console, un bambino dall’altra parte del mondo inizia a piangere a dirotto. Un corollario che porta anche un pò sfiga ma che per esperienza ritengo sia vero è che lo sviluppo del prodotto rallenta in modo direttamente proporzionale alle ore che il CTO spende sul codice.
Capo del team di ingegneri
Vedi sopra, con la differenza che invece del singolo prodotto, rallenta tutta l’azienda. I vostri collaboratori vi accuseranno di micro-management, alcuni dei vostri fedelissimi useranno ogni vostro errore di pronuncia per darvi dell’anziano sorpassato, tutti gli altri settori cercheranno di intaccare il vostro budget facendo elucubrazioni assurde tipo imputarvi qualsiasi spesa solo perché avete la parte più sostanziosa.
In uno scenario simile, sicuramente paradossale ma visto non so quante volte, un ritorno al codice sarà possibile solo se ordinato dal medico come anti stress.
Video consigliato: Should the CTO be coding or not?
Cosa dovrebbe fare
Un CTO ideale dovrebbe:
Occuparsi del recruiting
Prendere le persone giuste fa la differenza, ma al momento anche prendere delle persone sta diventando difficile con un mercato pieno di offerte per le quali si propongono candidati assolutamente acerbi. Una volta assunti poi c’è il problema della retention, e, come dico sempre durante le mie interviews, i soldi sono solo una parte, nella scelta del lavoro pesa tantissimo la qualità del vostro team leader
Fare coaching e mentoring
Altro elemento importante per le persone che lavorano con voi: tutti i dev vogliono accrescere le loro skill, è un dato di fatto. Il CTO deve farsi carico di questa esigenza , a tutti i livelli, per coordinare e aiutare le persone a crescere costantemente , misurando e discutendo i risultati coi diretti interessati
Aiutare i dev a definire il loro percorsi di carriera
Abbiamo già detto di come non tutti i dev abbiano interesse a intraprendere una carriera manageriale, ma di come questo a volte diventi evidente solo quando si è già fatto il salto, lasciando un pò l’amaro in bocca ai protagonisti. Il CTO dovrebbe mettere a disposizione la sua esperienza cercando di capire e far emergere i tratti decisivi per impostare un percorso di carriera che sia il più soddisfacente possibile
Aiutare a definire la struttura del team
Questo indipendentemente dal numero dei suoi componenti. Non importa se un team ha due o venti dev, la struttura del team deve essere ottimizzata per far si che si lavori senza ‘sprechi’ rimanendo focalizzati e creando un ambiente collaborativo in cui tutti sono orientati al risultato
Influenzare la Cultura Informatica
Mi suona sempre strano quando sento che qualcuno non ha mai partecipato a conferenze o meetup. Da consulente ho girato un sacco di aziende ed ho sempre cercato di fare proseliti. Ho sempre aiutato CTO ad organizzare eventi e li ho sempre spronati ad organizzare meetup. Coinvolgere le persone è sicuramente una delle cose più difficili, ma circondarsi di dev attenti e curiosi è un must per ogni start up che si rispetti
Mantenere una visione sul futuro
Non mi piacciono le analogie tra start up e navi pirata (e ne hai appena usata una come incipit…), le trovo abbastanza trite e ritrite. Per quanto riguarda il tracciamento della rotta però, devo fare un’eccezione, niente getta il team nello sconforto come obiettivi poco chiari e confusione su come perseguirli. Senza dover applicare principi cartesiani, al CTO è sempre chiesta una visione nitida e focalizzata, altrimenti le analogie si sposteranno tutte verso delle navi fantasma.
Il CTO dovrebbe avere due sole preoccupazioni:
- Consegnare prodotti che soddisfino i requisiti
- Creare un ambiente lavorativo in cui tutti, e in particolare i dev, si sentano coinvolti nel progetto
Come abbiamo visto scrivere codice può andar bene in startup molto piccole o in periodi di emergenza, ma in un contesto in cui si cercano economie di scala anche negli acquisti alla macchinetta del caffè, occorre agire lì dove le proprie azioni diventano una leva per il resto dell’organizzazione. Potrete sempre pensare ai bei tempi in cui scrivevate un app da soli, chiusi nella stanza in una notte insonne, ma diciamoci la verità quei tempi sono finiti da un pezzo, è devo dire per fortuna…