Vastgelopen software overnemen en doorbouwen
DoorbouwenGroothandel met maatwerk-software

Vastgelopen software overnemen en doorbouwen

Ontwikkelaar vertrokken of maatwerk-systeem vastgelopen? Ik neem de code over, breng hem in kaart, maak hem weer veilig deploybaar en bouw door zonder alles opnieuw te bouwen.

Probeer het zelf

Een groothandel draaide op een maatwerk-systeem dat jaren goed had gewerkt, tot de bouwer vertrok. Niemand durfde nog iets te wijzigen, deployen ging met de hand en bij elke aanpassing hield iedereen zijn adem in. Ik nam de code over, bracht hem stuk voor stuk in kaart, zette er een vangnet omheen en maakte hem weer veilig te wijzigen en uit te rollen. Daarna kon het doorbouwen weer beginnen, zonder de maanden stilstand van een herbouw. De demo hieronder toont een tijdlijn van zo een overname: wat ik aantref, wat ik als eerste veiligstel en wat ik daarna moderniseer.

takeover.app
Demo laden…

Vereenvoudigde demo met voorbeelddata · een voorproef, geen volledig product

De uitdaging

Werkende software die niemand meer aandurft

De software deed nog gewoon zijn werk, maar de kennis was met de vorige ontwikkelaar de deur uit gelopen. Geen documentatie, geen tests, en deployen betekende handmatig bestanden naar de server kopiëren. Elke wijziging voelde als een gok: werkt het nog, of ligt de hele orderverwerking eruit? Het gevolg was verlamming. Kleine verbeteringen bleven liggen, technische schuld stapelde op en het systeem werd langzaam een risico in plaats van een hulpmiddel.

Aanpak

De grote lijnen

Eerst begrijpen, dan aanraken

Ik breng de hele codebase in kaart en krijg hem lokaal draaiend voordat ik ook maar één regel verander. Je kunt niets veilig wijzigen wat je niet begrijpt.

Een vangnet voor ik iets verander

Tests rond de kritieke paden en een veilige, reviewbare deploy, zodat een wijziging niet ongemerkt iets anders sloopt.

Doorbouwen, niet herbouwen

Ik moderniseer stap voor stap achter de schermen terwijl het systeem blijft draaien, in plaats van maanden stil te staan voor een big bang.

Onder de motorkap

Zo bouw ik dit

De keuzes achter de demo, eerlijk uitgelegd. Dit is de opzet zoals ik hem in de praktijk bouw, geen afgeschermde black box.

01

Ik begin met een codekaart, geen refactor

Voordat ik iets verander, lees ik de hele codebase, krijg hem lokaal draaiend en documenteer wat waar zit, welke delen dood zijn en waar het risico schuilt. Dat doe ik eerst omdat de grootste fout bij een overname is: meteen beginnen met opruimen. Zonder overzicht ruim je nét het stuk op dat stilletjes de facturatie draaiende houdt.

02

Ik zet de code onder fatsoenlijk versiebeheer

Veel overgenomen projecten staan los op een productieserver, zonder git en zonder historie. Ik zet alles in GitHub met een nette branch-flow en reviewbare commits, omdat je pas durft te veranderen als elke wijziging traceerbaar en in één klik terug te draaien is. Vanaf dat moment is er geen enkele wijziging meer die je niet kunt herleiden.

03

Ik leg een vangnet van tests om de kritieke paden

Zonder tests ben ik bij elke aanpassing blind. Ik dek daarom eerst de flows af waar geld en klantdata omgaan: inloggen, orders, facturatie. Dat doe ik vóór het echte werk, omdat de tests mij het vertrouwen geven om te durven veranderen. Elke volgende wijziging wordt zo veiliger dan de vorige, in plaats van eng.

04

Ik herstel de build en automatiseer de deploy

Handmatig bestanden naar de server slepen is precies de reden dat niemand meer durfde te releasen. Ik zet een CI-pijplijn op die bij elke wijziging test en pas uitrolt als alles klopt, met een terugrol-knop achter de hand. Dat maakt releasen weer saai en veilig, en dat is precies de bedoeling: saai betekent dat je erop kunt vertrouwen.

05

Ik moderniseer stap voor stap, niet in één big bang

Een herbouw kost maanden stilstand en gooit jarenlange bedrijfslogica weg. Ik vervang liever verouderde delen achter de schermen terwijl het systeem blijft draaien: onveilige afhankelijkheden bijwerken, de databaselaag naar een beheerde Postgres tillen, dode code weghalen en koppelingen herstellen die onderweg zijn gesneuveld, zoals de mailnotificaties via Outlook. Zo schuif ik een moderne basis onder een werkend systeem, zonder dat de operatie ooit stilligt.

Wat het kan

Volledige, terugdraaibare historie

Elke wijziging in git, traceerbaar en in één klik terug te draaien.

Testdekking op de kritieke flows

De paden waar geld en klantdata omgaan zijn afgedekt en bewaakt.

Automatische, veilige deploys

Releasen met één druk op de knop, inclusief terugrol-optie.

Moderne, beheerde database

Van een kwetsbare eigen server naar managed Postgres met back-ups.

Afhankelijkheden weer up-to-date

Verouderde en onveilige packages bijgewerkt en beheersbaar gehouden.

Documentatie die klopt

Een leesbaar overzicht zodat een volgende ontwikkelaar meteen mee kan.

Wat het oplevert

Een systeem dat weer veilig te wijzigen en te deployen is
Geen afhankelijkheid meer van één vertrokken ontwikkelaar
Doorbouwen zonder de maanden stilstand van een herbouw
Volledige grip: code, historie en documentatie in eigen beheer

Techniek

Codebase-auditGit & GitHub ActionsGeautomatiseerde testsCI/CDSupabase / PostgreSQLIncrementele refactoring
Beter samen

Combineert met de rest

Elk onderdeel werkt op zichzelf, maar wordt sterker in combinatie. Een paar voorbeelden uit de praktijk:

Overnemen, moderniseren, doorbouwen

Een oud systeem wordt weer een fundament.

  1. 1Ik neem de vastgelopen code over, breng hem in kaart en maak hem weer veilig te wijzigen.
  2. 2Nieuwe koppelingen en één bron van waarheid komen eronder te liggen.
  3. 3Een dashboard erop, zodat je weer ziet wat er in je systeem gebeurt.
Doorbouwen op wat werkt, zonder de maanden stilstand van een herbouw.

Eén waarheid over al je systemen

Overal dezelfde, actuele cijfers.

  1. 1Pipelines brengen klant-, order- en voorraaddata samen tot één bron van waarheid.
  2. 2Koppelingen houden webshop en administratie continu gelijk, met heldere voorrangsregels.
  3. 3Het realtime dashboard laat de kloppende cijfers zien, samengebracht uit al je tools.
Sturen op data die je kunt vertrouwen, in plaats van exports naast elkaar leggen.

Veelgestelde vragen

Volgende stap

Van dit voorbeeld naar jouw situatie

Deze case is een referentie-build voor Doorbouwen op bestaande software. Bekijk hoe ik dat aanpak, of doe de gratis Automatiseringsscan en zie in twee minuten waar bij jou de winst zit.

Zoiets voor jou bouwen?

Vertel me wat je voor ogen hebt of waar je tegenaan loopt, dan denk ik mee en zeg ik eerlijk wat er kan, vrijblijvend.

Bekijk alle cases