... that you know of.
... that you know of.
... that you know of.
Any time I have a “superior” that insists tech debt isn’t a problem, I feel an incredibly strong compulsion to lock them in a room with a laptop and tell them to implement something extensibly and maintainably in our codebase, and that they won’t be let out or fed until they do.
And by “implement” I mean write the code and the tests and test automation.
And then they have to pass a code review, and write appropriate doc for any externally facing interfaces/apis/ui/etc.
We’d stop having stupid fucking opinions like that right goddamn quick if this policy were implemented.
Our tech debt could buy Twitter, sorry, X.
Our tech debt could buy EA from the Saudis.
Our tech debt could buy Apple outright.
Send help
Find a way to borrow against or short your technical debt and buy a small country.
Broadly speaking, technical debt is a trade-off between quality and expediency. The problem isn't that it exists. The problem is that businesses will saddle themselves with debt and refuse to pay it back.
The difference between swiping a credit card and closing the balance out at the end of the month. And carrying around a forever-rising balance on a card that's charging you 29% APY.
I used to try to explain to management that some debt is high interest.
Exactly this. I like to say "the interest on the technical debt always comes due." The problem isn't so much that it exists but that organizations fail to manage it. Just like fiscal debt, sometimes technical debt is necessary or advantageous. The key is investing enough effort to keep the balance and interest rate low.
When that doesn't happen, features take longer and longer to implement as even small changes require increasingly large amounts of refactoring.
Additionally, defect rates tend to rise. In my experience, organizations that don't like to manage technical debt also don't like to invest time in proper unit testing.
the only way you don't have technical debt is if you haven't started the project yet.
And even then, I might have caused a little bit of debt, already...
It's true, they're hiring you to start the project.
Unfortunately not.
I interviewed once for an IT manager role at MIT's Whitehead Institute and I shit you not the hiring manager actually said the documentation for absolutely everything in their environment was perfect, and that everyone on the team documented things very well.
Almost everybody who works there in IT has decades of seniority. I've never met a lifer who was great at documentation, let alone an entire team. Pretty sure the guy was just fulfilling some quota of external interviews so they could promote whatever guy was to get the role internally.
I don't understand why people treat it like a dirty word. Tech dept should be a deliberate choice. it's not only okay to cut corners to meet deadlines but it's literally your job to decide what can be cut to meet the business needs
Not everything needs to be done today
My company has started using a survival metaphor of air/water/food.
It works because it recognizes that you need all three to survive and you have different time scales on which you can survive without them.
We will choose not to drink water sometimes to make sure we can eat some food. But we will die if we only consume food.
I’m on the product side and trying to buy my teams as much capacity to pay off some of our wayyyy overdue tech debt, and this metaphor has made it easier to convey where we are to my higher ups.
That's a great analogy, I'm going to try to use it at my place, next time I need to explain tech debt
From now on we will refer to "technical debt" as prepaid capacity.
The last person that startet in our department and decided to go while they still can said "you can only stack shit that high.." and i think its beatifull... imagine a codebast that startet in assembly bad c code with lots of hardware specific shit and the demand to always ship features to old systems build byy electrical engineers who didnt know better.
I hope in like 10 years i will understand how all of the stacked shit works...
You either have tech debt, or you haven't done anything.
It's like cleaning, you're never done cleaning, you just stop when the dirtiness is at an acceptable level.
Now, if someone said "We have very little tech debt because people who take on our tech debt are promoted or given bonuses." That would be wonderful.
Cleaning up old tech debt is actually a good job for book smart / business dumb new hires. Its the kind of work that gets you experience working in the environment and learning the landscape of the application, while adding value to the firm straight off the starting block.
And, in theory, the faster you clean up the backlog, the more attractive you become to your seniors when they're fishing around for support on new projects.
Some people actually enjoy it too. They just don't do it because adding new features is the thing that bonuses, promotions, etc. focus on.
Tbf, I might have seen a unicorn: A hospital with no tech debt neither me nor my technically more inclined colleagues could find. And we were literally paid for looking for things swept under the rug.
They had a top notch IT department with very professional management who (despite their limited budget) managed to attract talented people - simply with good working conditions, a room for creativity, etc. Everything they had was so well documented that it made me cry and think of my company's documentation. And while they intentionally did not go with every trend and fad their stuff was rock solid and modern. I have seen much much larger companies with half their thought into infrastructure, etc.
I don't know if they still maintain that standard,but it was a real unicorn.
That sounds wonderful. Typically if a place has that little tech debt it means that they've overhired and there isn't enough work, but if you said they were on a limited budget, then maybe not. It does sound like the kind of place where I can imagine that happening though. A tech-focused workplace would probably find or create other work. For a hospital, the IT department is a random cost centre, and probably fairly cheap compared to doctors, medical equipment, insurance, etc. And, a hospital probably understands much better than most workplaces about why security is important (keeping patient records private), why a "move fast and break things" attitude is sometimes a terrible fit, why documentation and checklists matter, etc.
Did you ask them if there was any tech debt? Because, I wouldn't be surprised if they thought there were things they could improve. Like, the documentation probably looked complete to you, but maybe they knew that there were a few areas they could have done better. Like, with the "cleaning" analogy, I've been places I thought were spotless, but the people who cleaned it always thought there was more they could do.
I'm filing this away for some future argument. Thank you.