&gt; <i>I&#x27;m half way through my time on this task already and I haven&#x27;t even touched the unit tests.</i><p>Well, generally, if you&#x27;re wanting to do TDD&#x2F;BDD, start with the tests first. Then write your code until the tests pass. That being said, TDD&#x2F;BDD isn&#x27;t exactly a timesaver in most cases, so I&#x27;d understand why you&#x27;d do it in the opposite order.<p>But anyway, to answer your question: I write a crappy&#x2F;sloppy solution first, as fast I can. No thinking... just pretend you&#x27;re coding for fun on a low-stakes project that nobody will ever see. Then I go back and try to plan a better way to do it. If I can refactor&#x2F;recode it before the timer goes off, then that&#x27;s great. If I can&#x27;t, no biggie.