@ThePracticalDev i used to believe in TDD. Now i write the UI/UX/client/application first, and let that define my API.
Otherwise you spend a ton of time making interfaces and tests, then realise you have to change it all around as soon as you try and use your API (or immediately start putting hacks in your client/app, and start the whole thing in tech debt)