I'm prepping to go job hunting again (sigh...), and wondering whether or not TDD is in vogue.<p>A few years ago, it was the in-thing and everyone was preaching it like it was some type of technological savior, but I don't see many articles about it anymore.<p>So is TDD/BDD still cool, or has it been added to the IT scrap pile?<p>NOTE: I am not asking about Unit Tests - just about TDD/BDD as a development practice for a mid-level developer.
I find it useful for new projects. It allows me to define acceptance of core functionality and features.<p>For established projects, not so much. This is especially true for people new to the project as they typically don’t yet know the full system and it may push them to recreate some functionality that already exists.
There are times where TDD makes a lot of sense, I find it to be quite useful in situations where you have some sort of known interface you need to implement exactly. In that case writing the tests first tends to save a lot of time overall.
TL;DR yes, it still works well.<p>Ignore any hype. TDD/BDD is great for anyone who has seen some shit hitting the fan in his/her professional life.<p>In fact, jobs not asking for TDD/BDD will probably be throwing shit at you.