
Why software engineers don’t get jobs: Three horror stories - iwangulenko
https://medium.com/@iwaninzurich/why-software-engineers-dont-get-jobs-three-horror-stories-77fd1ae3b875
======
seattle_spring
I think I've been rejected for all 3 reasons:

1\. Docusign, for not using Coffeescript, Angular, and Stylus (3 technologies
I had never previously used) to solve their very long take-home test. I
apparently provided a great solution, but they were concerned that I didn't
follow those rules specifically. No, I'm not going to spend hours getting up
to speed on your framework just for an interview, nor am I going to submit
sub-standard solutions to to conform to your arbitrary restriction of using
the framework du-jour.

2\. Google, for not being able to, "prove a random number is truly random,"
during my onsite interview panel. The guy offered no hints when I wasn't sure
where to start, he simply continued to repeat the question, a bit slower each
time.

3\. A local Seattle startup, who required 3 onsites: A technical, a culture,
and then a full-day of "integration" (working on real problems with the team).
I apparently passed the first 2, but was not invited to the 3rd. Turns out the
HR director that was working with me quit before scheduling the 3rd. I never
found out until after I had already accepted another position.

~~~
hanbura
>Google, for not being able to, "prove a random number is truly random,"

I really hope they just wanted you to argue that the task is impossible.

~~~
Bahamut
Reminds me of a question one interviewer asked me to do at the very beginning
of the session when I did my first onsite at Google - write a regex for
emails. I told him no, and explained why. He then asked me to write a naive
email regex to catch a simple situation, which I subsequently did.

~~~
aaronchall
This makes sense as an interview question.

Will the interviewee push back when asked to do something impossible?

Will they then demonstrate that they can do some simpler case (which will
minimize mental switching costs for both the interviewee and interviewer)?

------
NumberSix
I would not take excuses like this for rejecting a candidate, especially a
_highly qualified /skilled candidate_, at face value. Despite the pervasive
rhetoric about wanting the "best" or hiring only the "best," both individual
interviewers and companies as a whole are often afraid of hiring candidates
who know more or are more skilled than themselves. The unstated fears include
that the candidate will, if hired, outshine colleagues, his or her boss, or
even, in some cases, the founder or CEO of the company -- especially in the
case of startups where venture capitalists or other investors could be
impressed by the new hire.

Since it is usually not acceptable to reject an applicant for this reason,
some pretext will be generated. One way is to focus in on some area where the
candidate is weak or different such as using a different software tool.
Another way is to use trick questions or problems.

This is an article on how this was allegedly done in academia in the Soviet
Union:

[https://arxiv.org/pdf/1110.1556.pdf](https://arxiv.org/pdf/1110.1556.pdf)

~~~
s3nnyy
OP here

Actually, I had drafted _" Horror story 4: Candidate was rejected because he
was better than the interviewer"_ but I thought it is too complex to be
included. I might write a whole blog post about it. Thanks so much for linking
to the paper.

~~~
s3nnyy
Just included fourth story in the original post but will write an extensive
thing about this topic.

~~~
zootam
really cool to see live updates like this.

thanks for the good stories.

------
Bahamut
I have had some sad rejections over the years.

I remember one company rejected me a few months ago for not knowing enough
algorithm/data structure knowledge - I subsequently passed interviews with two
teams at my current employer, one of the famous big tech companies.

I had a startup pass on me as well that prior job search for reasons unknown
even after acing their interview. I found out only 2-3 weeks after
interviewing, and I think they’re still trying to hire for the position (it
uses Angular 1 - I also happen to probably be still one of the most
knowledgable people about Angular 1 outside of Google).

I got insight into one company’s interview process after doing a take home
project, and one person mistakenly replying to all with me in the email chain
- the person didn’t think highly of my work on it, despite that I only spent 4
hours (the time I could spare on it) and kept clean abstractions, setup, and
accomplished the main point of the take home project. That experience cemented
to me that take home projects are a race to the bottom with it being necessary
to spend an extraordinary amount of time and little reward back.

Amazon ghosted me while we were in the process of setting up onsites in San
Francisco and we were taking about compensation in parallel (they started the
comp conversation) - I’m pretty sure they did so after a few back and forths
due to not being willing to bend on comp numbers. I still get emails from
recruiters about 10 times a year from them.

I’m sure I’ve had others, pretty sure most people who’ve been in the industry
for a while gets them if they have interviewed around.

~~~
s3nnyy
Well, salary negotiating is hard, it's usually the part programmers like most
during my talks on "how to hire software engineers":
[https://www.youtube.com/watch?v=u6PTaTDHUG4&feature=youtu.be...](https://www.youtube.com/watch?v=u6PTaTDHUG4&feature=youtu.be&t=1596)

~~~
Bahamut
That's fine, but ghosting while also in the process of setting up an onsite is
pretty bad, especially for a company that should be at the stage where they
get that right. There's no good reason for that behavior.

------
DavidWoof
1\. Honestly, if I were giving a simple coding exercise and the candidate
submitted work using their own custom framework (which is implied here), I
_might_ reject them also, or at least put them at the bottom of the interview
list. It's just a complete misread of requirements, and points to an inability
to follow directions.

2\. On the one hand, Joel Spolsky created a lot of problems with his idea that
a "no" from any interviewing dev results in a "no". Some people just don't
evaluate interviews very well.

OTOH, everything looks like it went well here. One interviewer voiced
concerned about a specific technical field, but the team as a whole gave that
item its appropriate weight. No problem.

3\. Yeah, HR often sucks. But I don't see how a story about the recruiter
completely dropping the ball for two months is somehow a defense of how
valuable recruiters are.

~~~
fred_is_fred
I'm with you on 1) because I've worked with these kind of people before; smart
people who disregard existing solutions AND disregard team choices for
technology stacks. Their code is impossible to integrate, difficult to test,
difficult to review, and impossible to support. But by god they think it's the
better way.

~~~
bjourne
You cannot deduce from that that that engineer is one of "these people." There
is not enough information in the situation to draw that conclusion. It's like
claiming, solely based on your remark, that you are one of those people who
jumps to conclusions prematurely. It doesn't work like that.

------
mixmastamyk
Now try being not an ex-googler, or not so great on the spot. Have been a
great Python developer for years but personally have given up on jobs that
require “tech” interviews.

~~~
steven777400
I have to encourage you not to give up on all tech interviews. (By that I
think you mean "hands-on"/"practical" type tests).

I do hiring for our agency, which consists entirely of non-rock-stars, at non-
rock-star pay, solving non-rock-star problems, in non-rock-star time. We still
do practical tests for all interviews. Some people, actually, do just get up
and walk out. I wish they'd at least look.

We do problems on the level of "fizz-buzz" or similar. Quick 10-20 minute
problems. We don't make full completion a binary success/failure metric. We
just want to hear you discuss your thought process and see that you're aware
of variables, if statements, and for loops. Because, yeah, turns out some
candidates who claim years of programming experience ... aren't.

But no tricks. And we also make sure the request is suitable to the resume
(think about it as resume validation). So we wouldn't say "Python person,
write a method for us in C#" or vice-versa. Smart people can easily cross-
train themselves once the job starts. It's more about finding someone who has
the fundamentals and can apply them.

In conclusion, I would defend the hands-on "tech" interview as necessary and
not even evil.

~~~
lovich
You might not make full completion a binary success/failure metric but so many
other companies do, that people assume any random tech interview will be like
that. Its anecdotal but both my friends and I all have the same experience of
making a single mistake and seeing the interviewer visibly check out of the
rest of the interview, and only getting offers from places where you passed
every aspect of their interview correctly.

------
mike-cardwell
I was recently contacted by a company whos CEO had read some stuff that I'd
written online and asked me to interview at their place. Their interview
consisted of:

1\. A logic test.

They sent me a bunch of logic questions unrelated to programming or my
abilities as a programmer. I had a certain amount of time to answer and submit
the questions. Sounds like something dreamed up by a HR droid with no
knowledge of programming, but I went with it.

2\. A programming test.

They sent me a list of instructions for a thing to build. I can't remember how
long I was given, but it was something like a full days work, and I needed it.

I submitted the work. Heared back a few weeks later that they decided to hire
somebody else. No conversation about the work whatsoever. I logged into skype
today and noticed that the developer who sent me the instructions for the
thing to build, tried to contact me 3 days later to ask where the work was.
Even though earlier in the conversation I provided a link to the gitlab repo.
Ultimately, I don't even know if they looked at my work. I don't know why they
called it an "interview" seeing as I never actually held a conversation with
anybody.

Next time a company contacts me because they think they might want to hire me,
I'm going to demand an interview. If your interview is a series of tests, you
can get lost.

~~~
golergka
> They sent me a bunch of logic questions unrelated to programming or my
> abilities as a programmer

How can logic questions be "unrelated" to programming?

~~~
mike-cardwell
Quite easily?

------
collyw
Well at least they all got replies. I have had at least 3 interviews where I
did a take home exercise and didn't even get a reply. Unless I really want the
job I refuse them now. I have a decent score (top 5%) on Stack Overflow for my
tech of choice, so do I really need to waste an afternoon or more writing some
mini application for you?

~~~
s3nnyy
"if no one follows up, it does not mean no", that is what I learned after
doing recruiting for some time:
[https://www.youtube.com/watch?v=u6PTaTDHUG4&feature=youtu.be...](https://www.youtube.com/watch?v=u6PTaTDHUG4&feature=youtu.be&t=2415)

~~~
thebosz
My time is valuable.

About a year ago, I interviewed with a couple of companies. One particular
interview I thought went very well. They never got back to me so I kept doing
interviews and eventually landed a job that I love.

About a month later that company finally got back to me and wanted to set up a
final/offer discussion.

I told them that because they took so long, I wasn't interested.

I'm not going to wait around and hope you get back to me, my time is more
valuable than that.

------
siliconc0w
I've been on both sides of the table and the reality is that high stakes full
day interviews kinda suck - they're noisy and tuned for high false positives
(if they're even tuned at all).

Sometimes people get lost solving a problem, or don't ask clarifying
questions, or are just too nervous, drank too much coffee, or maybe just
didn't get a full night's rest. For most processes - it usually takes more
than one bad round but one bad round can rattle a candidate who can cascade.

I like to think i'm a decent interviewer (and interviewee - not particularly
gifted at CS but I've run enough rounds to recognize most problem types) I've
gotten offers from 'big 5' companies but have been rejected by some as well.
One reasonably well respected tech company wouldn't even screen me. Just a
vague rejection, 'not a good fit at this time'. Who knows why - resume went to
a busy team lead who looked at it for 5 seconds and took a dislike to some
word choice. Or maybe they were on a hiring freeze and the 'open positions'
were just for show. Maybe the non-technical recruiter didn't recognize the
technologies listed actually matched what they were looking for. Who knows.
The process sucks. Everyone knows it sucks. Maybe 'of all the processes it
sucks the least' Churchill-style. I think it's slowly getting better, people
are getting more objective - less stupid brain teasers. As engineers we want
things fixed fast (like a merged PR) but people driven processes move and
change slowly.

------
mythrwy
My belief is most people would secretly like to hire (or see hired) people who
are just a little less smart and/or a little less able than themselves. So
this dynamic is often at play under the covers.

The exceptions to this are truly great managers and co-workers and companies
that have a bright future but unfortunately it's kind of rare IMOP.

~~~
s3nnyy
You are now the second person mentioning this in this thread
([https://news.ycombinator.com/item?id=15682260](https://news.ycombinator.com/item?id=15682260))

I really had this case where a 22yr old open-source contributing child-prodigy
programmer would be rejected at the code-screening phase by a guy, let's call
him "Jon". We had a phone call with three people: HR, Jon and me.

The reasons why Jon rejected the candidate were all a bit funny and I could
not tell if Jon was serious or not. Also, Jon's Github contributions, pull
requests and other things were rather shitty anyhow, but he was responsible
for the first screenings so I had to listen to his feedback.

Jon pinpointed to some problems in the candidate's code which were more style
and not problems. Other things had good reason (verbose try catch blocks).
When I started to get defensive and mentioned that the quality of the
submission is better than Jon's stuff on Github, HR stopped me and told me
"We're not assessing John here"

Added it to the post.

------
lucideer
2 and 3 are relevant and generally applicable, and basically boil down to:

2\. HR had arbitrary unreasonable box-ticking requirements rather than
assessing the candidate intelligently

3\. HR was hopelessly disorganised

The first one however seems subjective. Maybe the candidate wasn't suitable
for the role - the recruiter thinks he was the best frontender he'd found that
year, the tech lead disagreed with his assessment. It does seem like the
company HR handled things badly afterwards (incompetent HR is a bit of a theme
here) but the original reason for rejection might have been valid.

~~~
PeterisP
In the first case, the tech lead discarded the candidate without looking at
him/her seriously or interviewing, just by looking for a few minutes at the
submitted piece of decent code and finding it somewhat unusual.

~~~
misja111
The article said that the interviewer looked for 10 minutes at the code. If it
was really just a simple assignment and the candidate came up with a complex
homemade framework then that is enough time to cast some very serious doubts.

------
san_at_weblegit
1\. As an engineer I would definitely not work with a team that comes up with
the first reason for rejection (Provided that I have not mentioned that stack
on my resume to begin with).

2\. The second reason is more of a choice of the given company. There are
companies on the other hand which give out an offer all based on cultural fit.
More than often good interviewers never make a decision on the result of the
puzzles but on how the candidate approaches it. Downside is that not all
people are up for it in the interview hour even if they are really smart
otherwise.

3\. Third is bad luck (cause of disorganized recruiting). The delay in
response has something to do with the candidate too, how much vulnerable they
are for the job. Personally I discuss the expectations for the interview
process beforehand which is super helpful since I almost always get the
feedback the next day irrespective of whether its an offer or rejection.

On the flip side there should be another discussion on how engineers get the
jobs. I am sure those stories would be interesting too. It is not about the
technical competency for majority of the times. Interviewing is an art and the
candidates who are able to make the interviewers feel good about themselves
have much more chances of offers.

------
lostmsu
I've been rejected from Facebook at some moment. I assume that happened,
because we had some sort of disagreement with the interviewer. That seemed
like a system design question, and at some moment I suggested to use SHA256
hashes to identify unique arbitrary long human input sequences (no malicious
intent assumed).

And he asked me what would I do if there's a collision. Estimating probability
of such collision to under about 10^-40 over span of 30 years of everyone on
Earth typing input for that system at max speed did not convince him there's
no need to handle collisions, and he kept insisting on that question.

Well, I got hired by another big company here, on a more interesting project.

------
msl09
It seems to me that using those websites(stackoverflow, linkedin, whatever
else) for landing in jobs is a big waste of time for prospective employees
because of how messy and quirky the hiring process is. Most of the people I
know that have been successful at being hired by big companies had some kind
of (living, breathing) coach to walk through the process.

Am I the only one seeing that pattern?

~~~
s3nnyy
The signal-to-noise ration and linkedin is surely very low nowadays. I am
actually working on a article describing what I learned hiring and firing
freelance recruiters who work mainly with Linkedin.

------
cordite
Recently experienced No. 3 in form, was scheduled with the wrong person and
the remote conference room was empty. Turns out the interviewer was another
person in their own other room. Emailing the HR rep ten minutes in resolved
the issue within five mins.

------
zerr
Iwan, another angle to diversify from other recruiters - orient (at least
partially) on REMOTE.

------
swsieber
3\. Forgotten

Huh? Where was the follow-up from the applicant?

Always follow up.

~~~
s3nnyy
Yeah but engineers usually don't, and that is why I try to "teach" them:
[https://www.youtube.com/watch?v=u6PTaTDHUG4&feature=youtu.be...](https://www.youtube.com/watch?v=u6PTaTDHUG4&feature=youtu.be&t=2424)

"if no one follows up, it does not mean no"

~~~
pandaman
It's a good thing to do when you are in sales. Your entire job consists of
contacting people. My job, as a programmer, is writing code. I will write and
re-write code until it works so I understand you. However, contacting people
is not my job. If somebody contacts me and then goes silent - it's just
unprofessional in my view. Why would I want to deal with a company, which
hires HR who are not able to respond to emails? For all I know they also hire
accountants who are unable to cut paychecks.

