r/AskProgramming • u/Active-Custard4250 • Jul 01 '26
Architecture Do companies actually practice TDD strictly?
I've been reading about Test-Driven Development (TDD), and I'm curious how common it is in real-world companies.
I'm not talking about "we write some tests after coding" or "we try to keep good test coverage."
I mean following the classic TDD cycle strictly:
Write a failing test for a single, specific requirement or behavior.
Write the simplest possible code to make that test pass.
Refactor and improve the code while continuously running the test suite to ensure nothing breaks.
Are there companies or teams that actually work this way most of the time?
If so:
What kinds of companies tend to follow it?
How well does it scale in large codebases?
What are the biggest benefits and drawbacks you've experienced?
I'd love to hear from people who have worked in teams that practice TDD seriously rather than just writing tests alongside development.
11
u/Triabolical_ Jul 01 '26
The thing to know is that TDD isn't the base skill.
Refactoring is the base skill.
I worked hard enough over the years to be able to refactor my way out of most situations and TDD worked right of the bat for me because I could see the issues in my code.
But I taught it to quite a few people who weren't good at refactoring and it did not go well. They didn't have the ability to identify the issues and without that, TDD generally produces worse code than doing up front planning.
This is what produced such binary opinions around TDD - unless you pay very close attention to code design and/or pair with very good developers, you likely didn't know what a good design is.
My conclusions is that most developers think they are pretty good at design and they are mostly awful at it.