A common misunderstanding in tech companies, I think. You don't want to exchange great developers for mediocre managers.
A common misunderstanding in tech companies, I think. You don't want to exchange great developers for mediocre managers.
Everywhere I’ve been part of development, code review is part of ensuring code quality, catching bugs, and avoiding silos.
Unit test aren't a substitute because unit tests check that the success paths are good. That's a good start, but it's not the same as verifying all the possible ways code could go wrong in a complex system, and one of the cheapest ways to spot those problems is with people familiar with complex system looking at new code.
Code review give you the double benefit of building more people who understand the whole system, and having the code looked at by people who understand the whole system.
I'll grant you they can help break down silos, but the question you should be asking, is why your codebase is so convoluted that silos are developing in the first place?