Hacker News new | ask | show | jobs
by daly 2923 days ago
BALL-PITS and CLOWN NOSES

I worked with a guy, Bob, in our college computer room. Bob had returned to get his BS after many years in industry. He had great stories. He also had great advice. He taught me that you can learn a lot about how a company will treat their employees by paying attention to the way they treat you during the interview. He suggested several sign that indicated it was best to just "walk away".

If you go into a restaurant for a professional lunch meeting and they have a ball-pit / swing set /etc. it might not be the most professional place to hold the meeting. Just walk away.

If you go to a 5 star restaurant and they want you to wear a clown nose (Everybody Does It!) Just walk away.

The big scam is "We hire the best and the brightest". "We mandate a whiteboard test (Everybody Does It)". It is my opinion (based on experience) that companies that insist on a whiteboard test, despite years of programming on your resume and open source code, are either Ball-Pit companies (who don't know what it means to be a professional) or Clown-Nose companies (who know what it means to be a professional but still treat you like a commodity). Just walk away.

I understand why Google does it. I've even interviewed there. They get thousands of resumes (which they never read, at least nobody did at my interviews). They have to weed out the "learn coding in 6 weeks" crowd. But you're a professional. You should expect to be treated like one. You don't ask your surgeon to cut up hams in an interview. You don't ask your builder to nail two boards together. Professional accountants are not interviewd by bank tellers and ask to count change.

Google, like Microsoft before it (remember the "why are manholes round? quizes?"), have combined the marketing claim "We hire the best and brightest" with the ball-pit mentality of whiteboarding. Google HR (sorry, People Resource?) SHOULD be embarrassed but apparently they, and upper management, LIKE ball-pits.

A real professional interview involves a discussion about what the company does, what it current problems are (aka why are they hiring), and a discussion of if you, as a professional, have the skills to solve the problem. What do they need? How can you contribute?

We, as professionals, should consider whiteboarding as an insult.

Just walk away.

7 comments

> It is my opinion (based on experience) that companies that insist on a whiteboard test, despite years of programming on your resume and open source code, are either Ball-Pit companies (who don't know what it means to be a professional) or Clown-Nose companies (who know what it means to be a professional but still treat you like a commodity). Just walk away.

This is the typical HN vs the world attitude. "Boycott the world!" I understand the sentiment and I certainly have heard and experienced a good deal of interview horror stories.

But as career advice, I think your anger is getting in the way of your reasoning. "Turn down Google and Facebook because they don't respect you enough!" is most likely terrible career advice for the OP. The big tech companies pay world class salaries and (despite your experience) do not have a reputation for being terrible places to work. Indeed, big tech companies (the same ones with Kafkaesque and soulless interview practices) regularly make lists of the top 10 best places to work in the US.

My own experience is that every company I have ever worked at had varying level of bullshit, but that there has not so far been any correlation with the interview technique used.

Anger? I am not, nor did I intend to come across as, angry. I'm just passing along interview advice.

As for the myth of "world class salaries" I know, for example, that my nephew who works at one of the Top 5 companies, has a salary that is higher than I ever made. But he also lives near the company and has to share the rent with 4 other "world class salary" colleagues because he can't afford an apartment. I used to work in NYC with a "world class salary". One place I looked at to rent was $2000/month... which was a couch in the living room behind a japanese screen and kitchen privileges. Salary is relative (as in, it helps to have a relative with a basement apartment).

I've been to Google. What I saw was a large area of desks with no partitions, a literal sea of "the best and brightest". A historically accurate counterpart might be https://bakethiscake.files.wordpress.com/2012/07/sewing-room...

However, the coffee is fresh and free. The sleeping pods are available. Laundry and haircuts can be had onsite. The food is first class and available for breakfast, lunch, and dinner. There is, in fact, no valid reason to leave the building. It's almost like working from home.

If you're fresh out of college and just passed your data structures final you probably can quote the order of an algorithm off the top of your head. If you hate your current job enough to put up with anything, sure do the whiteboarding. I certainly have done it. I'm not above it for some jobs. If you don't mind travelling to a location and talking to people who have no idea what you might do, why you're there, or who you might report to, then go for it. If you're being laid off and need a new job in a hurry, go for it. If you're not confident in your abilities as a professional, go for it.

But if you're job shopping and looking for a company that respects you as a professional, give some thought to the interview process. That process is dictated by management so it is a direct representation of how management views you. If you are considering a job change and looking at other companies, look carefully at what is being presented.

I've had bad interviews that were directly with the hiring managers. But at least I was pretty sure that I was turned down because they didn't need or didn't want what I could do for them. And I didn't have to remember that Coopersmith-Winograd is O(n^2.375477).

I used to say this about the whiteboards. Then came the take home tests.
Send your architect home to build a rocking chair over his weekend. See if he calls you back on Monday.

A take home test is a very clear statement by management that your time is less important than their process.

As a professional, you only have your time and skill as your saleable assets. You have the choice of giving them away for free. You could, of course, take the test and then present them a bill for your services.

Another interesting question to ask would be: "How many of your senior management were hired as programmers who passed a whiteboard test or a take home test?" Clearly, according to the market myth, those who did pass were "the best and the brightest". It only stands to reason that upper management is composed of programmers.

Ball-pits are in plain sight, if you choose to see. Ball-pit companies who whiteboard and use take home tests are also in plain sight, if you choose to see beyond the "best and brightest" market hype.

I really respected a Lisp legendary programmer, Daniel Weinreb. He worked at ITA software on airline reservation software. We had many discussions. I'd love to have worked with him. But ITA has the same testing game and I couldn't convince myself to bother. I'm certain I could pass their tests. I've been programming in Lisp since the 1970s. And ITA was a 5-star restaurant kind of company. But those tests are a "Clown-Nose" warning to me. I just walked away.

Walking away has a cost. But so does management games like quarterly status reviews, yearly performance reviews, monthly reports, 1 to 5 rating scales, etc. Clueless management does things like make a rating scale of 1 to 5 and then fires the 5 performers. They have never heard of the Deming Prize (https://en.wikipedia.org/wiki/Deming_Prize), and never bothered to learn what Deming makes painfully obvious. You really should watch Demings Red Bead test https://www.youtube.com/watch?v=ckBfbvOXDvU

Ball-pits and Clown-noses are a sure sign that managers are not well trained, indeed that they are not themselves professional managers.

You keep comparing developers to architects, doctors, accountants, and lawyers without realizing there's a huge difference between the latter and the former: licensing. That makes all the difference, my friend.
Good point. Technically, according to your metric, programmers are not "Professionals", licensed to practice their art.

On the other hand, if you have a degree and years of experience, would a license matter? I wouldn't object to licensing for programmers. At least there would be common standards, not random whiteboarding.

Of course, you realize that licensing has a dangerous downside. If you're a licensed programmer and your company get hacked because of your bug, you would be liable. If your code fails to detect a pedestrian or fails to brake, you're liable for murder. If the Ariane rocket is destroyed and a multi-million dollar satellite is destroyed, you're now deeply in debt. If your Therac 25 software makes a mistake, again... murder. So be careful what you wish for.

At a robot company I worked for we agonized over this. Could a robot, driven by our software, accidently kill someone? To get around this we put up hardware safeguards; chain link fences with kill switches on gates, pressure pads with kill switches on floors, and any other hardware we could invent. In theory, we programmers were not liable, but if we were licensed we probably would have been.

So, yeah, license programmers. Require a degree. Require certification. Require certification in the language you use and yearly refresher courses. Require proof-carrying code. Require financial bonds to cover losses caused by your code. Require insurance to cover losses covered by your code.

That's probably a good solution to the whiteboarding issue.

Honest question: what does licensing solve/prove that transcripts and/or certifications don't?
> The big scam is "We hire the best and the brightest".

And adding noise to the hiring process increases the effect of "we are the best".

If you flipped a coin, it would be more honest and less expensive than putting people through a "difficult" whiteboard test. But you wouldn't get the "we only hire geniuses" effect.

As these "difficult" tests are usually based on a corner of the CS field that the interviewer enjoys, it is essentially random, while appearing to be totally meritocratic.

You end up with a process that filters out 90% of qualified candidates, but nobody that was hired by that process wants to change it.

"Automatically reject 10% of applicants. We don't hire unlucky people."
Spot on.
"which they never read, at least nobody did at my interviews"

At small companies, the people that interview you are likely to participate in the hiring decision, so it stands to reason that they would read your CV. At companies like Google, interviewers are tasked with providing data that's not on your CV. Your CV would definitely be read by several people before an offer is extended.

"real professional interview involves a discussion about what the company does, what it current problems are (aka why are they hiring)"

For a company as large as Google, there is probably no one who could tell you what all the current problems are. Or even what all the open software engineering roles are about. And there's a lot of information on the web about Google, what they've done, what they're doing and trying to do.

(If I were being considered at a role at a small company, of course I'd expect the type of discussion you envisage, early on in the process. But at Google etc. I'd expect for those issues to be discussed with the recruiter (early in the process) and then with specific hiring managers (when they're ready to make an offer, but need to match you with a team)).

>It is my opinion (based on experience) that companies that insist on a whiteboard test, despite years of programming on your resume and open source code, are either Ball-Pit companies (who don't know what it means to be a professional) or Clown-Nose companies (who know what it means to be a professional but still treat you like a commodity). Just walk away.

You're entitled to your opinion.

I even happen to hold part of it.

But discounting the entire idea of whiteboarding is incredibly stupid.

No, you should not be writing more than pseudocode/logical outlines on the board.

But you absolutely must be able to convey ideas - and visual conveyance is the best way to convey them.

Draw basic flow diagrams.

Write logical steps.

Document, explain, and argue for not only why this approach "will work", but why it's appropriate for the given scenario (could be, "if I only have an hour to get this to work, this is how I'll do it: it will work, but it may not be efficient or pretty", or "here's the high-level overview with a couple zoom-ins - obviously the full solution will take some time to fully architect, but this is a very strong start", or "there are many better ways of solving riddles like this - I don't waste my time recalling those trivialities when I can look them up in a few seconds in <name of book/website>").

I don't have really have a problem with white-boarding in theory, and as one part of the interview process to help make a judgement call. E.g. if the candidate is weak in talking in one area but strong enough in white-boarding to balance it out.

What I, personally, have a problem with is using it as the catch-all filter to weed out 'bad candidates' when in reality all it does is prove someone can grind leetcode and is good under pressure. Arguments can be made that those are desirable skills to have, but I hate that it's becoming the default pass/fail section of an interview.

In OPs case, and what I am generally against, is that white boarding is being weighted more than any other portion, including relevant and measurable experience. Sure, give a simple problem if you're worried the candidate is BSing about their experience/skills, but it should be set up for success and not failure.

Unfortunately, as long as the 'best companies' (i.e. FANG) are doing it, everyone else will follow suit. And yeah, it'd be great if job seekers had the opportunity to walk away from these types of interviews, but in reality it is very much a company favored market when it comes to hiring in tech right now. Despite the constant supply of new job openings, nobody seems desperate enough for engineers to change things up.

There's also a bit of engineer hubris involved. Most people who are into CS seem to be highly competitive and willing to show off, and white boarding sets up a great environment to get your ego stroked over how well you can optimize something for no reason at all.

I agree with pretty much everything you say but the reality for the majority of people is they can't afford to "just walk away" when those things are so widespread.

It was in another recent thread someone was insisting you should "just walk away" if the company doesn't have private offices.

It's not practical for most people.

I agree. I'm just passing on some general life advice for interviews I got from Bob. If you're in a position to look around for other opportunities (as "the best and brightest" often are), it helps to see through the market hype. If you're actually in need of the job, do what they ask. I've been in both situations.

IBM often had "hiring freezes", nobody could hire anyone... well, except that I still did some interviews at IBM Research. There were people we would hire under any circumstance. In fact, one of the people I interviewed during a hiring freeze was offered a job and a whole new lab. She really was one of "the best and brightest". (She actually did walk away and went elsewhere.)

Do you really think that Geoff Hinton, Andrew Ng, and Yann LeCun got whiteboarded?

I'd like to share a more balanced approach (sure, give me heat for fence sitting), and while I agree with the above, there's a time to walk away, and there's a time to suck it up.

I would strongly to suggest finding interviews at some stage of our lives with the pure intent to walk away from. If you feel strongly about the process, it's one thing to grumble, but this is the only way change will happen.

If you're desperate for a another job however, and are really feeling like you need to be in a new place within 6 months, then go through a phase of sucking it up, finding a daily challenge on hackerrank, and seeing if "you've still got it" with these silly problems that we all know are exclusive to undergrad studies and nowhere else.

Great analogy with the ball pit and clown nose btw, I'm going to use that.

"We, as professionals, should consider whiteboarding as an insult.

Just walk away."

Absolutely disagree.

There are tons of developers who have many years under their belt and have glaring holes in their skillsets, or have a complete skillset mismatch, or who are simply not very bright.

Conversely, there are some people who are absolutely brilliant, or deeply knowledgable in some areas, and this is one way to possibly determine this.

Though a whiteboard discussion is not always going to be entirely efficient, and can be used to test all the wrong things - it is an opportunity to talk with someone directly about the kinds of problems they will solve.

Any developer that won't do whiteboard work is displaying 'negative signals' and you should not hire them.

Of course, asking potential hires ridiculously difficult or specific questions which essentially tests their ability to memorize CS algorithms is futile as well ... but whiteboard chats are generally positive and it's why all the best companies use them.

Yes, I agree that walking away from whiteboarding is displaying "negative signals".

It is a sign of "an attitude and discipline problem", what IBM Research used to call "wild ducks". They placed great value on finding and hiring "wild ducks" (well, they used to, until they decided to "manage" IBM Research). A wild duck doesn't look for the most efficient algorithm, they look for the most efficient solution. They are rarely the same thing.

Most companies decide to hire someone when they have a problem that needs a solution, when they plan to expand in a new direction, to enhance the skillset of a team, or to cover work based on a new or expanded contract. It is very odd to hire because, hey, we want "the best and the brightest".

So the most efficient method of hiring for a solution, direction, skillset, or contract work is DISCUSSION between the person who has the problem and the person who might be the right fit for the problem. If you're looking to move your bank into digital currency it is a pointless waste of everyone's time to schedule interviews with four bank tellers.

Also, in my experience, whiteboarding is usually conducted by new hires (maybe it's just me?) who recently graduated. So their questions involve either an algorithm they know well or a discussion of the order complexity of the algorithm. Odds are good the questions were on their data structures final exam last semester. Perhaps I never get past this level because I don't know how to program.

Whiteboarding is the same level of nonsense as the old Microsoft "How many gas stations are there in NYC?" interviews. It is supposed to show that you can "reason" and give you an idea of how intelligent someone is. In my experience interacting with intelligent people, their "intelligence" shines through in conversation.