Kitchen Sink and Tech Debt
Last updated
Was this helpful?
Last updated
Was this helpful?
âDad, the sink in the basement is bubbling again!â, my daughter yelled. âErr, not again, not this time ...â, I cursed. This was the night before Thanksgiving. I live in a house that was built in 1960s. The drainage system was always a problem since I moved in, especially around the kitchen drain. I could have replaced the whole drainage plumbing system. But it means I will have to dismantle all the flooring and dry walls in the basement, which amounts to 150k+ cost easily. I might as well tear down the house and build a new one. Instead I have been doing some light maintenance to keep the water flowing. Twice a year I have to call the drain unclogging company to rescue me. They use powerful drain snakes to unclog the pipes, then they leave me a $600 bill. After a few minutes of contemplating why life is so unfair to me, I called the unclogging company, luckily they showed up the next day. The episode reminded me of the conversation I had with another manager about tech debt. âWe will focus on paying back the tech debts - make the painful deployment CI/CD ... We need to tell product management we have to slow down the feature delivery. We have to do less now to go faster later.â, he exclaimed. Sounds familiar, isn't it? The tech debt dilemma in software system is very much like the clogged drainage in my house. I used to think such âdebtâ is caused by stupid engineers who designed the system, or by the pointy haired managers who forced engineers to give up qualities to meet illusional deadlines. But as I grow older, I start to accept every system has its debts. Imperfections are part of the system by nature. So the question is not to remove the debts completely, since it will remove the system that the debts co-exist. We have to ask: âhow do we find a balance between the tech debts and the system so they don't ruin the system (and our career with it)?â Even better, maybe we can change our mindset to treat each tech debt as an opportunity: if we fix this, 1. Who can we delight? 2. What can be measurably better than before? 3. What skills can our engineers learn from fixing it? It takes no brain to complain about tech debts. It takes artful goal setting and engineering innovations to find and fix a meaningful tech debt. We might just have to leave some tech debts alone since fixing them will require rebuilding the system. Now for my kitchen sink clogging problem, I've ordered a drainage snake machine from Amazon. I am studying residential plumbing system: man, that is a lot of learning of a complex system that I have no idea before. Next time, I will just try to unclog the sink myself. Maybe I will even become a slightly better engineer by doing it. Or I will call the drain unclogging company after I make a mess? âThe struggle itself towards the heights is enough to fill a man's heart. One must imagine Sisyphus happy.â Albert Camus