Live data from Hacker News

Facebook senior software engineer interview

daqo.medium.com

511–520 of 524 posts

Re: Facebook senior software engineer interview

#511

Been there. Done that. Fuck Facebook. They focused way too much on "college mentality" skills and zero on long term knowledge or experience with developing software in the field. They also didn't ask jack shit about my past experiences. Basically Facebook doesn't care about hiring specialists. They just want generic robots who will do their bidding.

But how can they do in a way that scales? Certain people seem to be annoyed that they don't just ask questions that can't be verified and take the candidates word at it.

It is better to hire fewer employees that last. That is, more effort should be spent on retention and less on acquiring as many disposable employees as possible.

Most of the big companies treat their employees like trash and lose them rapidly. They think "Well we pay a lot so we have tons of people banging on our door to work for us, so we don't need to worry about getting new employees." This is a bad mentality.

New software engineers need to always be interviewed by those who are senior to the level at which the employee is being hired for. You will never be able to reasonably determine candidate level if you don't have more experience than they do.

The notion of "always hire employees smarter than yourself" is cute, but you don't have any way to determine rapidly that someone is.

Some recommend take home projects. I don't think those tend to work well for various reasons...

Things I do think work to find good employees:

* Give adequate time for whatever task is assigned during the interview. I nearly always see that the interview is rushed because there is inadequate time given for what is being done. If time is not available, just do a portion of the tasks and quick fail if the candidate does not pass that portion. If they succeed schedule additional interviews.

* Require open source contributions of meaning for higher level candidates. Have an interview ( an entire interview ) centered around reviewing their contributions with the candidate and discussing them.

* An interview ( 1 hr ) of the following type: Tell the candidate "Convince me why I should hire you. You have 30 minutes to present your case. I will say nothing that whole time. Afterward Q&A about what you said for 30 minutes.

* Ask questions of the candidate and don't bother with all the trickery. Bring me any software engineer and let me just ask them about random stuff freeform and I'll tell you if they suck or not within an hour. Don't demand some specific stupid process for interviewing them. You have to trust those you use to do the interview process and give them the authority to determine what the next best questions are always. The moment you turn the process into some "by the book" shit, you will get a shit process.

* If a coding test must be done, it needs to be just like on the real job in that full access is given to use websites to rapidly acquire the information needed to give the best result. Also, let candidate use their own IDE setup, and have them ready to go ahead of time. If anything, give a loose idea of what the coding task will be without details, to give the candidate time to prepare in whatever way makes sense for them to be able to tackle a task of that time.

* Give more time to accomplish tasks. So so so many of the stupid tasks I've been assigned in interviews cannot be reasonably and cleanly done within the 20-30 minutes usually given max to do them. Creating quality software takes time. Rushed software = crap software. Be real.

Re: Facebook senior software engineer interview

#512
post #241

Earlier quoted context omitted.

You rarely need to write your own sort or hashmap, but you should absolutely understand at a high level how those algorithms work, how to analyze them, and the key concepts that go into their design. The point of the undergrad CS syllabus is not to teach you specific algorithms, but to give you a toolkit for solving problems. The goal of a SWE interview should be to test your ability to apply that toolkit to a "new"…

Amazon asked me to implement a hashtable and email the interviewer the solution by the next morning. I politely declined; was heading off to Spain for a long weekend.

IMO that's not a good interview question even f2f, let alone on email. As an interviewer I would learn nothing from that, and I agree it's unreasonable to give an interviewee homework.

As far as I know, that is not SOP for FANG interviews.

Re: Facebook senior software engineer interview

#513

Earlier quoted context omitted.

But the engineers at FB do need to be able to write sorting algorithms from scratch rather than just have knowledge of sorting. The reason is that the engineers have to be reasonably fungible so that they can be easily moved between projects as projects are started and stopped. So they could easily be tomorrow thrown into an environment where a sorting algorithm is needed, they are the ones responsible (so they'll ne…

FB has thousands of employees who write code. I highly doubt many of them are writing sorting algos from scratch. They should know which sorting solves the problem and use an appropriate library. The same applies to most other low level problems. They should understand the problem and the best practice to solve it. In most cases writing low level solutions from scratch is not the best practice. FB is a mature company…

I don't see a correlation between product growth and engineering complexity.

Re: Facebook senior software engineer interview

#514

Earlier quoted context omitted.

> get them to do something that goes against their self-interest and well-being. This is where I stop agreeing with you. It is an established scientific fact that smoking is harmful to anyone doing it. Why are you confident that social media is also harmful or goes against people's self-interest? People choose to use it; they connect with people they know on it. Is there some study I'm missing that shows social media…

AFAIK, no coffee producer competes on the basis of having the coffee beans with the most efficient caffeine delivery rates or gets a premium for being more addicting than strain A or B. Starbucks' stock price is not affected by how addicted to caffeine they get their users to become. If the consumer base decided to switch 100% to decaf coffee, they would still have a profitable business just the same. WoW addiction?…

You keep using "addicting" in a misleading sense. Facebook does not optimize for addiction, it optimizes for engagement. The addiction that makes nicotine and other substances so harmful refers to the physiological & psychological dependence these substances create. Repeat engagement is not the same as actual addiction and it's misleading to conflate them.

Coffee companies do the same, their goal is that you repeatedly come back to consume more of their coffee, decaf or not. The more frequently and voraciously customers consume their coffee, the more money they make from coffee sales. You think they don't also market test coffee variations for popularity?

Almost every company in the world optimizes for more; more consumption, more usage, more sales. The idea that Facebook is somehow in a league of its own for how it optimizes is clearly not true.

Re: Facebook senior software engineer interview

#515
post #2

There are two interesting things in this post. The first is that a senior developer at Facebook believes every single senior developer looking for a role at Facebook can revise the same things. Clearly the author believes that Facebook are looking for programmers who fit a very specific mould, to the point that they're willing to go out in public and state exactly that. I'd argue that points to a massive monoculture…

I couldn't disagree more with your post. The author is basically just putting out a detailed study plan for passing an exam. If a doctor posted a plan for passing the medical boards would your first thought be "Wow, look at that massive medical monoculture problem!" That seems like a ridiculous stretch in my opinion. To your second point, I hear this all the time in threads about tech interviewing: "Tech interviews a…

> If a doctor posted a plan for passing the medical boards would your first thought be "Wow, look at that massive medical monoculture problem!"

That is fairly close to describing a well known issue with MCATs and medical school admissions, as well as boards, see [0] - note, while I'm not familiar with Pacific Standard, I felt that article gives a good overview of the issue and acts as an omnibus to a number of links of the supporting scholarly information.

[0] https://psmag.com/education/be-a-good-doctor-study-the-human...

Re: Facebook senior software engineer interview

#516

Earlier quoted context omitted.

AFAIK, no coffee producer competes on the basis of having the coffee beans with the most efficient caffeine delivery rates or gets a premium for being more addicting than strain A or B. Starbucks' stock price is not affected by how addicted to caffeine they get their users to become. If the consumer base decided to switch 100% to decaf coffee, they would still have a profitable business just the same. WoW addiction?…

You keep using "addicting" in a misleading sense. Facebook does not optimize for addiction, it optimizes for engagement. The addiction that makes nicotine and other substances so harmful refers to the physiological & psychological dependence these substances create. Repeat engagement is not the same as actual addiction and it's misleading to conflate them. Coffee companies do the same, their goal is that you repeated…

Whatever you need to tell yourself if it helps you sleep at night...

I am using the term in the same sense you are. People feel dependent on their social networks, their apps and even declare to feel things akin to withdrawal syndrome when they are away from their devices or haven't checked their networks for updates.

And again, the fact that "other companies do similar things" is not an excuse, less so due to the fact that Facebook has way more reach and uses technology that can amplify their effectiveness infinitely. I don't have Starbucks baristas knocking on my door offering me coffee, I do have Facebook listening to conversations inside my house because of my wife's phone.

Re: Facebook senior software engineer interview

#517
A post about hard work and diligent learning about CS concepts followed by an offer from a top-tier tech company will always be greeted by a bunch of dinosaur software engineers who feel entitled to a job in this industry for life purely because they have some arbitrary number of working years.

If you're applying for an IC role, code or shut up. I don't care if you have solved wicked problems before, it's all talking and hand-waving. Can you take a hard problem, and apply CS concepts and good ole problem solving to produce working, succinct and well written code? That's what you're being hired to do, stop complaining.

Re: Facebook senior software engineer interview

#518
post #512

Earlier quoted context omitted.

Amazon asked me to implement a hashtable and email the interviewer the solution by the next morning. I politely declined; was heading off to Spain for a long weekend.

IMO that's not a good interview question even f2f, let alone on email. As an interviewer I would learn nothing from that, and I agree it's unreasonable to give an interviewee homework. As far as I know, that is not SOP for FANG interviews.

This was nearly 10 years ago.

Re: Facebook senior software engineer interview

#519

Earlier quoted context omitted.

If a doctor posted a plan for passing the medical boards would your first thought be "Wow, look at that massive medical monoculture problem!" That seems like a ridiculous stretch in my opinion. It's more like an oncologist posting that every doctor needs to revise cancer treatments for a month before applying for a role in a hospital without realising that other doctors have spent 10 years specialising in different a…

Really bad analogy. Look at the post, these are basic computer science topics he is recommending for study, things like data structures and algorithms, not any specific technological subspecialty. A better analogy is that all doctors need to pass licensure exams in basic medical knowledge (e.g. anatomy, physiology, etc.)

>A better analogy is that all doctors need to pass licensure exams in basic medical knowledge (e.g. anatomy, physiology, etc.)

The problem with the situation is that doctors don't need to do that every time they change jobs.

Re: Facebook senior software engineer interview

#520

Earlier quoted context omitted.

I'm certain the small startup I work for hasn't failed too badly ethically. But I don't own a home in SF so... failure?

They may not have failed ethically yet . It’s virtually impossible for a company the size of Facebook to be free of controversies.

But then I'd just find another job (when it was clear that something was rotten). There's an argument here about the ethics of having helped build something that ultimately became terrible, however I don't think inability to predict the future equals complicity.
Post reply on HN