I’m in the fortunate position of not needing to interview (I have a pretty solid thing going on right now), but I’m not opposed to going through the interview process if an interesting opportunity comes up.<p>So, I’ve done it a few times now (and ultimately been rejected every time, doh).<p>I tend to agree to OP's suggested alternatives.<p>For example, take home assignments:<p>Personally, I enjoy the take home assignments. It gives me time to work on something without pressure. I generally find them kind of interesting to do as well. The time estimates are just completely ridiculous though (e.g., "it should only take you 2 hours") and trying to work on them around normal work schedule, family obligations, and what not can be such a chore.<p>One company I interviewed with based one of the in-person technical interview panels on this take home assignment. We walked through the code, and even talked about things that could have been done better, given the constraints. Had a few other standard panels with them: system design, culture questions, etc.<p>Rejected. Doh.<p>Another company I interviewed with had a few pair programming exercises (these were virtual, in lieu of an in-person interview at the time) -- though they threw me for a loop. I've sat on interview panels myself, so, similar to OP, I feel like I have a good sense of what we should be looking for when we hire a candidate.<p>Oh, man. That does not translate well through the interview process. In my previous example, this company called me back for a follow up technical interview, because I "spent too much time communicating my development strategies and plan, and not enough time actually solving the problem." So, they called me back for an additional interview step. This time, I solved the problem without trouble and even had some good, engaging conversations as we went along.<p>Rejected. Doh.<p>The Leet Code stuff is just atrocious though. It's rote, it's not helpful, it often relies on stupid tricks and gotchas, and if you don't solve it in the most optimal way, you're pretty much done.<p>(Side note: Advent of Code is coming up in about a month or so and I am so looking forward to it. I'm serious when I say that those are FUN programming questions!)<p>Ultimately, I don't know what the solution is. We as engineers universally hate this process, yet we keep putting each other through it, finding the most minor things to ding a potential candidate for.