Testing is King.

Testing should drive more of the design process than you probably realize.

Very early on when learning computer science in university, in bootcamp, or on the job, you will realize that Software Engineering occurs in cycles:

  • Designing
  • Building
  • Testing
  • Deploying

I've simplified it a bit above, but for the most part this is an agreeable cycle. When designing however, I have found that the projects that take the longest are often scoped poorly in consideration for the testing phase.