I've been on both sides, heavy testing and little to no testing. IMHO it really depends on the system use case.
Tests have advantages, but they also hinder your agility by increasing the costs of the initial version and of making major changes.
Hard to update? Good tests!
Well understood problem sphere and product? Good tests!
High cost of failure? Good tests!
MVP with no actual current users? No TDD.
Exploring the product space and update cost is low? No TDD.
Tests have advantages, but they also hinder your agility by increasing the costs of the initial version and of making major changes.
Hard to update? Good tests! Well understood problem sphere and product? Good tests! High cost of failure? Good tests! MVP with no actual current users? No TDD. Exploring the product space and update cost is low? No TDD.