I think this is terrible. I feel there are many good engineers that can't possibly compete for decent jobs in tech companies because they haven't spent 6-12 months reading cracking the code interview, doing this Stanford course, practicing mock interviews in crowdsourced websites, getting their leetcode rank up, attending bootcamps where they pad their githubs and practicing any single interview question they can scrub off glassdoor. All things that are marginally useful in the job at hand. And this is getting worse all the time.
I work in the public sector. There is a very strong "this must be fair to all applicants" bend. The same criteria is used for all applications - in particular, the exact same questions.
As part of the application, I was instructed to provide 2-3 paragraphs on each of half a dozen questions that covered various aspects of software engineering. The in person interview asked a predefined set of questions about the material that I had provided. That part was more of a "demonstrate that you have the mastery of the material claimed in the written portion and that it wasn't produced by someone else or some other source". This also tested communication skills.
No weight was given to GitHub contributions, hacker rank, leetecode rank or whatnot. There was no whiteboard.
While this isn't a fabulous job at a tech company, it is one where good engineers can and do find themselves at without needing to have the proper shibboleth to get into one of those tech companies.
For another job application that was more of a sysadmin/programmer bend, a simple backup script was the assignment (took about 1h to get all of the edge cases). A portion of the interview was a demonstration and review of the code (in which I had to answer questions about the code that I had written).
While mock interviews can be helpful in the communication skills department and reducing anxiety, there are many other ways to test the person rather than use a proxy such as contributions to a public repository or foo rank websites... and also without resorting to whiteboard for various algorithmic tricks that you either know or don't know.
It's really not that hard. I suppose there might be a few companies with insane expectations, but most interviews don't require that level of preparation.
I don't know. If all the candidates are that well prepared, then if you are not you are at a disadvantage, even if it didn't used to require it. And at companies where people want to work for, like Google/amazon/FB/Netflix, etc. and startups many people come prepared.
No matter what system you use to interview people, if the position is desirable enough, and the number of positions is smaller than the applicant pool, isn't gaming the system the expected outcome?
If people at Google were interviewed by juggling raquetballs, there would be books, courses, etc. on how to juggle better. People are willing to pay for this prep because they want to work at Google. Eventually most everyone interviewing at Google would be very well prepared to juggle.
Sure but if that were the case wouldn't you think it's silly that you need to train months to be able to juggle to land a SWE position? wouldn't it be stupid? the current interview culture in those companies is not as silly as juggling but is also not a fair representation of candidates, with too much weight being in algorithmic puzzles and behavioral checkboxes you can train for.
Obviously if the process was a 100% fair assessment of knowledge and potential and people do better than you then good for them.
Yes, it is silly that you have to train for an interview for months to land a SWE position at a top company. However, until someone comes up with a less gameable system or a magic wand that stack ranks applicants, then I don't see a viable alternative :\
As someone who gives a lot of interviews, I'd love a better way to assess a candidates ability that is less gameable, but we haven't found one yet.
Google is special in that they seem to have a generic SWE interview unrelated to the candidate's actual specialization. So everyone at Google must be algorithms/systems people, even if they focus on say, HCI or PL or whatever. For junior people, I guess that's fine, for senior people they are obviously going to bias the pool (which explains how Google in general can be so great at A and not so great at B).
Other companies are much more specific in their interviews...you actually get a specific JD with expected skills that you hope will form the basis of your interview, and not all JDs require you to be a distributed systems/algorithm wiz.
It is presumptively discriminatory unless you do a formal study documenting that high-IQ employees perform better than low-IQ employees. PG&E and the NFL use IQ tests in hiring.
I just paid program with people on the actual work we have that day. The only way to game that is to become great at what you'd do once you got the job.
As further described at the same link, research quite consistently shows that the effect of preparation on SAT scores is small, and...
> One of the most remarkable aspects of this line of research has been the lack of impact it has had on the public consciousness.
Again, this shouldn't surprise you, because it is a design goal of the SATs not to show an effect of preparation on scores, and they do their own research to ensure that preparation in fact does not have much of an effect.
All you mentioned still might not be sufficient if people don't like working with you or if you are so good that interviewers feel threatened by you regarding their future career prospects if they let you in. Happens all the time.