Tag Teamcultuur

Qu'est-ce que c'est un team?

Hij reflecteert: “Het nadeel van trunk-based development is dat een probleem in de pipeline jullie nu allemaal ophoudt. Omdat mijn wijziging de build blijkt te breken, kan niets van jullie er nog door.” – “Nee,” proef ik, een intuïtie najagend. “Het voordeel van TBD is dat dit probleem ons allemaal ophoudt. Dat betekent dat we nu met elkaar moeten praten. Het voorkomt dat we op ons eigen eilandje blijven, het focust ons op het allerbelangrijkste: ervoor zorgen dat we nieuwe features en verbeteringen in de code door kunnen zetten naar de productieomgeving.”

(Overpeinzingen)

Je zegt: het is een kennisprobleem. Daar ben ik het niet mee oneens. Maar volgens mij heb ’m dan nog niet helemaal. Het gebrek aan kennis is een symptoom van een dieper liggend probleem. Vraag je af: hoe kan het dat iemand na zoveel jaar ervaring deze code schrijft, en op deze manier ook?

Hoe heb je het volgehouden?

Software ontwikkelen is niet makkelijk, het is van zichzelf al niet makkelijk en het wordt nog moeilijker omdat je met mensen werkt en mensen zijn nooit makkelijk.

Borrelpraat #2

Hij dronk cola, ik een biertje – maar verder zitten we op één lijn. Het duurde niet lang voordat het over de zoekindex ging – altijd die verdomde zoekindex. “Dat is al vanaf het begin een pijnpunt,” bekende ik. “En ik ben zelf onderdeel van het probleem geweest.”

Begin een boekenclub!

Wie software ontwikkelt, leert van zijn fouten. Wie leest over softwareontwikkeling, leert van andermans fouten. Een lust voor lezen is een cheat code die je in staat stellen in rap tempo een betere IT-professional te worden.

Over de boekenclub

Voor de vuist weg heb ik eens geroepen: “We zouden eigenlijk elke nieuwe werknemer een boek mee moeten geven als ‘ie begint. Met als (impliciete?) boodschap: we verwachten dat je dit leest. We verwachten dat je tijd vrijmaakt voor zelfstudie.” – Erop terugkijkend, was dat het prille begin van de boekenclub die ik maanden later oprichtte.

Teveel tegelijk

“We zijn met teveel dingen tegelijk bezig,” constateert een ontwikkelaar tijdens de Retrospective. Die is met dit bezig, die met dat; hij met zus en zij met zo. Er is geen eenheid, iedereen werkt op zijn eigen eiland. – Het is een terugkerend thema. Waar ligt dat aan?

Bugs zijn defecten

Een softwareontwikkelaar is: iemand die defecten fixt die hij zelf heeft geïntroduceerd.

Wat zegt deze code?

De namen in onze code – van variabelen, velden, methoden, parameters – beschrijven wat de code doet. De naam van een class beschrijft haar wezen: integer, Url, ResourceHelper. Anders dan bij mensen gaat de existentie van code niet vooraf aan haar essentie. Code is bepaald, bepaald door haar functie. Wat die functie is, weet een goede programmeur in een naam te vangen.

Formuleer je kernwaarden

Hoe ziet softwareontwikkeling er – volgens jou – idealiter uit? Hoe functioneert een ontwikkelteam op de toppen van z’n kunnen? Wat is de verhouding tot hun stakeholders en collega’s? Hoe ondersteunt het management daarin? – Als je dat plaatje eenmaal scherp hebt, wat kun je dan concluderen over de kernwaarden van waaruit je software ontwikkelt?