Hacker News new | ask | show | jobs
by scaleout1 3633 days ago
This article makes me sad. Interviewing in our industry is so broken. I have been out of school for a while and switch jobs every few years and this is the technique I use to beat the bullshit interview process

. Make a list of companies that I would apply to and sort them from most interesting to no-way-in-hell-i-am-working-here order

. spend a weak reviewing typical algo/data structure questions

. For the companies that I absolutely want to work for, I review every single glassdoor review and write down the interview questions. Remember, most companies have question banks and most interviewers have favorite questions which results in same questions being asked over an over again. You want to exploit that

. Then to get over my interviewing jitters, I interview at a few companies where I would absolutely not work at. This results in no pressure interview practise and you can literally laugh at their asinine interview questions and walk out

. Finally, for the companies i actually want to work at, I try my best to get rid of phone screen. This is usually accomplished by dazzling them with my decent size github profile, contributing some fixes to their OSS project or finding someone who already works there that is in my alumni network

. Then when you finally arrive for the interview, you have real world interview practise, they are already impressed with your github profile/references and biased toward you versus some random joe off the street and you have made sure you have a pretty high probability of getting a question that you have already seen or is similar to a question you already know.

This technique has helped me get Jobs at top 5 employers in the valley along with a few startups. The reason I am posting this here is to demonstrate how broken, unfair and easy to game this whole process is

5 comments

>>Then to get over my interviewing jitters, I interview at a few companies where I would absolutely not work at. This results in no pressure interview practise and you can literally laugh at their asinine interview questions and walk out

This sounds very unethical and dishonest. It's the equivalent of a company interviewing a candidate they have zero intention of hiring, ever. Why waste people's time?

edit: not sure why I'm being downvoted. Am I wrong? How would you feel if you spent time preparing for an interview, did the interview and then found out the company didn't intend to hire you in the first place?

You are right, this is not ideal - this is waste of time. Which is probably why the OP lead the comment with:

> This article makes me sad. Interviewing in our industry is so broken.

Yet:

> It's the equivalent of a company interviewing a candidate they have zero intention of hiring, ever.

If the company has one position to fill, and if they ever interview/contact more than one person for filling that position all the people who they contacted other than the person who got the job has wasted time, right?

In short, companies have only themselves to blame for this (sad) situation.

>>If the company has one position to fill, and if they ever interview/contact more than one person for filling that position all the people who they contacted other than the person who got the job has wasted time, right?

No, this is more like the company interviewing people when there are -- and will be -- no positions to fill. It's like a hiring manager going, "man, I really need some practice interviewing people, I should go post some jobs on job sites!"

Companies reject candidates (and thus waste their time) for extremely arbitrary reasons. I'd suspect you're being down-voted by those who feel they've suffered such.
Studying algo/data structure questions is not gaming the system. I'd far prefer to hire someone who did this over someone who didn't prepare and just tried to wing it, then complained about how unfair it is to ask such questions.
Why is that? Besides preparing for understanding the role, culture, etc why would you need someone to brush up on their algo knowledge for your job interview? Do you believe that algo prep would make them better at their job?
Perhaps the willingness to prepare indicates the candidate is motivated and the algorithmic knowledge they gain from it forms a solid basis and language in which it is possible to test their problem solving abilities?
Right. I figure also that a candidate who'll do the homework necessary to prepare for the interview rather than winging it will be more likely to do the homework necessary for the real problems he'll face at work.

(I've known many engineers who wing things at work rather than spend the time to research a correct solution, and not just in software.)

Hi Walter, nice to see you again; another (similar to last time) interview process, another discussion here :) Not sure which country you are from, assuming US here; seems your experiences, again, vary wildly from what I see here. The refusal to study this useless stuff upfront had absolutely no baring on their 'refusal of whatever' on the workfloor or 'winging things at work'; employees should refuse things that are a waste of time in my company and they should explain why. If they do that with this 'pre-interview studying', I like them more than the ones who cram all to please the interviewer and show their willingness to do whatever they are told. I think that might be Dutch attitude though so not saying right or wrong here. I think, considering your previous responses that you mean it more subtly as well though.
> absolutely no baring

That's not been my experience. I've seen a strong correlation.

> show their willingness to do whatever they are told

I don't think it's the same thing. I've told many of the people I've worked for that what they asked me to do was a waste of their resources. One told me "do it 'cuz I'm the boss and I say so" to which I replied "at the salary you're paying me, I feel obliged to tell you that what you're asking will never work". :-)

Nevertheless, if you know upfront that at a job interview you will be asked certain questions, and you choose to go to the job interview, it seems bizarre to not come prepared. Why bother?

I'm not doing homework if I'm not getting paid overtime. XD
> why would you need someone to brush up on their algo knowledge for your job interview? Do you believe that algo prep would make them better at their job?

Ahem, Walter writes programing language compilers for industrial use. I strongly suspect that algo prep will make them better at their job if he was involved in the hiring :-)

Actually, if you asked me cold about various algorithms, I'd probably bomb the answer. But that isn't a problem, as when I need to know some detail it's trivial to look it up. But if I'm going on an interview for a job I cared about, and I expected algorithm questions, I'd consider trolling up on that stuff to be required homework.
That's an approach I don't understand. If you would "bomb the answer", it means you don't understand and don't feel the algorithm behind. Merely "looking up some detail" doesn't help with that.

It's not like one can look some detail up when he doesn't remember the detail was even there. Good software programmer needs a large working set of such details to sensibly function in a professional setting.

Being an educated person is not necessarily being a walking encyclopedia of detail. But it is knowing where to find the information needed at the moment. That's why there are reference books for professionals, like the CRC Handbook.

For another example, nobody knows every detail in the C++ Standard. But a professional is expected to know how to look up a detail in the Standard as required. That doesn't mean he doesn't understand the language.

Maybe you never need to look anything up. But I'm not that kind of person, and don't know anyone that is.

Not to mention the grandparent suggested showing them his GitHub profile and committing fixes to their open source repos. Uhh, yeah, I'd hire you too! Are we forgetting that most developers don't have GitHub profiles or aren't able to patch open source projects.
Thats a great process. If you don't mind me asking, how do you get rid of the phone screen, even assuming you have some github and contacts? Just ask the recruiter?
the trick is not to go through the recruiter. Instead ask Committer on their OSS project or your internal contact to vouch for you to the hiring manager.
I have exactly the same experience. In my case I took first interviews where I actually wanted to work and didn't pass them. I did interviews where I didn't want to work later on and passed those. Then used my FB offer to bump up offer at the place that I chose among those where I passed.
Thank you for sharing your method with us. It worked for you and should work for others. I'd however like to point out, certain assumptions baked into this, before anyone starts to follow it:

>>. Make a list of companies that I would apply to and sort them from most interesting to no-way-in-hell-i-am-working-here order

This is easy to do if you're in the valley/NY. Outside of the valley, people often don't know many companies besides G and F. Making such a list is a valuable exercise, but quite hard for many people, simply because of lack of knowledge and credible sources. It'd be useful to mention something like Wealthfront list here.

>>. spend a weak reviewing typical algo/data structure questions

There are SO many resources online, that it's very easy to get lost in the search of what's typical, especially if one hasn't interviewed in a few years. It'd be useful to mention to follow some introductory book/resource here.

>> . For the companies that I absolutely want to work for, I review every single glassdoor review and write down the interview questions. Remember, most companies have question banks and most interviewers have favorite questions which results in same questions being asked over an over again. You want to exploit that

For companies with shorter history, this is doable. For companies with longer history of this kind of interviewing, browsing through Glassdoor is very similar to dumpster diving. It's doable, but it's super easy to get discouraged quickly. Not to mention very often people paste questions very vaguely e.g. "got asked a Graphs question", or they paste code which is a nightmare to follow, even if you trust that it's correct.

In other words, note that this phase can take a lot of time to do well.

>>. Then to get over my interviewing jitters, I interview at a few companies where I would absolutely not work at. This results in no pressure interview practise and you can literally laugh at their asinine interview questions and walk out

Again, how does one get interviews at even those companies where they don't want to work at? Getting interviews is as much of a problem, as clearing them. Added to that, there is always this anxiety about rejecting those offers, because there is no guarantee of getting thru the ones you want to work at.

Additionally, when picking practice companies, it's important to pick ones that have a process with similar intensity as your favorite ones. That knowledge is often not mainstream.

>>. Finally, for the companies i actually want to work at, I try my best to get rid of phone screen. This is usually accomplished by dazzling them with my decent size github profile, contributing some fixes to their OSS project or finding someone who already works there that is in my alumni network .

Internal referral is definitely the best way. But majority of people don't have internal warm referrals at most places. Additionally, unless your technical reputation precedes you, most good companies are unlikely to give you a free pass on phone screens. It's extremely rare to have a dazzling Github profile enough to skip a phone screen.

>> Then when you finally arrive for the interview, you have real world interview practise, they are already impressed with your github profile/references and biased toward you versus some random joe off the street and you have made sure you have a pretty high probability of getting a question that you have already seen or is similar to a question you already know.

This again, assumes that everyone in the panel knows about your preceding reputation. And that one doesn't mess up even a single interview.

Overall - please don't get me wrong - this is great advice and much better than getting frustrated without it. What I want to point out, that the inherent fragility of the entire process is so high, that one should be careful pinning one's confidence on any particular strategy. The only thing in your hand, as a candidate, is to prepare and prepare well.