tolstopuz вы как мысленное упражнение попытайтесь представить разработку действительно большого продукта с миллионами строк кода, создаваемого сотней программистов.

Просто ИМХО у вас мышление "Левши который блоху подковал". Такой "Левша" найдет много проблем в коде и архитектуре любого большого продукта но сам он такой продукт никогда создать не сможет. Не сможет просто потому что иррационально смотрит на вещи:
- занимается premature оптимизацией
- уверен что его код не ломается и багов после поставки не должно быть
- думает что тесты писать не стоит т.к. его код не ломается:улыб:
- думает что все коллеги должны быть такими же Левшами.

В реальной жизни большого проекта все как раз наоборот:
- Premature оптимизация ВРЕДНА. Основной принцип keep it stupid simple - большие программы пишуться "для людей" а не для того чтобы экономить циклы процессора
- Код ломается. Ломается обычно после изменений (представьте проект со 100 программистами и как в таком проекте делают рефакторинги и изменения)
- Если нет автоматического теста то код либо уже поломан либо БУДЕТ поломан в будущем
- Коллеги бывают разные и не все они Левши. Во многом люди "ломают" код не потому что они неквалифицированные а из-за:
* противоречий в требованиях - новая фича "ломает" предудущую про которую программист даже не в курсе (а тестов то нет опачки!)
* из-за сложности понимания всех тонкостей и особенности работы системы
* из-за невнимательности