For argument's sake, suppose it is fair to ask such questions.
What happens if you code the problem out in Java but it doesn't match the official answer written in Python? Fail?
What happens if you design an algo with O(N-LogN) but the official answer is O(N^2) -- do you get bonus points or fail?
> For argument's sake, suppose it is fair to ask such questions. What happens if you code the problem out in Java but it doesn't match the official answer written in Python?
I doubt the question would be framed like that. They probably hired real engineers to write the questions and then tested if those work properly on other real engineers.
Why would the airport managers [edit: I mean immigration officers] be able to find engineers who can devise good tests? Why would they be able to find the right people to verify the tests on?
IMO companies have a hard time finding talented software developers. I'd expect the airport managers [edit: immigration officers] to find not-very-competent people who come up with the very wrong tests.
Internet connectivity means they only need one person on duty at the central office. If this weren't immigration law enforcement, they could even outsource it. :-)
I suppose they could hand out iPads while we're on line and have us complete HackerRank exams. So if someone is a plumber, would they provide a set of pipes to connect? What about a heart surgeon? That might get messy...
That's a good point. They could have an office with people on duty that remote-interviews everyone about all different kinds of jobs. Not saying it'd work well (no idea if it would), but I do think it'd work (a lot?) better than the scenario I first imagined.
One of the recent stories indicated border agents were literally comparing answers against a Wikipedia article; if you didn't have the answer in the Wikipedia article, you were wrong.
This would be in line with, for example, how Google does early-stage screening -- non-technical people are given a sheet of questions, and if you give an answer that's not verbatim what's on the sheet you're "wrong" and "not qualified" (see http://www.gwan.com/blog/20160405.html).
What happens if you design an algo with O(N-LogN) but the official answer is O(N^2) -- do you get bonus points or fail?