"Hundred
developers can be wrong."
— Sam Rain
— Sam Rain
Het is hartje zomer. Iedereen is op vakantie, behalve een
collega en ik. Een nieuwe versie van het vlaggenschip is uit en er wordt geen
storm verwacht. Sterker nog, het is de versie waar vele problemen mee zouden
zijn verholpen. Het is rustig, want elders in de wereld geniet men van de
zomer. Behalve een collega en ik. We zitten wacht te houden alsof we aan de
Korea-lijn zitten. Het vlaggenschip wordt vaak in een simulatie omgeving
getest, dus productie problemen hoeven we niet te verwachten.
De telefoon gaat. Een vriendelijke verwelkoming die
onmiddellijk teniet wordt gedaan door de nerveuze man aan de andere kant. Er
zijn problemen met het vlaggenschip. En dat nog eens op productieniveau. Ik
vraag vriendelijk naar de standaard vragenlijst, terwijl de nervositeit
toeneemt aan de andere kant. De klant zou vandaag gaan werken met de nieuwe
versie, maar het blijkt dat in de testomgeving het gebeuren vlekkeloos gaat,
maar in productie alle transacties op hun gat liggen. De nerveuze man maakt
duidelijk dat de database steeds voller raakt. En ik besef me dat het probleem
groter is dan een installatieprobleem.
Wanneer een systeem zonder beschikbare ruimte komt te staan,
volgt een crash. Oftewel, een uitval
van diensten. Nu is een computer crash de gewoonste zaak van de wereld, behalve
in de industrie waar men miljoenen kritische transacties per dag verwerkt.
Zoals bij een bank. En in dit geval een Duitse bank. Tijd is dus een
gevaarlijke factor. Uitzetten betekent een verlies van dienstverlening en
verlies van dienstverlening staat gelijk aan winstderving. Ik maak een snelle
berekening — ik heb ongeveer acht uurtjes om de zaak op te lossen.
Het is tekort dag om er naar toe te gaan. Het Amerikaanse
ontwikkelteam is zeker nog vier
uur onbereikbaar, die het vlaggenschip binnenste buiten kennen. Ik druk
op de paniek knop, een mail van hoge
prioriteit naar het senior management team. Mensen moeten uit bed worden
gebeld. Ik ben namelijk nog te onervaren.
Toch doe ik een poging om de zaak te repliceren. De eerste
reacties komen binnen. "Try to
re-install."
"Impossible. Live system.", stuur ik terug.
De telefoon gaat. Het is het hoofd van het ontwikkelingsteam, die als een profeet probeert te vertellen dat het een installatieprobleem moet zijn. Ik ben het er niet mee eens — er zijn geen artefacten in de logboekbestanden. Het onderliggend systeem werkt, totdat het vlaggenschip wordt gestart. Een andere applicatie start als gebruikelijk. Het hoofd blijft erbij; het is onmogelijk dat het aan het product ligt. "You are a smart guy, I can tell. But you lack experience with our products. Besides, hundred developers can't be wrong. Don 't worry, I have asked our Maverick to take this issue on right away."
"Impossible. Live system.", stuur ik terug.
De telefoon gaat. Het is het hoofd van het ontwikkelingsteam, die als een profeet probeert te vertellen dat het een installatieprobleem moet zijn. Ik ben het er niet mee eens — er zijn geen artefacten in de logboekbestanden. Het onderliggend systeem werkt, totdat het vlaggenschip wordt gestart. Een andere applicatie start als gebruikelijk. Het hoofd blijft erbij; het is onmogelijk dat het aan het product ligt. "You are a smart guy, I can tell. But you lack experience with our products. Besides, hundred developers can't be wrong. Don 't worry, I have asked our Maverick to take this issue on right away."
Ik heb de nerveuze man aan de lijn. Ik voel dat zijn baas
hem op de hielen zit. Hij doet zijn uiterste best en ondanks dat ik al heb
aangegeven dat de beste uit het ontwikkelteam de zaak op zich neemt, kan ik het
niet weerstaan om verder te zoeken. Na diverse inbreuken op het interne beleid,
ongeautoriseerde broncode aan te passen en de nodige plakband en nietjes op het
gebied van software, ontdek ik het probleem. Ik licht mijn manager in, die
meteen akkoord geeft om het te proberen.
Het werkt. Klant blij. Manager blij. Collega blij. Behalve
in Amerika. Want daar moest een hoofd toegeven dat "hundred developers can be wrong" een statement is die waar kan
zijn.