Best way to judge people is to have them do problems right off the bat and see how they work with your team. Unfortunately, I do think algorithmic problems have a place for companies like Google and Amazon which are triaging through thousands of candidates. However, startups doing this seems like a bad call. Most of the time as a startup you are trying to figure out not if someone can do a bureaucratic task like pulling an algorithm out of their ass, but do they know the context of the code they are building. Can they understand the library ecosystem and use existing tooling.
One effective process I’ve found in weeding out ineffective people is hire them fast and put them on simple problems in the codebase that shouldn’t take more than an hour to accomplish. If they solve it in that time or find additional problems. Wonderful, we can start working more together and I just continue assigning tasks. If they can’t get anything done within the first hour or two when they said they will. I will cut them.
To remove my bias on people and different backgrounds I do not have video calls. I only chat with them and write the issues they need in GitHub Issues. Sometimes I send a Loom video if there is something that can be explained better.
Seems like it is working thus far.