Ga naar de inhoud
TimeRetain
App openen

Tijdregistratie voor developers: je eigen overzicht

Bijgewerkt 6 minuten Door David van TimeRetain

Zachte 3D-klei-illustratie van een laptop met een abstracte code-editor en pastelkleurige blokken, naast een stevige timer, vertakt git-diagram, mok en kleine plant op een licht bureau.

Tijdregistratie voor developers kan een persoonlijk overzicht van je eigen uren zijn. Je hebt geen editorplug-in of programma dat schermafbeeldingen maakt nodig om dat bij te houden.

Het overzicht kan laten zien waarom een korte taak een hele week kostte. Het kan werk beter benoemen dan ‘van alles’ en de vergadertijd optellen.

Waarvoor het overzicht dient

Een persoonlijk tijdsoverzicht kan vier praktische vragen beantwoorden:

  1. Wat deed ik deze week werkelijk? Bij je beoordeling is het een lijst van werk met datums, geen ‘aan het platform gewerkt’.
  2. Hoeveel tijd kost een taak echt? Vergelijk ramingen met geregistreerde uren om te zien welke delen je miste.
  3. Waar bleef de week? Houd functies bouwen, debuggen, reviews, vergaderen en randproblemen apart. Een vergadertotaal geeft iets concreets om te bespreken als prioriteiten botsen. Tel voorbereiding mee als je de volledige vergadertijd wilt zien.
  4. Wat factureer ik? Factureer je klanten rechtstreeks, dan heb je uren nodig met notities die de klant herkent.

Bewaar een eenvoudig overzicht voor jezelf: waaraan werkte je, voor wie en hoelang?

Gebruik handmatige tijdregistratie, met enkele bijzonderheden voor developers.

De minimale tijdregel voor developers

Houd elke regel klein genoeg om hem echt te schrijven:

VeldWaarom je het bewaart
Project of klantBij welk product, welke codebase of welke klant het werk hoort.
Begin en eindeWerkelijke grenzen, geen duur uit je geheugen.
NotitieHet resultaat, met ticket- of branchnaam als die er is.
Declarabel of nietAlleen als je factureert. Werknemers kunnen dit overslaan.

‘PROJ-142: race condition bij afrekenen opgelost’ is bij een beoordeling of factuur nog duidelijk. ‘Programmeren’ niet.

Kan een klant of manager de regel zien, beschrijf het resultaat dan in hun woorden: wat is opgelost, opgeleverd of beoordeeld? Het gevecht met webpack blijft in een privénotitie.

Je hebt geen taakboom nodig die de issuetracker kopieert.

Houd werk per project of klant bij elkaar en benoem debuggen, reviews of vergaderen om die uren tussen projecten te vergelijken.

Op een eenvoudige dag is een notitie genoeg.

Een dag die volgende maand nog duidelijk is

Een fictieve dag:

DatumBeginEindeProjectNotitieSoortTotaal
12 aug.09:1010:40AfrekenenPROJ-142: race condition bij afrekenen opgelostDebuggen1 u. 30 min.
12 aug.10:4011:20AfrekenenPR #418 over nieuwe betaalpogingen beoordeeldReview40 min.
12 aug.11:3012:20PlatformSprintplanningVergaderen50 min.
12 aug.13:1514:10AfrekenenDocumentatie over betaalproces gelezen (schatting)Onderzoek55 min.

De laatste regel is geschat op basis van de notities en agenda van de developer. Een latere commit helpt de taak herkennen, maar bewijst niet de sessieduur.

Registreer sessies, geen editoractiviteit

Een overzicht van IDE-activiteit laat twee mogelijke gaten in je eigen registratie.

Ten eerste bewijst een open editor geen werk, en een gesloten editor geen rust. Bibliotheekdocumentatie lezen, een datamodel op papier schetsen en naar het plafond staren totdat de oorzaak van een fout duidelijk wordt, horen bij de taak. Een tracker die alleen editoractiviteit volgt, kan dat missen.

Ten tweede kunnen project en bedoeling ontbreken. Een repositorynaam of venstertitel kan het project noemen. Een gedeelde documentatiepagina vertelt niet vanzelf voor welke klant je onderzoek deed.

Ontbreken labels, dan moet je het activiteitenlogboek achteraf interpreteren. Daar heeft automatische tijdregistratie jouw oordeel nodig.

Een activiteitenlogboek op de achtergrond kan als vangnet dienen dat je later indeelt. Gebruik het om gaten in je sessieoverzicht op te vullen.

Gebruik de werksessie als eenheid. Start wanneer je aan een taak gaat zitten. Stop bij een andere taak, vergadering of klant en pauzeer voor rust. Een korte notitie naast die grenzen geeft context bij het terugkijken.

Het overzicht beantwoordt jouw vragen. Je kunt het apart houden van toezicht dat je werkgever gebruikt. Houd de notities binnen wat je werkgever of klant je buiten hun systemen laat opschrijven.

Herstel een gemiste sessie zolang ze nog vers is

Een commit of pull request kan je herinneren waaraan je werkte. Agenda en berichten helpen de rest aanvullen.

Gebruik die aanwijzingen om een gemiste sessie te schatten en markeer haar als schatting. Twee commits met een uur ertussen bewijzen geen uur werk. Je kunt tussendoor pauzeren of wisselen.

Onderzoek en debuggen kunnen helemaal geen commit opleveren. Neem dat werk op zolang je het nog weet, in plaats van codewijzigingen als de hele taak te zien.

Kun je geen bruikbare schatting maken, laat de duur dan onbekend. Registreer de tijd tijdens de volgende sessie.

Gebruik uren om je ramingen te beoordelen

Leg je de volledige taaktijd vast, dan laat het overzicht zien hoe die zich tot de raming verhoudt.

Schrijf de schatting op het ticket, registreer de taak en vergelijk daarna. Zoek bij vergelijkbare taken naar twee dingen:

  • Ruimte voor werk dat je miste. Vragen vergelijkbare reparaties steeds reviews en tests buiten je raming, reserveer daar dan volgende keer tijd voor. Houd meer onzekerheid aan bij onbekend werk.
  • Waar de uitloop zit. Vergelijk programmeren, debuggen, integreren, ontwikkelomgeving instellen en reviews. Toont het overzicht een patroon, schat die delen dan apart.

Dat werkt ook bij een vaste prijs. Deel na afloop de vergoeding door alle uren voor omzet per uur vóór kosten. Gebruik de uren om vergelijkbaar werk te plannen. Je zou de volgende prijs kunnen toetsen aan kosten en inkomensdoel in plaats van dat tarief te herhalen.

Debugwerk en herstelwerk voor klanten vastleggen

Werk je niet voor klanten, sla dit onderdeel dan over. Debuggen en herstelwerk kunnen verdwijnen in een vage ontwikkelregel.

Debuggen. Leg de sessie vast en noem het resultaat: ‘Fout met dubbele webhook in het betaalproces opgespoord en opgelost’ is een regel die een klant begrijpt.

Houd testen, debuggen en herstelwerk apart als dat het terugkijken helpt. Je overzicht kan tijd bevatten die je niet factureert.

Markeer herstelwerk duidelijk om de bestede uren te beoordelen. Het onderscheid tussen declarabel en niet-declarabel helpt je het overzicht ordenen.

Uitzoekwerk dat uitloopt. Een conflict tussen afhankelijkheden kan vier uur kosten ondanks een korte taakbeschrijving. Noteer de werkelijke duur en benoem het obstakel.

Staat er minder tijd op de factuur, laat dan de vier uur in je eigen overzicht. De bronregel veranderen in ‘misschien twee’ laat informatie verdwijnen.

Houd werk zonder klant ook zichtbaar. Offertes, factureren en een framework leren waar geen klant om vroeg, komen uit dezelfde week die je factureert. Laat je ze weg, dan onderschat je hoeveel van je week het bedrijf vraagt.

Waar TimeRetain past

Een developerlogboek bevat de systemen die je gebruikt, late avonden, werkelijke vergadertijd en, als je factureert, klantnamen en tarieven. Je hoeft dat overzicht niet te uploaden om het bij te houden.

TimeRetain is een handmatige timer die het overzicht op je apparaat bewaart. Je ziet hoeveel tijd naar reviews, vergaderen of debuggen ging en wat elke sessie opleverde. Niets bekijkt je IDE.

Factureer je, gebruik de notities dan om opgeleverd werk toe te lichten. Bewaar onbetaald herstelwerk in je eigen overzicht om te zien wat het project werkelijk kostte.

De hoofdregistratie blijft op je apparaat. Schakel je synchronisatie in, dan bewaart TimeRetain een versleutelde kopie op de servers van TimeRetain.

TimeRetain

Bewaar een week die je kunt uitleggen. Registreer je volgende sessie in TimeRetain.

Begin met één week

Bouw geen systeem. Registreer een week lang alleen echte werksessies: project of klant, begin, einde en een notitie van één regel met het ticket. Gebruik git en notities om gemiste sessies te schatten zolang de dag nog vers is. Laat gaten die je niet kunt onderbouwen open.

Lees het daarna terug. Vergelijk het vergadertotaal met hoe de week voelde. Vergelijk één of twee taken met de raming. Helpt het overzicht je het werk beoordelen of een factuur voorbereiden en weegt het nut op tegen de moeite, blijf dan registreren.

Vragen en antwoorden

Hoe houden developers hun tijd bij?

Een manier is een timer starten aan het begin van een werksessie, stoppen bij een wissel en het resultaat kort noteren. Een notitieboek of spreadsheet kan hetzelfde overzicht bevatten. Documentatie lezen en over een fout nadenken horen ook bij het werk.

Hoe reconstrueer ik vergeten uren als developer?

Gebruik git-commits, pull requests, CI-runs en agenda-items als aanwijzingen, niet als bewijs van sessiegrenzen. Een reconstructie kan te hoog of te laag uitvallen omdat tussenpozen pauzes, ander werk of onderzoek zonder commit bevatten. Markeer de uren als schatting en laat de duur onbekend als er te weinig aanwijzingen zijn.

Moet ik automatische tijdregistratie gebruiken?

Een overzicht van alleen IDE-activiteit kan werk buiten de editor missen, en het kan klant- of projectlabels missen. Automatische registratie kan gemiste sessies helpen terugvinden. Kies de methode die je met minder moeite kunt uitleggen en corrigeren.

Hoe registreer ik debugwerk voor een klant?

Leg de hele debugsessie vast en beschrijf het resultaat, ook als je later een kleiner aantal uren factureert. Bewaar herstelwerk in je eigen overzicht om de bestede tijd te beoordelen.

Verbetert tijdregistratie ramingen voor ontwikkelwerk?

Geregistreerde uren vergelijken met je oorspronkelijke raming kan laten zien wat je miste. Gebruik patronen uit vergelijkbare taken om toekomstige schattingen aan te passen en houd rekening met onbekend werk en variatie.