Quality freak, clean code preacher, TDD enthusiast, pair-programming practitioner. In love with Java since the start of my career, excited about devops in the last few years. Developing highly-available core systems at Rabobank.
A "greenfield project" is used as a highlight in software engineering job offers. On the contrary, a
"legacy project" is considered a nightmare that nobody would choose for willingly. Yet the
moment our fingers touch the keyboard, we are creating exactly that - our legacy.
Often with a sense of purpose and pride towards our own creation, while at the same time cursing the legacy
left by others. How is it that even with the best intentions, systems tend to turn into a
Frankenstein monstrosity? How can we, software engineers and architects, reduce the rot of our
applications?
We can't build with a fully future-proof design, but we can make it age slower. I will
discuss how to separate essential complexity of a problem from accidental complexity
introduced by technology, people and communication, and show ways to manage the latter.
A "greenfield project" is used as a highlight in software engineering job offers. On the contrary, a
"legacy project" is considered a nightmare that nobody would choose for willingly. Yet the
moment our fingers touch the keyboard, we are creating exactly that - our legacy.
Often with a sense of purpose and pride towards our own creation, while at the same time cursing the legacy
left by others. How is it that even with the best intentions, systems tend to turn into a
Frankenstein monstrosity? How can we, software engineers and architects, reduce the rot of our
applications?
We can't build with a fully future-proof design, but we can make it age slower. I will
discuss how to separate essential complexity of a problem from accidental complexity
introduced by technology, people and communication, and show ways to manage the latter.
Searching for speaker images...
