I agree. We recently got rid of our more traditional "tech screen" and replaced it with a 90 minute realistic programming interview.<p>We have 3 tests we give depending on the role (game dev, backend, or SRE). The tests replicate typical work the engineer would be doing, such as adding functionality to a 2D game, developing out a web service for a given API, or debugging and optimizing a linux server. We provide a development environment remotely, or the engineer can use their own. They code/work on their own, without needing to share their screen, though we're on the line if they have questions or just want to chat. The interview itself takes about an hour and we schedule in buffer time before/after to setup and to debrief.<p>We've designed the problems to be (a) relative, (b) scalable and (c) fun. By scalable, I mean that the problem should have a simple, naive solution that most engineers who work in that space should be able to solve quickly and easily, while also having enough space for more advanced engineers to extend the problem and show off a bit.<p>So far we've gotten good feedback from this approach, even for candidates who haven't passed. I know 90 minutes is a long time, we but feel that with this test, we get a good, realistic work sample, and we can forgo a lot of the other less effective interviews.<p>(plug: we're still hiring [1])<p>[1] <a href="https://www.singularity6.com/careers" rel="nofollow">https://www.singularity6.com/careers</a>