Another programming interview I blew
I am an old fart. 47 years old. Thats dead in computer years. First computer at 16. 48k of memory. A closet nerd. closet. I don't look like a computer guy. I know. I know. I have been told so many times. I go back. ms dos.. dbase qbasic. And I know the modern stuff. 20 year track record
I won't bore you. 10 years C# SQl server. Im playing with nodejs and vuejs now...
Anyway. I have been to 5 interviews this month and nobody gave me a fucking job. Programming has humbled me I know you can only know so much. I blew 5 interviews this month. 5. Thats crazy. Every single one of these interviews was somebody asking me some random shit. RANDOM shite and if I didn't answer there random generated shite I didnt get the job. I should have been a dentist I would have gotten more respect and maybe more love. Any replies.
84 comments
[ 3.7 ms ] story [ 164 ms ] threadi've seen some really nice pallet and tarp houses around lately
I did 3 interviews so far this month and even though I didn't get any rejections, I still don't have any offers. Things around here do move slow(Australia) but I am not holding my breath.
2 of those interviews asked me questions about algorithms even though the job had nothing to do with that and I explained that I am not good at those puzzles and that I preferred to discuss my experience.
I don't know your situation but you have to keep trying. Even 20-30 interviews, whatever it takes. Not getting an offer from an interview says nothing about you or your abilities. Every single user on this site can tell you horror stories when they were looking for a job so you're not alone.
Edit; now planning for 50 by removing dependency on doing development gigs
The idea of keeping expenses down and foregoing frivolous luxuries is what allows me to wait for a better offer inbetween jobs if i needed to. So I strongly agree with that bit.
Ofcourse, did not mean to imply you should pack up and leave, but it is an alternative scenario for some and they might not have considered it (well). It took us years of planning and checking out locations when still in fulltime employment, so it's not this 'f*ck it, we're off' kind of thing.
Edit: checked your profile/site and I do believe the 'unintended privileged' (you cannot help where you are born or who your parents are) like me cannot really understand how it is not to be able to just travel anywhere, so sorry if I stepped over that too easily. I just try to help as I was in your position 10 years ago work wise, but not in quite in the same region...
Luckily, I am in a better situation than most, having the chance to move to Australia a year ago as part of their immigration system. I say luckily but really it took a lot of effort and planning to apply and then wait for the process and take care of all the details. Its a great country but I still face some issues being a foreigner.
P.S. The mountains in Spain... Sounds great!
I did eventually get a job.
I've decided to work on getting my loan officer license.
Because of all the BS involved in building software, I am considering starting my own food truck. I used to enjoy writing code and solving problems...
I've had interviews where the question / puzzle took the interviewer 30-40 minutes to explain and he needed an answer by 45 minutes.
The whole system is just fucking stupid.
This is perhaps just the next thing, setup a blog and a bunch of repos on github, and if that makes the recruiter think you a better candidate, I am sure shortly everyone will do it, if they aren't already.
What's the point behind publishing code to prove that you actually can code if no one is going to look at it?
To the whole Github thing, just had this happen.
Got a call from a recruiter from an company I interviewed with a year ago. We couldn't make things work then, but in the words of the recruiter, "Everyone loved you and we have new spot that you fit perfect".
Fortunately for them I open right now so I say I'll be glad to talk to them, and he says he'll get right back.
Next day I get an email from someone at the company, saying before they move to the phone screen he has a couple of questions. What's my Stackoverflow presence, my Github, and what Coursera course have I taken.
Never heard back in over a week since I replied negatively about those items.
Going to call the recruiter tomorrow to let him know he has at least one person now that doesn't love me.
In interviews today, the expectation is that the candidate should be perfect, do this, that, don't forget to do this. But the interviewer has no such requirement. The interviewer can reject you because "They had a bad day".....seriously, this is what companies say. Look at some answers here: https://www.quora.com/What-are-the-possible-reasons-of-being...
So the candidate has to be PERFECT but the interviewer can reject because they are just HUMANS? How the hell does this make sense?
Maybe we need yelp for interviewers. A rating system will weed out bad interviewers and bad company policies.
One person I knew at work had a question he used to always ask in interviews. One day while discussing this I asked him to show me some working code for his question. He struggles for a while then gives up(Note, this is his own question). Then he repeats the same trite - "We are just testing their approach".
And I was like "Oh sure, Their approach towards something whose answer you don't even know, to evaluate against."
Which correlates nicely to "You didn't solve it the way I would have, so you're obviously wrong."
- Are you an employer complaining there is a shortage of good developers?
- How many candidates have you rejected in the past?
- How many of those were because of a bullshit interview question? (Eg: Find the maximum subarray of an input array in O(n)...cannot be brute force....within 20 mins)
- If you have faced a shortage of developers, have you considered calling back the people you rejected for bullshit questions?
- If you don't have a problem finding engineers who can solve bullshit problems, your technique succeeded right? How many of those successful bullshitters have you fired or been disappointed by their performance at work? If the answer is zero..great. Don't ever fire them. Else, review your interview process.
Thanks
I've been in that situation: Once, at an old job, I had put in for a new role that had been created. There was also an outside candidate who'd applied for the role. Management felt that having me interview this candidate would have been a conflict of interest, considering, so I wasn't asked to participate.
I knew within 30 seconds of meeting him that he wouldn't last. He didn't. They gave him three months, and we all agreed in retrospect that he shouldn't have been hired at all.
In the interim, I did my old job, as well as his job (in the form of handholding him through everything he did more complicated than surfing the web), and was very quickly given the title of "Senior $role", with him as a direct report.
The other engineers and I spent hours, daily, working hand in hand with him, correcting his code, repeatedly suggesting the same things he could do to avoid having those problems with his code in the first place, &c.
That's just one example of what the thing I thought the grandparent meant by "false positive" can cost you. I'm sure there are worse.
I'm familiar with the argument. Erring on the side of caution is wise. Thinking that the current interview process saves you from this is stupid.
Gameable systems are won by people who focus on the game. They are not necessarily going to do well if the job requires something different
The current interview process is a GAME.
From the employer perspective, they can never be sure if they hired someone who memorized stuff for the interview or a really smart guy.
It's very similar to the current US election process. Everyone thought the forefathers made a rock solid constitution. The few cracks it had was fixed with amendments. Lo and behold, the only person who could make it to the top was the one who gamed the system and not someone with real merit.
Aren't the parallels strong?
P.S.: Not claiming Hillary is meritorious, but at least she's not one to make radical decisions without counsel
Exactly what I've been thinking about recently.
Isn't this true for a variety of things? The education system judging on the outcome of exam scores, elections, making money, marketing etc.
I wonder whether all this can be really be 'fixed'.
The only answer in your Quora link that has a lot of upvotes is by the author of CTCI and she is saying just the opposite, and instead of blaming the interviewer she is putting all of the blame on the person being interviewed. I find this quite disturbing, and you are right there isn't accountability on the interviewer, here are the things the author of CTCI is saying:
> Maybe you came off as arrogant
> A number of different things could happen. But when someone asks this question -- why did I get rejected even after doing well -- the problem is nearly always in the second part: You didn't do well
> If you were interviewing with a big tech company, they have basically infinite programming spots. They don't reject someone because they found someone better; they just hire both.
> So despite what you think about your performance, you probably didn't show good algorithmic problem-solving skills
I'm all for self-introspection to assist in self-improvement but her persistence in ignoring the fact that interviewers are fallible is troubling, she is the go-to resource for probably most interviewees and interviewers and I don't like that she assumes that the thing that went wrong is "almost always" the fault of the interviewee. It's some grade-A BS.
I have had similar thoughts.
Dentists, I heard, have high rates of substance abuse, depression and suicide. These are very talented people (they have to be to gain admission to dentistry), who have to spend their life... doing dentistry.
https://www.japantoday.com/category/lifestyle/view/why-japan...
So don't get too hung up about perfect teeth.
In the computer industry you have to screen out companies that don't help people.
One problem is that it's hard to get good information about which candidates and which companies are the ones you want, since the bad ones also pretend to be good.
Another complication is that recruiters are often not technical, and the hiring managers in startups are not always experienced, so you have to pass through too highly imperfect filters.
I can tell you that, a couple years ago, there was so much demand for Ruby and Python developers that good recruiters wouldn't even take the assignment of looking for them, because they knew it was fruitless.
One way to get around the problem of imperfect information is just to build stuff that resembles what you think people need, with the tools they advertise that they are using, and then to post your code on Github. Or commit to an open-source project. Really, the smart companies have scouts watching those projects and if you show competence, reliability and culture fit (being nice) you'll probably get an offer.
I used to write about this a bit from the point of view of a technical recruiter, which is not popular on HN, but fwiw, it's good for SWEs to understand the gatekeepers.
https://www.linkedin.com/pulse/20141003230509-13992315-how-t...
https://www.linkedin.com/pulse/20140922170916-13992315-if-yo...
https://www.linkedin.com/pulse/job-markets-information-probl...
If you go to an interview and they ask contrived questions, go to their page on Glassdoor and post everything they asked.
Once their filter gets too noisy, they'll have to start interviewing for the actual role they're trying to fill instead of this oral exam bullshit.
You said you "blew" five interviews without providing any information or taking any responsibility. Also, you say that you've been doing development for 20 years. Do you think you're entitled to something purely based on your experience, even though it might not be relevant?
Also, five interviews is just a drop in the bucket. What did you expect your interview pass rate to be, over 20%? That seems highly unrealistic.
Also, interviewing is partly arbitrary hazing to make incumbents feel valuable.
Five is not very many interviews at all. 30 would be significant. In good interviewing, much more time is wasted to have many more offers.
If you're going for instant respect, wage slavery is the wrong port to chat up. It's always earned over time by demonstrating invaluable performance as useful to the current business "growing pains."
Finally, the usual standards: positive, hygiene (no nasty ear, nose, neck hair), fit, energetic, quick, confident and dressed impeccably. And, all the usual canned answer "brain teasers" which are Glugglable. Perhaps tactfully-suggesting how such arbitrary mental fappenings apply to the job without pointing out how they are often ineffective shortcuts which may make the interviewer feel superior. Oh joys of big ol' corporations and their bloat and waste.
I interviewed a guy once who was trying to talk his way into a VP-level position. Except he was talking to me, and I was just a hired hand suited only to make a recommendation for a n additional developer. The guy had a sound mind but the company was not hiring for his role.
At the same time, I mostly don't want to work at the companies that do puzzle interviews, though you may feel differently. A lot of times these center on approaches like recursion algorithms, but I'm a full-stack/backend web developer, and I've written less than 10 recursion functions for production. I now ask these interviewers how often they write recursion algorithms and the answer I usually get the line "oh it's just useful to know the underlying concept," except it isn't. I can write them, but I don't care for them, and the concept isn't particularly mind-blowing, and you'll have to explain it to the rest of your team.
Anyway, hang in there, best wishes
I do agree though? A lot of interview questions are trick questions.
But, I'm going to be bold. I'm going to out on the limb and suggest that: maybe it's not being asked "RANDOM shite," but maybe your attitude. Generally speaking, I've had to do three to five or so interviews to get an offer. Depending on the market and the timing, I've had far, far worse. I once spent four months trying to find something, anything. So, here are a few thoughts for you or anyone else.
People who have 10 years (or claim 10 years) C#/SQL are a dime-a-dozen. You're competing in a market that is dying, the same way Java developers are dying: a smaller and smaller group of employers who are stuck on the tech. Microsoft lost, which is why they are trying so desperately to incorporate Linux/Open Source technologies. You're going to be valuable to company if you're either inexpensive or the best-of-the-best. Your skill set is dated. Get it back into shape. Luckily, our profession is one of the cheapest to retool. Unfortunately, you should have been doing this two years ago. Spend your free time learning, always. Get yourself up to speed with NodeJS/Vue/React, etc. If you don't have experience with Linux, get it.
Companies want one of two things: a reason to hire you or a reason to not hire you. Be involved in that process. Is it a really a random problem? Or, are they trying to gauge how you think and approach problems? How did you respond to it? Were you inquisitive or were you as hostile as this post? When I've been a hiring manager, I always ask questions like, "How many baseballs will fit in a 747?" Good candidates say, "Well, I'll just estimate that a 747 is 100 feet long and 30 feet wide and so.." Great ones will point out that if packed it full, it may be overweight to fly. Bad ones say, "I don't know." The interview is there for you to present what you know and what you're interested in. Your resume should be tailored to present things can talk about. It's all about selling you. If you have a recruiter, talk with him or her. If you're not using a recruiter, get one. Have them get feedback on the interview. Then, take it to heart. Period.
On the flip side, there are companies want conformity. You're either "it" or not. If I don't get an offer, I don't want the job. There is zero point in being in a place that questions your ability to fit in. I've gotten turned down from some pretty cool places, but that's life. I wouldn't have had the career or the friends in my profession that I do had some of those jobs worked out. I even found out later that whole groups of people got laid-off, quit, etc.
The important thing is: getting a job is not a right and it doesn't come from meritocracy. It's people looking for people who solve the problems the company has and doesn't bring more problems to the company. Think about it from their perspective and try to figure out how you, your experience, and your attitude is benefit for them. If you've been in this profession for several decades, you have it in you.
By the way, my first computer was at nine and it had 4k of RAM. I always sell that: "So, I got into computers when I was nine. After punching in two plus two and see it spit back four, I instantly wanted to know how it could possibly know that. I've never stopped learning since." Right then and there I set the tone for the company: You may have problems I don't understand, but I will figure out the answer.
I think your in a bubble. 90%+ of the jobs around here are c#, java and php. Only one local company seems to be doing anything with node (and not something node is suited for), in fact, I haven't seem them advertise for a while, so it's probably zero now.
I also agree that NodeJS is jumping the shark. But, again, if your at where he/she is, there is where the more up-to-date Microsoft companies are hiring. NodeJS is the new hotness (five years late) in this town.
Personally, I'm already working on exiting Node. Having used it hard core for high-performance APIs, I've found all the sharp edges and failure modes. Node really falls down when you have to get fine-grain control of flow control, such as processing files and large data. Ironically, I'm seeing a resurgence of Ruby.
I've been working on tooling myself back in to Ruby (did Ruby for five years), Elixir, and Docker/Flynn/etc.
I also agree that NodeJS is jumping the shark. But, again, if your at where he/she is, there is where the more up-to-date Microsoft companies are hiring. NodeJS is the new hotness (five years late) in this town.
Personally, I'm already working on exiting Node. Having used it hard core for high-performance APIs, I've found all the sharp edges and failure modes. Node really falls down when you have to get fine-grain control of flow control, such as processing files and large data. Ironically, I'm seeing a resurgence of Ruby.
I've been working on tooling myself back in to Ruby (did Ruby for five years), Elixir, and Docker/Flynn/etc.
I think you are out of touch there. Maybe all your friends are web UI devs, but web front-end development is a minority of programming jobs - smaller than writing CRUD apps that interface via SQL, and smaller than writing the desktop applications that create all the data that the web dev guy gets to doll up and push out.
I wholly agree with your advice on constructive interviewing and seeking feedback.
1. I feel strongly that people should be allowed to prepare for interviews by seeing the actual questions. In fact, I think the questions should be public. What might these questions be? I want to immediately know if someone took the time to do some diligence and also to make certain that my own biases didn't cause me to avoid hard questions for candidates I liked.
2. I don't want to ask something which can be easily googled. Simple answers aren't any good; I need something where it is open ended enough and the answers to the question can be "good enough" where I feel the completeness is sufficient for the role.
3. I need to be able to practically communicate what the real purpose of the role is. the Job posting will not always be allowed to do that, but through the interview I need to make it clear what work I actually need done. Should I do this via questions (keep this a secret from the interviewer) or tell them the honest truth and risk losing potentially excellent employees. Both employee and employer have high frictional costs in this case.
4. Interviews are a mostly artificial format - similar things do happen in sales and client-facing scenarios, but usually in a toned down way. In an interview, the risk of performance is entirely on the person interviewing, in a customer-facing scenario, the person is representing the company, but also has the company support behind them. How could you put the interview into a position where the interviewee felt as if the company interviewing them would back them up to help them succeed? (could you do a pair interview where someone already hired for the role helps them work on an interview problem, while someone else interviews them?)