
Tech Interview Handbook - yangshun
https://yangshun.github.io/tech-interview-handbook/
======
DavidWoof
I realize everybody's going to jump in and rant about algorithms in
interviews, but I wish you'd all add something constructive as well.

I just had to conduct a round of interviews in a non-SF large US city, and it
was a hellish crapshoot. Resumes are meaningless, and often re-written by
recruiters to match the job anyway. Everyone has the same canned answers to
the stupid behavioral questions. And as for the code, we included what we
thought was a trivial nested for-loop problem and virtually nobody could even
get started on it.

Is this kind of code problem too complicated in your opinion? For all I join
in when complaining about irrelevant algorithmic questions, I have to admit
that they at least test _something_ , even if it's just willingness to study
for the interview.

Instead of reading everybody's complaints about interviewing, I'd love to hear
how you think it should be done. Because I have to admit I'm pretty much lost
right now.

~~~
jjav
I can tell you how I do it and would certainly recommend it as the way it
should be done. For some context, I've been interviewing software engineers
for about 25 years in companies ranging from established multi-nationals to
tiny startups in very fast headcount-growth mode. I'm in silicon valley. I can
say that I've never regretted a hire I said yes to, so the method works to my
satisfaction.

It'd be nice to think I have some special skill here but I really don't. This
is just how interviewing was done in the 90s. To some of the younger
generations, I've been told it sounds crazy.

If you send me your resume I'll actually read it, carefully. If the person
described in this resume fits the background experience the role needs, you
get an interview.

During the interview we'll talk about all those projects you worked on that
are relevant to this role. Which parts you enjoyed the best and why? Which
parts were boring and why? Which parts were the most challenging and why? What
you find too easy and why? What would you have done differently? Could you
have? If you were to do the same project all over how would you approach it?
Other open ended conversations along these lines.

I don't ask anyone to whiteboard code, that's not part of the job so it's not
part of the interview. No puzzles, no trivia-pursuit style questions.

It works great. You can't BS your way through such a conversation with a
senior technical peer if you didn't actually do the work described in the
resume. You just can't.

It is, however, vital that the interviewer must be a expert in the field.

~~~
wincent
These questions should definitely be part of the interview process, but not
all of it. I've done a lot of these kinds of interviews and I've definitely
seen candidates that speak impressively but fail basic technical tests.

If you don't actually verify the technical problem-solving ability of the
candidate in _some_ way you're forgoing signal that can massively increase the
confidence you can have in your decision.

~~~
sieabahlpark
Anecdotal but we've hired an engineer who was pretty decent in the interview
but couldn't figure out how an if statement worked in a legacy codebase.

Yes, I wrote that right. He struggled to understand conditionals in general
when building his own logic. The guy even had a masters degree.

~~~
bakuninsbart
So I had the same problem for a while, it was quite absurd, because I got
through my uni courses, could decently code in Haskell and some other things,
but never figured out the appropriate position to put an if clause.

I then did a course on assembly programming and having to be extremely
structured and using jump statements actually helped me a lot in easier to use
programming languages.

Point of this comment is that people might be good at a lot of things, while
just having some weird brainfuse related to a very specific thing. That said,
not using if statements makes programming rather difficult.

~~~
sieabahlpark
No see I wish they had any redeeming skill, he always asked an engineer to
assist him with anything. They couldn't figure out anything on their own. It
was shocking someone could complete the interview (small problem with a
solution that is essentially explained, make x do y) and completely fail at
building their own solutions without guidance

------
yumraj
Given the current state of tech interviews, they have more or less become like
standardized tests, such as SAT, ACT, GMAT, GRE... with guides, cheat sheets
and perhaps neighborhood coaching institutes on the horizon with instructors
who have cleared tech interviews in FAANGs.

Are we going to see tech recruitment become more and more like college
admissions where a top score in the interview is just one of the criteria and
no longer sufficient to get a job?

Perhaps next is asking people to write essays regarding career, goals, why
they want to work their, extra curricular etc..

~~~
_hardwaregeek
Y'know, as someone who went to a very competitive public school, there were a
particular brand of driven, studious kids who knew exactly how to paint along
the lines, play the game, and get into the college of their choice. They
understood the precise combo of grades, extracurriculars and essays to get
into a "good" school.

I definitely see some of those kids doing the same tactics to get into a
"good" company. The steps are slightly different but the philosophy is the
same: grind Leetcode, participate in tech clubs and take bullshit jobs juuust
long enough to get an internship, get said internship and parlay it into a
return offer. Put your head down, play the game and reap the rewards.

~~~
firstplacelast
I mean it's all a game as much as it sucks. One of my best friends in high
school was a salutatorian because the school didn't wait grade. She took zero
AP classes and very few honors classes. She knew what she was doing.

Friends in college took less challenging majors to boost GPA for med school
(business admin, environmental policy, etc) to boost grades and there core
classes were easy so it gave them more time to focus on med school pre-reqs.

It has been and always will be a game. Few things in this world come down to
meritocracy because the way we socialize and the way we interview does not
beget that in absolute terms.

Tech did a better-than-most job as a meritocracy for while, but I believe
those days are done. Most areas f tech are too mainstream with too much
obvious money at stake.

~~~
driven20
I don't understand why you are discrediting people who are taking the better
path to med school. Work smarter, not harder.

There is also short game vs long game. For example, if you cheat on a test
without learning the material. You might win the short game, but if that
material was important and you need it later you're losing the long game. That
said, if the material was just fluff and no one really cares. It's actually
smart just to cheat and get by.

~~~
username90
People who take the easy way or cheats to get around bureaucracy will do the
same thing after you hire them at the job. They will do things like avoid
password salting for your database unless you explicitly tell them to do it
etc.

In other words, I don't want to hire "smart" people, I want to hire
intelligent people who take pride in what they do and don't try to take
shortcuts to make their lives easier at the expense of others.

------
kthejoker2
Having hired dozens of devs, I can confidently say there is absolutely 0%
chance to consistently successfully identify good developers in any reasonable
amount of interviewing / assessment time period.

The best way is someone brings in an existing code portfolio and discusses it.

The second best way is someone completes multiple design and development
exercises of varying complexity, constraints, and use cases.

The third best way is they complete a single exercise and provide commentary
on alternative designs.

There is no fourth best way; all other approaches are essenrially stochastic
and select for interviewing traits not development traits.

The actual best method I think is a 3 month probationary period which is more
or less an extended interview. They're asked to contribute to existing
codebases, participate in code review, go through some architecture design
sessions, conduct stakeholder interviews - things that again are mostly
impossible to accurately gauge in a typical candidate assessment window.

By the way a tremendous book for interviewers and hiring managers is How
Judges Think by Richard Posner. A lot of it applies to hiring, and he's a
great writer.

~~~
triceratops
> The actual best method I think is a 3 month probationary period which is
> more or less an extended interview

Most states in the US have at-will employment terms. Probationary periods are
common in other countries. And yet no one seems to want to do what you're
suggesting.

~~~
UnpossibleJim
The problem is, most companies in the US want to hire you on as a Contractor
and not a full time employee for those three months. I can't speak for
everyone (but most folks, I assume), but I need medical and dental. I can't go
three months for the chance of maybe getting it. I can't do it personally and
i can't do that sort of thing to my family. there are other options in other
countries (depending on the country). I'm a centrist by nature, but this makes
a "three month interview" untenable, IMO.

~~~
triceratops
Sorry what I meant was US companies could treat the first 3 months of any
full-time/W-2 employee as probationary because they can fire anyone for any
reason other than protected characteristics. It doesn't even need to be an
official company policy documented anywhere.`

~~~
DavidWoof
They could in theory, but nobody wants to. I used to see probationary periods,
but I haven't seen a company use that for salaried staff for a long time. HR
and Legal have put an end to that kind of thing.

So Jim is right, in practice the only way HR is going to let you have a
probationary period is to use contractors, and that limits your hiring pool
significantly.

~~~
Consultant32452
Every decent sized contracting firm I've ever worked with offered benefits.
It's more expensive, but you just price that into your rate. So I don't
understand what the concern is. Is it the risk that after 3 months you won't
be brought on full time?

~~~
DavidWoof
Upheaval is the issue. First, most contracting firms have pretty crappy
medical plans. Secondly, there's generally a wait period before full benefits
kick in. Thirdly, you wind up switching your medical plan multiple times in a
short period.

That's fine if you're single, but if you've got kids that might mean switching
doctors multiple times, which is a gigantic huge deal. Also, you have multiple
periods of time where you don't really know your benefits which is terrifying.
And if the company _does_ drop you after three months for whatever reason, now
you're doing it again.

And keep in mind it's definitely a seller's market if you're a good dev. It's
incredibly unlikely that the 3-month contract is the only offer on the table.
So all things being equal, who would take it?

~~~
Consultant32452
Your description sounds like this should only be a problem for families with
serious medical issues, which would be the minority. I do have a kid. If your
kid is relatively healthy then pediatricians are basically replaceable
widgets. If it's important to you, just pay the cash rate for your favorite
pediatrician during that 3 month period. If you're really hung up on it, you
can just choose the COBRA option and keep your old insurance during your trial
period. It's very expensive, but again, you just calculate that into your
contracting rate.

>And keep in mind it's definitely a seller's market if you're a good dev. It's
incredibly unlikely that the 3-month contract is the only offer on the table.
So all things being equal, who would take it?

I don't feel any additional security whatsoever being a least tenured employee
vs contractor. Maybe there's some statistical benefit, but it seems pretty
small. So for me, it's practically zero cost to do the contract-to-hire thing.
Any financial costs are just built into my rate. I'd rather spend my hiring
currency on other stuff like working remote full time and extra vacation days.

It probably makes a difference that I spent a big chunk of my career as a self
employed consultant. I do remember feeling some anxiety when I first
transitioned from a regular employee to consulting. But I quickly learned my
anxiety was unfounded.

~~~
DavidWoof
I do a lot of consulting as well and am comfortable with it. But most people
with families want more stability. I don't know why you're pretending to be
surprised by this.

Your personal preferences aren't really the topic at hand.

~~~
Consultant32452
It's not about my personal preferences. If you're concerned about an
instability period on your healthcare you can literally keep you old
healthcare for up to 18 months with COBRA. Adding the contract-to-hire period
doesn't really impact instability, at least as far as healthcare is concerned.

~~~
DavidWoof
I fear we've gone down a wrong turn. You may be 100% correct that fears about
instability are irrational and not well-grounded, which is the point you've
argued for several posts.

But nobody is arguing with you. Nobody is making the contrasting argument.
That simply isn't the conversation anybody is having. It's an interesting
conversation, it just doesn't happen to be _this_ conversation.

~~~
Consultant32452
I asked what the concern was and you responded primarily in the area of health
care/insurance. So that's what I addressed. What else is the conversation
about if not that?

------
codingslave
Two outcomes for the technical industry:

1.) Everyone is studying these problems all of the time and they finally
disappear.

2.) Other outcome is a dystopian field fueled by a race to the bottom where
everyone is practicing algorithms problems all of the time. If you read the
blind forums, some people are completing 500-1000 leetcode problems before
heading into interviews.

I'm putting my money on number 2, which is where we already are. Can only
imagine what this is doing to code quality...

~~~
triceratops
> Can only imagine what this is doing to code quality...

Why would studying algorithms and data structures affect code quality? They
would similarly be able to learn to write quality code once they're inside the
company, no?

~~~
lawn
Because these problems encourages you to write unreadable code. It makes sense
when you write it, because you can fit it in your head, but you never have to
revisit it after having passed the problem. It encourages one letter variable
names and other quick hacks in the name of speed.

They work against creating readable, understandable and debuggable code which
is much more important in general than being able to solve algorithimical
problems you'll almost never see in real life.

I've seen this first hand where some were brilliant at these problems but
wrote the worst code imaginable. I would rather hire someone who can write
clean and simple code and teach them how to solve these problems than the
reverse.

~~~
username90
> I would rather hire someone who can write clean and simple code and teach
> them how to solve these problems than the reverse.

Why? Teaching people to write readable code happens automatically during code
reviews, teaching people how to think is a lot harder.

~~~
lawn
Because producing simple and good code is much more important.

It's quite condescending and narrow-minded to say that solving algorithmic
problems is thinking, but writing clean and simple code isn't.

Writing readable code is much more than just formatting code and using decent
variable names. It's about simplifying your design just enough. Code reviews
is not enough to teach someone this.

------
fogetti
There is something I cannot understand and this has already become a cliche: >
Technology industry is an extremely fast-moving one. Many technologies used
today didn't even exist/were popular a decade ago; in 2009, mobile app
development and blockchain were pretty much unheard of. Engineers constantly
need to upgrade their skills to stay relevant to the demands of the job
market. Engineering is a great career for passionate individuals who like to
learn.

Why would anyone give this advice? Can we stop handing out this advice and
encourage everyone to stand up for their rights instead? If you think about
it, by proxy this gives you the following advice: as a programmer you will
have no life outside of work and you are supposed to be an idiot who spends
his time working and studying outside office hours even when you could spend
time with your family. So yeah, go for it and suck it up you idiot.

At least that's how most employers handle this problem. And interestingly by
comparison no-one tells a MBA diploma holder that it's a great career for
passionate individuals who like to spend their whole life studying.

And before you think that I am against studying, that's not the case at all.
If my company pays for it and I can kick back on a sofa during working hours
to study I am fine with it. But I cannot see any value studying something on
my own expense on my own time which will be outdated in 3 years anyway and so
by definition it only benefits my employer.

~~~
bushido
_Why would anyone give this advice?_

It seems relevant to getting a tech job. If one is looking for a job, chances
are that things have changed since the last time they looked for a job, which
on an average for most people these days is every 2-5 years.

This is not limited to engineering or tech, and extends to most specialized
jobs in most industries.

 _Can we stop handing out this advice and encourage everyone to stand up for
their rights instead?_

In the right context absolutely. In general, its possibly a bad idea. You
could always balance it out and educate the folks about the rights of an
employer

If you were on my team, I would not expect you to sacrifice any of your
rights. But if you kept falling behind your peers, to the determent of the
team's performance, at some point you would be put on a performance plan. The
unfortunate thing about performance plans is that by the time its enforced
things are close to unrecoverable.

And if you did find yourself failing, I hope someone tells you that:

 _The technology industry is an extremely fast-moving one. Many technologies
used today didn 't even exist/were popular a decade ago; in 2009, mobile app
development and blockchain were pretty much unheard of. Engineers constantly
need to upgrade their skills to stay relevant to the demands of the job
market._

Because, I will not.

~~~
fogetti
I don't know what is a performance plan. Can you elaborate? I have never
worked in a company where there was such a plan.

Is this public to employees or you just simply whip everyone until they work
themselves to death without telling them the reasoning?

Also I assume you are in the US. In most European countries you can absolutely
do nothing about someone who works full time on your team unless they let's
say causes you financial losses or punch you in the face, so you can basically
shove up your plan to your bottom part in other cases.

~~~
bushido
Performance plans, or performance improvement plans, are extremely verbose
formal documents that are used as a last step to tie up all legal requirements
before terminating an employee. These are most commonly used in countries
outside US.

Most of the US follows At-will employment[0], so generally no performance
plans are necessary.

This is not public. We've only used it twice, one person was suspected of
misappropriation of funds (and later proven), and one that's currently in
motion is an employee that misrepresented their technical knowledge i.e.
cannot write code, convinced other employees to do 90% of their contributions.

I get that there is this impression of the US whipping everyone until they
work themselves to death. Anecdotal, but I've never really experienced that.
If anything, the folk in the US like being busy, and workplaces (at least in
tech) are overly happy, in something that reminds me of a cult.

I have lived an worked in 5 countries in 3 continents and worked with people
living in many more countries. In my own observations, the US colleagues have
usually exhibited the highest level of happiness/satisfaction. They also tend
to find their next jobs the quickest. And are paid the highest.

[0] [https://en.wikipedia.org/wiki/At-
will_employment](https://en.wikipedia.org/wiki/At-will_employment)

~~~
fogetti
Thanks for the info. Interesting. But I assume this (i.e. the plan) is
something that the employee can choose not to sign if it was not in the
original contract and the law doesn't require him to do so. At least I
wouldn't sign anything like that. And if he doesn't sign it then you can try
firing him. Which might or might not be legal (which usually a court decides).
At least that's how it works in those countries I worked in.

It's also not rare and it's actually on the news all the time all around in
Europe and Japan that a company fires someone whom later the company is forced
to hire back by court ruling.

------
nharada
Some of these "questions for the interviewer" are very good. In particular I
like some of the "tell me the negatives" ones:

> What is the most costly technical decision made early on that the company is
> living with now?

> What is something you wish were different about your job?

> What has been the worst technical blunder that has happened in the recent
> past?

~~~
cactus2093
These are good questions, I like how they are phrased so concretely instead
just asking “do you have a lot of tech debt?” They’re interesting for getting
to know the team and getting a piece of insight you usually wouldn’t have
until a few weeks into the job.

But I would be careful how you interpret these. In fact I would almost factor
in these answers in the opposite way of what I think you intended. The company
that admits to the worst technical issues is at least honest and self
reflective. The company that doesn’t admit to any serious issues might be just
as bad or worse, but their strategy is to tell employees to lie about it
rather than be open to addressing it.

------
strikelaserclaw
For all the negativity for these type of tech interviews, they are, from what
i've seen, one of the most merit based systems out there. It is either this or
we need to create some sort of national developer exam. The other alternate is
to get jobs at good companies, they will only look at what school you went,
whether you graduated with a CS degree, what companies you worked etc... All
things which do not guarantee merit.

~~~
mixmastamyk
Merit at high pressure performance, not being a good developer.

~~~
strikelaserclaw
it is not a perfect system but nobody can really predict a good developer till
someone is already on the job. A good developer is more than algo skills,
he/she also has good communication, works well with others etc... These are
not things we can test yet. The problem with our profession is since it is
lucrative and has no real licensing, it is a perfect breeding ground for
fakers.

------
rvz
While this is very good to study before a technical interview, over time
however I can see that this alone is going to make it 40x harder to
differentiate say 100 candidates that are all perfect at interviews in
general, that we are going to start asking ridiculous Oxbridge-style interview
questions and expect perfect scores to advance 'good' candidates.

Perhaps companies will start asking candidates to construct mathematical
proofs of data structures, algorithms, formulas and common equations from
university-level entrance examinations just to do a mobile app or a web dev
job.

As soon as that happens, the 'ideal candidate' companies will be expecting to
interview would be a very prodigious candidate, former math Olympiad champion
and decorated with titles and research papers in their name.

You guessed it: 𝔜𝔢 𝔬𝔩𝔡𝔢 𝔩𝔢𝔤𝔢𝔫𝔡 𝔬𝔣 𝔶𝔢 10𝔵 𝔡𝔢𝔳𝔢𝔩𝔬𝔭𝔢𝔯.

~~~
chrisseaton
> Perhaps companies will start asking candidates to construct mathematical
> proofs of data structures, algorithms

Perhaps we’d produce better software if people prioritised correctness like
this in practice!

~~~
rvz
Perhaps so. Those sort of questions would benefit a company working at the
scale of FAANG or Microsoft and actually tackling or researching real computer
science problems.

Now would this make sense for a graduate entry level role for a web / mobile
app developer position? Interviewers looking for such candidates need to lower
their expectations a bit in for positions like that.

------
jiux
I once interviewed at a startup for a senior engineer position and was asked
“if aliens came to Earth and asked you to go into their UFO with them, would
you?”...

As much shit as we give white-boarding, I would have chosen it instead if it
were an option.

~~~
xtracto
At one time i was asked "why do frogs croak? I gave a series of answers like:
to attract the opposite sex, gave some biological explanation of how they
achieve that. But the stupid interviewer kept asking me why?

Needless to say after the interview ended i ran away from that deal.

------
jumelles
> Get a proper email account with ideally your first name and last name, eg.
> "john.doe@gmail.com" instead of "angrybirds88@gmail.com"... Avoid emails
> like "me@christi.na" or "admin@[mycooldomain].com" \-- because it is very
> prone to typo errors.

I don't think I've ever seen anyone explicitly recommend against using a
custom domain for email.

~~~
sdan
That's what I was thinking as well. If I gave you the following emails:
s@vdan.cc s@dantuluri.cc surya@suryad.com dsuryav@gmail.com

Which would look most professional?

------
dayvid
Well organized, but a lot of noise. This is honestly the best guide I saw (got
a job at a FAANG company following it):

[https://haseebq.com/how-to-break-into-tech-job-hunting-
and-i...](https://haseebq.com/how-to-break-into-tech-job-hunting-and-
interviews/)

------
sudhirkhanger
When I talk to other Android Developers I notice that they aren't really using
much of data structure and algorithms in their day to day programming except
1-2 very basic one's like ArrayList, List, and HashMap.

1\. If I am not using a lot of data structure and algorithms in my day to day
work how am I supposed to be good at it?

I am very good at finding solutions to problems but I am very bad at
remembering a lot of things.

2\. How does one even prepare for a subject as big as Android? The thing is
vast. And asking trivial things about it won't be very useful.

------
habitue
In my experience, dynamic programming is overrepresented in interview
questions (vs. like other algorithm techniques). Everyone loves to ask dynamic
programming questions, make sure you've done a lot of them and you'll look
really impressive.

------
interviewthr
How is this much different than a paid smaller version of LeetCode?

When I was prepping I got the most value out of LeetCode for solo prep,
followed by mock interviews with sites like Pramp.com, Gianlo.co, and
PracticeCodingInterview.com.

I don’t know why tech companies don’t just admit that this is all pretty much
standardized at this point. Just build a standardized test, or certification,
and get it over with.

~~~
nvarsj
That’s a great idea. Tech interviews are a poorly implemented version of
something like actuarial exams. Let’s formalise it and give people a
certificate for it - Certified Software Engineer.

I’m only half joking. At least we’d only have to go through the process once.

------
craz8
So, as someone who’s been out of school for a million years, after my name and
contact info, my education info is the second most important thing?

I don’t think so

Maybe this should be titled “Just Graduated? Some Useful Tips”

------
shawnps
I stumbled across another amazing resource a while back - recorded mock
interviews:

[https://interviewing.io/recordings/Python-
Google-6/](https://interviewing.io/recordings/Python-Google-6/)

I'm not affiliated with this site, I just thought this was a great idea and
well executed.

I used to lean toward the "studying algorithms, data structures,
whiteboarding, etc. is useless since I'll never actually need them" ideology
until later in my career when I realized that worst case (for me) I can take a
break from building CRUD apps and refresh my CS fundamentals. I enjoy speeding
up code and then asking myself, "can I do better?" each step of the way,
trying to make further improvements.

------
ixtli
What if people not being able to answer simple programming questions is a
problem with the interviewers, and not the interviewees?

~~~
maehwasu
This is one of those ideas that sounds really sophisticated, but is just
wrong.

The fact is that there a tons of people out there representing themselves as
programmers who actually can’t perform basic tasks.

The HN population massively selects for competence, so people here have a hard
time imagining what things are like from the interviewer side.

~~~
mixmastamyk
Notwithstanding, interviewers could also be asking misguided questions. Which
I find often.

------
applechen777
This thread has been a great discussion. We are a startup and did hiring
ourselves. We gave 1) algorithms, system designs type on questions 2) a mini
project like build a profile in React Native. With 10 sample size, we found
people who finished the project quickly and reasonably performed well at work
while candidates who passed algorithms didn’t grow as fast.

The main thing is the problem solving oriented skills in a project that really
makes a difference.

Thus, we pivoted to do a mini project screening automation for companies to do
hirings. This site has backend to frontend tasks that come with a CLI to code
the project locally. The website is called
[https://real.dev](https://real.dev). We want to solve this interview problems
for companies.

------
jonotime
I'm going a different route with interviews and wonder if anyone has input...
I'm a senior backend dev with 10+ years of experience. Breadth of projects,
masters in CS, open source work, team lead, top contributor, great references,
etc. But I cant pass a coding interview, because I kinda freeze up during
algorithm whiteboarding questions. I get requests for interviews daily and
have been considering starting with a cover letter that basically says I'm not
good at coding interviews, but love to talk tech (and see other positives
above). Could I do a homework assignment or anything else to show my worth?

Has anyone had any luck with an approach like this?

~~~
mixmastamyk
Put “I don’t do pop quiz interviews” on top of your documents and see what
happens. I do this but haven’t been so blatant about it. Networking is the
only other avenue.

------
thelazydogsback
> ... nobody needs to know: > Anything less recent than 3-4 years

Really? I did the most interesting and challenging projects earliest in my
career (late 80's to early 2000's) -- just due to the nature of the industry,
I'd think that more recent project descriptions have undergone a certain
homogenization that would make them less and less an indicator of talent and
varied experience.

I can chat excitedly about early projects, but now people must all be saying
"cloud blah JS blah containers blah blah bit-pipes and storage blah - oh yeah,
and modands!"

------
Rainymood
Jezus, the amount of hoops people are willing to jump to work at a certain
company. And it baffles me that I might want to jump these hoops as well ..

------
davidjnelson
This looks pretty reasonable
[https://www.blog.google/technology/area-120/byteboard-
interv...](https://www.blog.google/technology/area-120/byteboard-interview-
measures-for-essential-engineering-skills/)

------
streetcat1
One of the goals of technical interview (or any interview) is to find your
real charterer (are you lazy? do you break when you do not find a solution?
are you creative?)

The quickest way to do that in a 45 min, is to put the candidate under
pressure.

The best way to put a developer under pressure is to ask coding questions and
expect some solution in a very short time.

Note that the goal is NOT to find out if you know the ins and out of a
specific algorithm. It is to discover how you think under pressure.

------
arvinsim
Curious as to why the geographical locations provided are only for US and
Singapore.

~~~
x0to1
The author is from Singapore and writing from the perspective of a graduate
with fang jobs to his juniors. Also, looks like it showcases some
software(Docusaurus) he made at facebook.

------
iamspoilt
Just wanted to say thank you for this!

------
codecrusade
Thanks. This is gold.

