Hacker News new | past | comments | ask | show | jobs | submit login
My experience of interviewing for a job at Apple (lmjabreu.com)
394 points by bouncingsoul on Feb 25, 2015 | hide | past | favorite | 284 comments



Though this isn't as bad as many I've read, stories like this are the reason I have never applied to work at any of these large firms (Google, Apple, etc.). I have been a full-time developer for more than 20 years. I have 4 software patents to my name, one of which formed the basis of a startup that was acquired for $64 million. I know a few people at Facebook and Google (not at Apple), and I am definitely in the same league in terms of coding skills.

However, based on available information, I am 100% certain that I couldn't successfully complete the on-command hypothetical coding exercises with someone standing over my shoulder, along with the other mental and social gymnastics associated with applying at any of these companies. I wonder how many other well-qualified people are out there that will simply never apply because of the drawn-out, intimidating hiring process.


Sometimes it was not only intimidating. Several months ago I had interviews with apple for a devops position. While most interviewers were friendly, there was a very aggressive one. He started with "I am going to ask you some of my favorite questions", and the tone of the interview went sour. Most of the questions should be from the skill sets he was mostly proud in but remotely related to the requirements of the position. For questions that were relevant, he asked something like "how could you terminate a forkbomb without a reboot?" which I answered "practically it is impossible", he insisted there was a way which I did not know, and I felt insulted. While I guess he was expecting me to answer process group killing (which is still impossible when all resources are taken the computer is not responsive at all), it is just too damn wrong to make an interview a do-you-know-what-I-know showcase of the interviewer. Unfortunately, in big companies like Apple, ego-filled persons are not rare. If having to go through more than 5 rounds of interview, one have a good chance to encounter one.


There is a clever trick for that: a classic bash fork bomb will completely die once it gets impossible to spawn new processes. And an easy way to achieve this is to exhaust all PIDs, usually there are 32768 available. So starting enough `sleep` processes will do the job. That is of course if you still can run at least one shell command on the machine.

Other than that the question is stupid, and most companies have a policy that forbids such questions. Same goes for "piano tuners in Manhattan" and "why are manholes round".


From my experience there are three reasons these questions are asked:

1. To see what your thought process would be in figuring out the answer. 2. To judge your reaction to such a nonsensical question. 3. To show off (either the interviewer is showing off or the company is showing off).

That said, they have some value depending on the position your being interviewed for.


I've interviewed at Amazon and Google. Amazon was just poorly structured overall. Google really tried hard to make the experience good, but my last interview was one of these where he had a particular very clever and very proprietary method to solve the question he asked and wanted to see if I could guess it. I could not. Though he ended up telling me about it and it was interesting, reflecting back on the experience I thought it was not very useful.


> "How could you terminate a forkbomb without a reboot?"

I imagine that's a bit like asking how can you completely clean malware off a computer without reformatting. The answer is roughly the same: In the general case it's impossible, because once arbitrary code has been executed on your machine, nothing can be trusted.


I feel the same way.

Every time I think about applying to, e.g. Google, and start looking at how I need to prepare, I realize it's going to take around 40hrs of algorithm prep followed by a gruelling interview process. And at the end, I may fail due to interview nerves or whatever. It's hard to justify so much time. Then again, maybe working at these big companies is really worth it (many people seem to think so!).

Nowadays, I won't put up with more than a couple hours of interview. 1 hour I think is a good amount. Granted I work on contract and this is how things tend to be done in London. For a permanent role, my limit would probably be 4 hours on site + 3-4 hours off site (like a coding test).


The way it happened to me, it was just totally unexpected and I decided to go with it, no strings attached. Don't think too much about it, take it as an experience, you have nothing to lose after all (subjective, depends on how much you invest in prep time and if you lose work hours from your current job, so YMMV). I took it as a learning experience, I read books before interviews but did not go too 'serious' into anything, just the desire to learn and compare myself with my peers. I found the interviews to be really challenging (in the good way), questions were interesting and taught me a lot of things, both personally and in regards with peer interaction.

I would definitely recommend applying to these companies just so you can say "Hey, I tried and did it" (did it = applied, not necessarily got hired). The getting hired part is just a secondary thing, it's a personal accomplishment that may come or not, but it shouldn't necessarily be your end goal.

At least this is how I feel and how I felt after interviewing at Google.

Full disclosure: I am currently an intern at Google after having failed the full-time interview process and decided to get a Master's degree, which found me back at Google as an intern.


This deters me from interviewing as well.

I keep my data structures and algorithms book on the shelf - it was printed 15 years ago and uses Java, but it's easy enough to implement in something else. I used to restudy it every few years, for interviews. You need to be ready to do tree traversal, detect cycles in lists, sort and search, create a hash, find shortest paths in graphs.

I go back and forth on whether I'd do this again. I can't say never, because a good enough job might be worth the effort and risk, but I'm hesitant. How many times in life do you want to retake your undergraduate data structures and algorithms exam? I would outright refuse to do a lengthy "homework assignment". I've done that once (7-8 hours recommended time), sent it in, crickets chirping, and a one line brush off from a recruiter a full month later. I'm actually embarrassed to admit I even did this once.

As an aside, while I generally take a dim view of professional licensing, I wouldn't mind taking a "bar exam" for software development if (big if) it were well designed and administered, and perhaps voluntary to avoid regulatory capture. The reason is, I wouldn't mind studying a hundred hours or more for this test if it was widely respected and meant I wouldn't have to keep re-taking it every time I interview.


> You need to be ready to do tree traversal, detect cycles in lists, sort and search, create a hash, find shortest paths in graphs.

Maybe it's because my focus is web, but I have never had to do any of these. My eyes typically glaze over any time someone mentions algorithms. Not because of lack of interest, but because I'm self-taught, have only had one or two academic CS classes, and have never taken a course on algorithms.

When we're hiring developers we do have a "take-home" test of sorts but you can do it in an hour or less. This is prior to our in-person general job/fit interview (my boss) and the technical interview/review (me).


Doing the review was useful for me in prepping for an interview at Google. I really learned a bunch of stuff that I'd been just brushing over for years. If you are just doing it to interview, that's probably not using the opportunity well.


In a similar vein, I'd also like to know how many people manage to land jobs at the Google's and Facebook's of the world, and ultimately prove to be less-than-spectacular developers.

I dropped out of a masters degree to join a startup as a .NET developer, but kept in touch with a few guys finishing there. One of them now works for Google. He was always great in the algorithm classes, and he knew his theory reasonably well, but he'd constantly struggle with writing the code and REALLY grasping OO. I'd help him structure his Java code, and he'd help me grasp data structures.

He's been there a good four years now, so he's clearly doing something right, but I was initially shocked that he was able to get in when things like static classes confused him.


A thing that we all have to consider is that we've all been beginners once, it really does not matter. Throughout my entire academic career (bachelor + master in CS) I've met my fair share of brilliant people that still struggled with concepts that to me looked very simple and straightforward, and I've also struggled with stuff that others find very easy and natural. It really does not matter, you always learn something new and the things that we didn't know yesterday can turn into the things we know best tomorrow simply because we keep evolving and bettering ourselves.

Just because somebody had a hard time grasping Object Oriented Programming (which, really, is not as useful anymore. Plenty of brilliant developers moved past it) in school does not mean that he'd not be a good fit for a demanding company a few years later.

This is true for everybody, by the way, just because you feel like you're struggling on some concepts, don't dismiss yourselves. Try applying at some companies that might be 'out of your league' and you will realize that maybe some of them actually aren't that out there after all.


ultimately prove to be less-than-spectacular developers

There's no sure-fire way to know exactly who you're hiring unless you know the person (and even then!).

But: many of these companies are using the wrong criteria, out of bad habit or sheer laziness. You get "brain teaser" questions ("how would you tell which light bulb had been on in the past 10 minutes?"), coding tests, even demands to know which lsof flag does foobar (but that's why God invented man pages!). In my estimation, the only real way to get inside someone's head is to get them talking about what they've worked on, hear their war stories, and talk in depth about how they've solved problems and built things.


Maybe he gets to work on difficult problems that can only be solved by a great algorithm.

Or maybe he works on making a set of algorithms 5% faster.

Making a sorting algorithm just 1% faster for the most used cases will probably save a company like Google vast amounts of electricity.

I guess there are plenty people who understand both algorithms and programming language features well. But if you want someone who is awesome in algorithms you might not care if they couldn't grasp the simplest programming language feature like a for-each loop, or a static variable.


At such a big company, I doubt anyone could get a job just working on algorithms coming out of undergrad. Maybe if you had a PhD in a relevant field I could see it. I'd bet almost everyone at Google is extremely good with algorithms when compared to the whole population of developers so I really don't see them giving this kind of sought after position to someone so junior. There's just too much risk for the managers to give it to someone who's still unproven.


I went to University with someone who aced every written CS exam in 'software patterns', 'user experience', 'computer architecture' and the like who landed a job at Google as a software engineer straight out of uni.

They couldn't complete a single practical lab exercise without help from peers or lecturers throughout the entire time I knew them.

They didn't make it past their trial period.


I used to be like the person you're describing. I had such a hard time with actual software development, until a few years in, when all the theoretical knowledge "clicked". Then I was able to always make consistent gains in dev skills from the os level to higher level software architecture. I think it was because I could understand the core abstractions from the higher level ones. Though I also might be an outlier, because even out of school I study a few hours a night.


Sounds exactly like the guy I knew. In writing, he knew it all, but had no reference to actually apply it. It sounds like many CS graduates, myself included; without applying yourself in a non-academic setting it's quite hard to be a good developer, because the projects simply aren't big enough or haven't had the man-hours applied.

It makes me wonder whether these hiring processes are built for people leaving university, and not necessarily for those that have spent a number of years as software developers. It's a good way to get those that "know" their theory, but it sounds like a terrible way to hire someone who is expected to be not just a competent developer, but talented.


Let's be honest, 99% of Google employees are not working on hard problems like self-driving cars, they're just finding new things to slap ads on. You might need to be impressive in a very narrow way to get in, but the work isn't going to be that challenging.


While that's most likely true, they all go through a fairly grueling interview process where their theoretical knowledge is really tested. It sounds a bit iffy to make someone with a decorated career or an advanced degree go through that, promise them the world, and have them answering support questions for Google+.


Google employs thousands of developers. They can't be that strict about who they hire as a 5-people startup. So they sure have lot of less-than-spectacular developers and they don't care. You need talented people as architects (or whatever), not your code monkeys.


This is definitely true of large firms, but it still surprises me that the likes of Google could have developers that could get through the Google interview process, but would probably struggle with a take-home test from a company looking for someone to demonstrate an ability to be able to build something.


I have similar work experience (though no patents or start-up success credentials). I did run the Google interview gauntlet (unsuccessfully - so far) over the last year.

From my experience, it's less the on-command hypothetical coding exercises (which you will get, and they will be challenging), but more so if you pick up an unfortunate draw of one of your anti-loopers (see famous Steve Yegge post).

I ultimately interviewed in early January with a team that really wanted me, but was rejected at a late stage executive committee review (surprising even my potential hiring manager and the recruiter). While I can't say for certain the precise factors that impacted my candidacy, I'm reasonably sure a significant component was one particular on-site interview that was almost a year ago. That particular interview was awkward right from the opening non-technical questions. Not sure if my interviewer was having a bad day. I'm not sure how I was scored, but I feel it was a "B" performance for me, the others felt like "As". I will say that its sometimes hard to gauge one's on performance as the interviewers were all nice and innately would not display much signs of frustration or dissatisfaction for a candidate to get the feedback signals that might be noticeable at other job interviews.

In the end, they seem to require near unanimous consent to complete the hiring process.

For those reluctant to try, I'd strongly recommend making an initial attempt at a Google job. You'll meet some remarkably nice, smart people and have some great discussions. While I can't be certain (as I didn't succeed), you don't need to be 100% perfect on your interviews. Quick, insightful and on the right track are important though. You do need to be smart, know what you are doing, and practice a bit on programming brain teasers (which should be fun for the right person).

IMHO, its worth the initial attempt, but if things don't work out the in first round of on-site interviews, it may be impossible to overcome that in later rounds, much to my dismay. The only downside is that you might convince yourself that you really want to work there and you'll have to face reality again if things don't work out. Don't be afraid to try.


This is a pretty awful reason to not even try. From the outside seems like working at any of those listed would be awesome if not just compensation but ability to grow.

I tend to err on the side of "I suck" when an interview doesn't go my way. Some people err on the side where everyone else is the problem. Different ways to deal with butt hurt.

Disclaimer: I have interviewed at Google and other hard places with mixed results.


It's also a matter of mindset and effort.

I'm fairly certain I could study for a few weeks and ace the tests. I'm unfortunately also very resistant to doing useless work.

When the first interaction with a company involves requiring me to do useless work to prove my commitment (and everyone in the company has passed that hurdle) I very much doubt that I would be... how shall I put it... a good 'culture fit.'


I doubt it would take just a few weeks b4 you could ace the test. They'll ask hard questions that prove a depth of knowledge. The only trouble is that in most day to day programming, you will very rarely require this depth of knowledge about algorithms. So then, if your aim isn't to get one of these jobs, this sort of knowledge is rather useless.

Better to study a new language or statistics / big data. Rather, the most important skill you have day to day is your ability to concentrate & get stuff done. & the ability to take a big problem and turn it into manageable smaller tasks.

I think the focus on algorithms can be an underhanded way to prefer young, fresh out of school applicants. Those with good academic track records and with fresh mitochondria that can be utilized for great coding results.


> I think the focus on algorithms can be an underhanded way to prefer young, fresh out of school applicants.

This is exactly the thought that came to mind when I started reading this chain, and I'm happy you hit on it. This is definitely part of that elusive ageism that we keep hearing about in SV.

I was one of them; I participated in my school's ACM ICPC [0] teams. Just knowing the algorithms wasn't enough; we had to know what problems they applied to and how to quickly and effectively code them, often with a translation layer for the required inputs and outputs. This was hours of practice every week, and I suspect the top teams are a combination of natural talent and even more practice than I put in.

Even just four years later, I would read through the packet of problems for the year and feel out of practice. I would read problems and recognize that, once I could have coded it within a half hour, but not anymore. I have traded having deep knowledge of problems with the daily practice of "engineering in the real world", and I would not even want to have it another way.

[0] http://icpc.baylor.edu/


I used to be good at these tests when I first started out 14 years ago (fresh out of university).

I have never had to implement a linked list in my career. I am a much better software engineer now, writing modular, maintainable applications, but they want to see what obscure algorithm I can implement in an hour and a half? Whats the point in that?

(I had a skype interview with Google before. Messed up the algorithm question, then half an hour after the interview was finished a good solution came into my head).


Not for Apple or Google, but I've literally been asked impossible questions during some interviews at other big-names.

Maybe I should have recognized they were impossible and addressed the interviewer. They were usually very number-theory heavy problems. After a bit of research, I determined that it wasn't really answerable, and people have done PHD work at MIT, CMU, etc.. to investigate the question I was given 30 minutes to work on.

I don't lie about my qualifications. I'm not a PHD student, there is nothing on my resume or CV that would imply I'd be aware of some obscure (not something I'd consider important to comp sci like crypto) area of research... but still, asked these really oddball questions.


One of my Google interviewers asked me to implement the AdWords analysis backend from scratch: an online, high volume (high enough to need to partition the data across some kind of distributed storage) streaming dataset with a query load that the interviewer refused to define, even when pushed.

I was a bit non-plussed at that one. Still don’t know what he was really trying to get at.


I give interviews all the time, I can totally see these guys really not caring about them if they're forced to give them.


Maybe they intentionally asked you an impossible question that is not obviously unsolveable to see how you react when given and how you approach hard problems.


Here are your options:

1. You either know immediately that it is impossible and you say so, which means you've encountered the problem and its related research before.

2. You are a savant, like Kim Peek, and work out the solution to a PHd level research problem in your head in a few minutes, giving the answer that it is impossible.

3. Pretend to be (2) by already knowing (1), but having a good poker face and then faking an "Ah ha!" moment

4. Sit there, unsure, feeling stupid, wondering if you're supposed to know the answer to this already or if you're supposed to be smart enough to figure it out.

I'm having a lot of trouble figuring out how any of these outcomes are in any way beneficial to the interview process.


There are more option than the following scenarios:

(1-3). Know the solution already or be a genius and find the solution surprisingly fast.

4. Sit there feeling stupid.

The idea is to give you an extraordinarily hard problem without the expectation that you'll solve it. The reasoning of the employer is the following:

I. You fall into the options (1-3) and you are either a genius or the question was too easy. Either way its not bad for you.

II. You don't have enough knowledge at hand to approach the problem. Then you do either what described in option 4. xor you accept and be honest when you don't know something and you know what to do next; identify information you are missing and how you can get it.

Since the case I. is rare and the case II. gives the employer a good picture of you it's a good question for an interview.


I got decently far, I would say, all things considered. I was able to lay out the problem domain well - determine what the requirements were, all that - then start by breaking the problem down into bits.

I did hit walls, understandably, which ultimately ended the interview with a lot of "hmmm, not really sure. Maybe this? No? Oh... Hm... [..]"


How you react to the impossible questions is what's valuable.


I thought I did well. I asked a bunch of questions, solved what I could, and I think I did really well for my background!

They didn't move forward. Oh well!


You can add Microsoft to the list when it comes to on-command hypothetical coding exercises. Along with optimal solution, you are also expected to give it in a short duration.


I completely agree and would never apply to any of these companies, specially Apple.


> especially Apple

There's a number of folks who are philosophically at the extreme opposite of what Apple stands for, too, and who won't even think about applying there for that particular reason.


I totally agree with your opinion.

On the contrary, I've been in a position that I have to decide for applicants ( by doing technical interview ) if they could do the work or can not do it. It was a pleasant job when I can see some sparks of commitment and joy of doing the work. But talking more with the candidates it looked like they had a really hard time, being screened by the HR team, since they didn't have proper profile indicators, like "keywords in the CV", "past experience", "good university degree", "recommendations" and so on.


Whatever your judgments are about the ethics or efficacy of this process, I'm confident that your reaction, and the pool of people excluded because of similar reactions, is not something they are overlooking, but is a consciously designed effect of the process. Testing stress-tolerance is probably one of their specific goals.

Does it lead to overall better hires than a less grueling process? I have no idea. But they must think it does.


Agreed

The main issue for me is that I find it ridiculous to go to N teleconference interviews and then get turned down in person. I'm sure it's for some stupid reason like "all of our team like sports and you don't seem quite enthusiastic about it"

They push for you to "be honest" but that's only an excuse for turning you down. Give them the answers they want to hear and you'll be fine. Also the pressure of the moment is important.

(Also I would like to see their faces when my MBP's Facetime wouldn't connect - talk about a reliable software... not)


Every interviewer wants you to let the guard down and show them the real you. We know the version of you that comes to our interview will be copacetic, genial, nice, friendly, etc. by default. Our biggest task in most of these interviews isn't necessarily ascertaining whether you can develop software -- hopefully that's borne out of some pretty straightforward questioning.

The real task is to figure out what you're really like after the interview facade goes down, and being able to envision you as part of the team.

It's a reason there's so much thought and discussion these days on ways to effectively anonymize people during job searches and interviews, I think. An interviewer / hiring manager needs to be very aware of their own feelings and mindset when making a decision to ensure the "seeing you" part of the decision process is done consciously and purposefully.


Yeah, however they probably overestimate their evaluation capability, the bias of the moment (candidate might be nervous, etc) and underestimate their capacity of letting the candidate go if it's not a good fit (especially in countries like the US)


Interviews weighted towards undergrad topics, are just a way to slip ageism past HR, who don't know that dicking around with linked lists and hand-coding sorts aren't what real actual working programmers do all day.


It would be one thing if the salary was substantially higher than what you can get elsewhere, but it's not. The other perks sound really nice, but not nice enough to deal with the headache of interviewing there.


I think you are rationalizing. These interviews are really not that difficult. Try going through "Cracking the coding interview", a month of practice should be enough.


"Not that hard" is studying a month to pass a test in some artificial setting?


Every test is in an artificial setting. That is the difference between a test and real life.

And if you are not willing to spend a month on learning, then don't expect to be hireable.


I'm not an Apple fan, and wouldn't apply there myself, but this doesn't actually sound that bad. It moved along relatively quickly and he had a definitive answer in a fairly short time frame after his interview was done.


4 months is quick?


Given that they had Thanksgiving and the holidays in the middle, yeah, it's not bad for a big company. Read some of the Google interview stories.


This all sounds like a typical 'cultural fit' screening process. I can't speak to SV firms, but many consulting/banking firms use the same technique. It can be very frustrating at times, as you never get to find out what went wrong, especially if the interview itself felt like it went very smoothly. I just finished a long string of interviews for consulting and product management positions, and there is nothing worse than to get a 'no, please try again later' without any feedback as to how you can improve.

At the end of the day, it comes down to being able to truly connect with your interviewers and breaking out of the typical question-answer format. It sounds like you almost reached that point - I'm not sure if the lunch was a standard thing they did with all applicants, but it did seem like they were really interested in you. It could be that the process came down to a handful of equally desirable candidates, at which point luck plays a large role in deciding who gets the job. I would definitely keep in touch with everyone you met, and apply again at the next opportunity.


For what it's worth, I recently left a position at Apple and I am the complete opposite of the "culture." Two key differences emerged in my reading of the author's process and my own, which I think boil down to differences between DevPub and where I worked, in what they call Internet Services in Cue's org. That's a pretty wide org, so there's vast gulfs even within, just based on the way the org was put together.

My culture screen was in-person, while I was being interviewed technically. Part of their process was getting to know me. I'm relaxed in interviews, joke around, and have a good time because at the end of the day, we need to like what we do. I find that this confidence has opened a lot of doors for me, but I do have to work very hard to project it given my internal strife. I often find that interviewers are more nervous than me, frankly, because as an industry we tend to toss people in a room who are themselves suffering from imposter syndrome and ask them to gauge someone they've never met with very little interview training. I was interviewing for one company on my third day.

I am the polar opposite of what I would consider to be someone who "fits Apple culture," in general, but it's worth remembering that there are vastly different cultures in different areas. I'm fat, I don't dress well, I'm largely unkempt if left to my own devices, I'm not a social butterfly -- put a soldering iron in my hand and I'll have a good time. I enjoy theoreticals about encryption and side channel attacks. I identify more with Woz than Jobs. Universally, across the board, every time I told someone I'm an engineer at Apple I got the look up and down and "you are?" in reply. I think people have an image of Apple that's formed from the typical customer and perhaps the retail folks; while that's true to an extent (what's served at Caffe Macs is an often great example, but you can find a kick-ass burger if you know which one to go to), I didn't find that Apple struck me as especially hipster or faux-cool or however you want to think of it. Again, maybe my area, but typical Web startup people generally break that way, so I would have expected Apple to reflect it, but no. That's neither here nor there and represents a very compartmentalized view. (I didn't work on Infinite Loop, and when I made journeys over there I got a different feeling, so that might be related.)

Just based on my own experience, I think team fit goes way over culture fit, and I don't think OP's experience sounds like a culture screen.

The other difference is that my process was practically a mirrored copy of Google's, with recruiter courting, technical screen by the recruiter, deeper screen by the #2 on the team, in person interviews. I interviewed for two different teams at Apple (one no-hired me, which was fun because then I was responsible for some of their stuff), and the process was nearly identical, except the no-hire team put a pair of people in the room and my accepting team put only one for each interview. At no point was FaceTime ever used. In fact, I wasn't aware that was a norm anywhere, but I admit that my purview was limited to my area.


What were the bad things about working at Apple? Why did you leave?


I'm not prepared to get into my experiences at Apple much beyond the surface level that I touched upon, for a few reasons, but I left for the same reason everybody does. I was offered a career-advancing opportunity to prepend senior to my title and help build out a small startup that's going places and really making a name for themselves. Apple, like Google, has already "won" (for lack of a better word) and while a portion of compensation is equity, it's hard to feel like you're putting it out there to change the world. Apple spends a not-insignificant amount of time changing the world, to be sure, but it takes time and stripes to end up in a position where you can be on a team like that.

There's no shortage of folklore about Jobs hand-picking teams, as I'm sure you know, and moving around at Apple is very social by its nature. You have to make a conscious effort to end up in a position where you get an opportunity to build Swift, or iPhone (I mean building it, not keeping it going; vast numbers of people keep it going now), or Apple Watch unless you're hired into an essential role for something like that. Most people at Apple are doing the same things you and I do: upgrading Cassandra, diagnosing some OS bug that only appears on certain phones and carriers, localizing a piece of iTunes. So it becomes a question of how much you're willing to invest to earn your place at Federighi's side on stage, launching your passion that will change the world. For some, that equation breaks the right way. For me, I need more immediate feedback. Make sense? More me than them.

My time in the peninsula taught me that I value small, scrappy teams more, and that I'm not cut out for Facebook, Google, Apple, and friends. For that very same reason, I'm not the best person to ask on whether you should work for Apple or Google: some people thrive very well in large-scale corporate organizations but it isn't for me. In general, I'd wager a new grad should do a peninsula tour before getting into the risk game up 101, but I think that's a very myopic view, if I'm honest.


I have never been able to distinguish whether the subtext is "I hated my job and left as soon as I got the chance" with "I loved my job and only left because I got something even better".


Often, one of those is true on Tuesday and the other on Thursday. Our emotional connection to our experiences is dynamic and inconsistent.


I would be lying to your face if I told you that Apple didn't have its negatives, sometimes severe ones. All jobs do. But hate? No.


Great answer. Could Steve Jobs himself succeed at a company like Apple as an employee? I doubt it. But that is the question.


Jobs could not have succeeded as an employee anywhere. It's just the way he was wired.


They created at Atari a night shift just for him (he was the only employe of this team) to do the same work than the others. This answers the question.


Yikes! Don't fall into the title driven career path. Titles are a false currency and a company accreditation that is of non-transferrable value outside that company, for the most part.


I am the kind of person who likes to work with small but effective teams. I like people who are willing to go the extra mile to build something cool and advanced. Although i haven't been to Google, Apple, etc but i think these companies do not leave enough room for people to explore new cool technologies to work in, which is pretty much all you do in startups.

So i'll always go with a smaller and effective team than being part of a very big company where my role is more or less insignificant.


I am saddened that as a candidate, I am expected to just go away without getting any feedback but the company in a similar situation hounds me if I happen to reject them. I don't know how to improve this situation, unfortunately.


It's like the girl you don't want to date. You just tell her "it's me not you" rather than tell her what's wrong with her, which would be downright insulting. OTOH, the one you like you can end up courting her for months putting up your best side. Now imagine you're extremely eligible and get a lot of suitors--you tend to develop a knack for diplomacy, and the lesser said the better. Also imagine if you had to sit down with each rejected suitor to explain why they were rejected.

If a corp were to have dialogues with every rejected candidate it would take considerable effort with little to no ROI.


My understanding is that the legal departments at companies require interviewers not provide reasons for not making the hire, so as to not inadvertently expose the company to hiring malpractice lawsuits.

A decision will be completely legitimate and within the bounds of fair practice, and the rejected interview candidate could still bring a case against the company, costing time and lawyer fees.

Also, from a practical standpoint, should the interviewer see 50 candidates for a position, it's a full-time job just writing the "this is why we didn't pick you" letters.


How about ignoring their requests for feedback and doubling down on your own?

You make it sound like the only option is passive acceptance.


Two reasons that make this difficult:

- It is difficult to double down on feedback requests when they stop returning your calls and emails after the generic rejection pablum

- One is hesitant to do the same to them (ignoring their requests)

Fundamentally there is a difference in the power relationship here, in my opinion. A typical company can and is able to afford to treat candidates badly but I don't believe that a typical candidate enjoys a similar luxury.


Your post strikes me as confirmation bias. There is nothing in the story that directly suggests they were rejected based on culture fit. Neither were the questions especially vague or of topic


It could be that the process came down to a handful of equally desirable candidates, at which point luck plays a large role in deciding who gets the job.

Another factor I've heard considered in that situation; Does he/she have a lifestyle that can fit in this town? Windsurfers quickly change their minds about living in Anchorage, and next thing you know it's hiring time again.


What a nice, sane thing to write on HN. Reading this I got the exact same impression.


I notice several comments about culture fit and not clicking with interviewers, but it's worth keeping in mind that there isn't always a "reason" for not getting an offer. Not related to the candidate, that is. Job openings sometimes disappear for random internal reasons, or there may have been another candidate for the same position who was objectively a much better fit.

I feel you have to look at job interviews like a hand of poker or the like. There are things you can do to increase your odds, but even with perfect play not every hand is winnable.


This exact thing happened to me today.

I applied for a Developer position back in the summer (not at Apple) and after a great phone interview I never heard back.

Today, more than 7 months later I got a call out of the blue saying the position was just advertised again and they were really disappointed I didn't apply (I didn't see it) apparently my resume was great and I scored really high on the phone interview (who knew?) so they've had me submit my resume today and have already started calling my references.

I'm very curious why it all fell in a heap 7 months ago, but I suspect internal politics or the budget dried up or some-such.


Another anecdotal... I originally got rejected from my current position. It wasn't until a month later that they called me back and we're like, "um yeah, actually come back and let's talk about compensation." Found out that some political hurdles were cleared up for the extra headcount needed to bring me on. Apparently the whole interviewing candidates process was started a bit earlier than it should have.


At one job, I was hired pretty quickly after a couple of interviews. About a month after I started, another developer left, and they went thru the queue of people they had interviewed at the same time I did, and hired one of them. In that case turned out it was a guy I knew.

So instead of posting a new req, when they had just gone through a bunch of interviews, they hired someone from the previous round, since it was fairly recent.


Similarly, at my current position, I interviewed and was hired. After I arrived I found that I had to do some weird paperwork each pay period, but I didn't know much about the internal organization so just did what I was told. A few months later, my supervisor told me, "When we hired you, the budget for your position wasn't approved. We were hoping we could scrap together enough funding to pay for you until we could convince management to approve funding as a permanent position."


That's a pretty terrifying thing to not be told, especially because it sounds like it could've gone either way.


Another data point. We were hiring for a developer position and found a really promising candidate. The higher ups decided that we needed a hire for another team first which put a temporary (permanent.. ) hold on our new position. I found out much later that the candidate was never even contacted to tell them it was a no. This was a major breakdown of HR - but it shows that it's not always about the candidate.


Did they plan on making you an offer after just a phone screen and a reference check? If they still planned on doing an in-person I wouldn't let them go near my references until the very last step.


Something similar happened to me years ago. I later learned the hiring manager had left. But when they contacted me, I had already moved on.


In some ways they have similarities with social dates, first dates. You can feel a bit nervous, might feel intimidated; did you say the right things, did you handle yourself well. Everyone says, be yourself. It's the same for job interviews, be yourself. Be prepared, show interest, don't be overconfident, etc.

And like first dates, you can do all the right things, etc. And you think things went well, but, you find out that there is no second date.


"Be yourself" is a very weird piece of advice, and very often the wrong thing to do.

Do you want an offer? Don't be yourself: be who they need. If it requires you to be a bit different from who you are, so be it.

Once you get the offer, the power structure changes: you're the one in control. You're the one now faced with the tyranny of choice. This is when you can decide whether accepting this job would be at odds with who you are. But you know what? Even if that's the impression you got from the interview, your job at that company might still end up being different. You could end up in a team that's completely different from the ones who interviewed you. Or the job might end up being different. Or you might end up finding out you like things you didn't think you would.

Get an offer. At all costs. Then you're in charge.


I get what you're saying.

My point is when you're interviewing, do your thing, show them what you have, show them your capabilities, your dedication, vision, whatever, using your way --using 'zak_mc_krackens'' style is not going to work for me, because I will not wear it well. I won't do your technique justice. Sure, over time, one learns how to refine interviewing skills/technique, but we do it in our own 'voices'.

Don't over think it. As I said, you can do everything just right, but for whatever reason, they pick someone else. They may even consciously come to regret their decision --just like in dating. Interviewing and dating are more art than science. Sure, be prepared, show your stuff, but none of that guarantees landing the job. So there is no reason to beat yourself up for not getting the job.


"Be yourself" is misleading advice, there are a bunch of things you need to do in an interview that aren't natural for anybody.


It depends on how you want to interpret "yourself". Our selves have very many facets. We have the at-home facet, the with-friends, the one at-work, the one in front of a court. They are all our self. It basically means be natural for the face you're putting on. Don't over do it. Don't construct something overly elaborate such that it misrepresents you and it becomes apparent. Don't over think it.


I don't have a "write some algorithm in 15 minutes" self because I never do it at my job, but here I am, trying to rush an implementation on a whiteboard.


Part of that is doing research and getting to know what the company looks for in candidates and what you can expect in interviews and how you meet them. Sometimes it won't be a good fit, and that's alright.

If they want you to be their monkey and that's not you, I'd say don't do it. Of course, that's very easy for me to say, but if you think it's unreasonable and don't like it, find another company. There is no "one" company --just like there is no "one" romantic partner. It's all about trade-offs.


I wouldn't be doing that at the job either. Who writes algorithms under time pressure on a whiteboard?

You have all day to write code on your computer at a job. There is no rush. But the interview is much different than what you'd be doing at the job.


>but even with perfect play not every hand is winnable.

This is so true. If you remind the person interviewing of someone they don't like, your chances lessen. You have no control over that. Also be aware that non-HR people have to interview people with not a ton of guidance or experience in interviewing. When I interviewed people I was trying to figure out was 1) can this person help us, 2) what will it be like working with them.

Also remember that it can work the other way too. You are trying to see if you'd like to work there while interviewing. At my last company we had people reject us. And when looking for a job last year I politely told a couple companies I thought would be great I was not interested after interviewing.


Posting as a French engineer who moved to the Bay Area a bit over 4 years ago, and has worked at a few companies of varying sizes and success in that time period:

Silicon Valley as an engineer is a demanding environment to be in, and like many such environments getting in is quite a challenge. As an outsider, you are at many disadvantages: you don't know the culture, you don't know how things get done, you don't know who to talk to and who will waste your time, and so on. So to get in, not only are you fighting against all of these obstacles, but you also have to perform at the level which is expected of everyone, which might be higher than what you're used to.

This means that the odds of getting in on your first try are quite, quite low. If your goal is really to make it there, you have to treat it as a numbers game - after 5, 10, 20 tries, you'll probably get in. Or maybe if your dream is to work at Google/Facebook/etc., then the best way to do it is to first start working for a smaller, lesser known company that's having a harder time hiring. Make yourself a name there, volunteer to give some talks, post some open source projects that'll bring your name at the top of Hacker News for a day, and after a couple of years, knock again at the door of your dream company. Or maybe they'll end up knocking at your door again very soon. Recruiters know very well that the number of false negatives is quite high, and that people can change very fast.

If you want to take part, you have to put in a lot of effort and personal work, and expect things to take time- you have to stay humble, and you have to keep pushing. I think it's worth it. Some people don't believe that it is, and that's completely fine- but you have to know whether you want it or not. If you really do, then don't give up on the first obstacle.


The author has an odd interest in sharing numbers that, while significant, show that the point is being missed.

Sure, 700 billion is an impressive market cap for a company, but that's not what it's all about for the creative people of Apple.

$6,000 of your time, meh, we all invest that much in side projects, year after year, if not more frequently than that.

5,000 miles, yeah, so you took a flight, is this supposed to be a measure of something of significance? Yes we sometimes travel for interviews. Putting mileage numbers to it almost sounds like complaining.

17 hours of WWDC videos, that's a sliver of a slice of what's available. If anything, it's an embarrassing number to admit to, for someone who claims to be an Apple UI expert.

Maybe this weird fixation on off-point numbers was a turnoff for the kind folks at Apple, I don't know.


I think the author has indirectly replied to you via the article:

> Note: The numbers (700 Billion, etc) are there to give context and a sense of scale. This wasn’t a small boutique design company—which fwiw I’ve worked for a couple and loved it—this was the company who got valued by that amount because they’re doing something interesting. I personally don’t see money as a measure of worth, but as a freelancer and well, running my business, should not and cannot ignore it. Numbers such as ‘5000 miles’ are there just for stylistic reasons, saying ‘a flight’ would be way more banal. Chill and have a good one.


Good callout.. especially considering the article started off like: >3 screening calls, 5 FaceTime interviews, a trip to Cupertino for 5 two-person interviews


Don't forget that some people pay to travel to WWDC out of their own pocket, it's not like it was a trip to someone horrid.


If we're going to focus on money, which the Author did, Apple's revenue per full-time equivalent is $2.13 million. It's obvious that Apple didn't feel that he was going to be worth that.


This comment highlights why the pot should never call the kettle black.


About two years ago I was fast-tracked to interviews at Apple via recommendation.

About 9 interviews later over 4 spread-out days, I was told I had done quite well during the interview process.

Eventually I was not given the position because I was holding a beer in my LinkedIn picture.

They ended up paying my current employer (their vendor at the time) astronomical amounts of money to do the very same service, done by me, on-site.

Go figure.


While I would love to work at Apple, I honestly don't think I want to work somewhere that isn't happy to see a picture of me holding a beer.

If they don't want my whole personality, they can't have my intelligence.

I refuse to turn myself into a "corporate robot" for the sake of a paycheck.


To play devils advocate, Linkedin is professional profile site. Personally I would not put a photo of myself holding a drink for this reason and agree or not, its reasonable to expect people wont like this. If someone said the same cause they saw a Facebook picture of you holding a beer then I would be in absolute agreement.


On a whim, I recently updated my LinkedIn picture to a photo of myself in a multi-coloured clown wig. This put an immediate end to all messages from recruiters.


just wait until the circus recruiters get a whiff of your profile


Don't worry, they will come back

They only grep the CVs for words, if you put you're a lion tamer, archeologist, but has the word PHP in your CV (or something similar) you'll get a flood of IT jobs


Yep. A good while ago, I added T-shirts, short hair, fig newtons, beer, speeding and disorderly conduct to my list of skills. Doesn't matter.



That's amazing. I was going to post that here as a follow-up, but you beat me to it. :)


That says authenticity. You're thought leader material now!


I once worked for a design agency that was building the website of a major super PAC run by the son of a governor that most people on HN probably despise. I was tasked with turning the designer's PSDs into a Wordpress site and one section was bios of all the officers.

My contact at the client gathered up all the photos and bios and emailed them to me. Maybe 25% of the photos were professional headshots. The majority were just crappy cell phone pictures.

The rest were people at parties holding a beer. I emailed my contact to make sure he wanted me to use these and he told me to go ahead. Sure enough, a day after we went live I get a pissed-off call from him demanding to know why I used those photos.


Where do you draw the line? is it OK for me to have a shaggy beard? How about long hair? Tattoos?

My personality is my personality, and when you hire me you're going to get the whole thing. If you can't handle it, I rather you don't even talk to me in the first place.

I look forward to a future where nobody cares about this stuff.


One should note that Apple has basically no dress code, at all. Sandals, dreads, etc. and it has a history of this culture.


If your personality needs beer to work then it has a problem. LinkedIn is for business, not partying.


Shaggy beard, long hair, and tattoos are part of what's going to be at the job. You're not going to be drinking beer on the job.


I was more surprised that after four successful interviews, my poor web-presence was enough to nullify that success.


I also want to work with religious nuts, boring fuckwads, skiing junkies, food fetishists, and closet crocheters, as well as fellow social drinkers; and I want them all to be able to keep their oddities out of the workplace. It doesn't suggest a human amount of social intelligence to have a divisive image on your public profile.


That was my thought.


Was it like a Miller Lite or some other macro beer? If so then I can totally understand their rationale.


Pacifico. On a sailboat.


Poe's law in effect here.


I believe you, but they actually admitted that was the reason?


not really. I had a close contact part of the process who revealed this to me.


Probably couldn't have hurt to reach out to the recruiter and/or hiring manager and make a personal case for yourself.


Why would you lower yourself to the level of having to justify drinking beer to get a job?


This is rationalizing. Just because some stuffy suit caught a glance at his profile and nixed him doesn't mean the team he would work with has any issue with it.

As with all interviews, you gotta do a little dance to get in, but they're not reflective of daily experience.


"Think different. But not too different."


I'm not sure if your parent was referring to interviewing at Apple.


It was. Now edited


"Drink different. Beer is too mainstream."


I drink beer I've made, you've probably never heard of it.


Wouldn't they have seen that before they brought you on-site? Isn't that how they found you? I'm a little surprised this was the reason; we had beer bashes all the time at Apple.


You'd think so. I think it just didn't pass a final filter.


It would probably be worth a point or two for me, fwiw :) This can be a stressful business, it's important not to take things too seriously.


Is there more legitimacy/recourse to pay another company for services than to hire an employee (with the skill to back it up) to do the same work in-house? That level of indirection sounds inefficient...


Sometimes there is, yes. If you pay another company for services, it's strictly business. Hire an employee, and all sorts of primate emotions, politics, laws and so forth come into the picture. Sometimes that can more than outweigh the cost of the extra level of indirection.

On the bright side, this is one of the things that stops the entire economy being swallowed up by a handful of megacorporations.


how did you find out you were not given the job because of a beer in your Linkedin picture? - I never wanted to work for apple, but if this story is true it's very sad


The last big interview I had was with a four letter company in Canary Wharf. The interview 'day' was me alone in a catered meeting room with a File->New assignment.

Despite end of the day praise and the acknowledgement that I'd be recommended for the next phase, not to mention a genuine rapport with the devs that sporadically popped in, the four letter firm acquired a software house and froze recruitment a week later.

I spent a day revealing tricks and patterns - something I charge a substantial daily rate - for nothing. But this is ridiculously common: the more effort required to interview the less likely I am to get the job.

Nowadays I'm happy to walk out of bullshit interviews where they ask open ended questions where only their answer is correct.

You get to a certain age/experience where it becomes apparent that a good interview is an informal session where you have a meeting of the minds not an adversarial grilling.


I have been on the other side when consulting at a 4 letter company in that location.

Most of the time you know nothing about the interview until someone asks you to give them a technical screening an hour before. There is also no formal process or seeming involvement from HR, it's just a, "is this person any good". From my experience it often comes down to, in order of importance: - Are they willing to be perm - Do they know what they are talking about - Will they fit in the team

The first one seems to be a trump card, even though most perms end up leaving before the contractors.

This brings me onto another point in which the best interview process is hiring someone as a consultant, and then converting them after a year or so if you are both happy to.


> the best interview process is hiring someone as a consultant, and then converting them after a year or so

Unfortunately, this is also a "great" way to keep temp employees in constant limbo with the perm job as the carrot and stick. Usually, the temp job also leaves you with a lot less money (particularly because all the perks - insurance etc. - are reserved for proper employees) and, depending on the company, that's just all too attractive: A temp worker turning in work like a perm worker, always trying to "get there".


Ironically it's the opposite in the UK, temp employees in the tech industry typically earn a lot more.

In context to the interview I was talking about the perm rate was half of the contract rates they were paying people on the same team.


I concur.

As a contractor in the UK, you are likely not paying National Insurance contributions, are able to write off mileage and other expenses, can reduce your tax liability with dividends. Plus you'd still get access to the NHS.

I'm perm at the moment, but if I was a contractor I'd be saving a significant amount of money.


The main thing is that if you are earning decent money, you want to be a contractor because it is tax efficient.


You ought to be paying National Insurance.


There are a lot of people like this in the UK, not just in IT, the BBC, the media, even the government are full of them. They look like employees, quack like employees, but dodge PAYE. They are the problem, not a couple of billionaires with Swiss bank accounts.


If you own your own limited company and received income via dividends, it's not subject to NI.


In AU, once you factor in tax and benefits, contractors typically earn 50% more than full time employees. For a $100k full time role, the same might go to a contractor for $800+/day ($180k/year).


Contracting in the UK typically pays close to double the equivalent permie postion... its much more profitable and there is no way I would go permie again given the choice.

Honestly, quite surprised to hear its the other way around in the states. Here, contractors tend to laugh at the 'perks'... they're pretty much worthless.


In the States, as a contractor you have to pay your own health insurance,which can be ruinous. Large corporation can provide a much better package than what you could afford on your own,because they get discounts. Obviously here in the UK it doesn't matter, because you get NHS coverage either way.


    Note: after 25 minutes answering questions for a job you really
    want it’s kinda hard to shift to a question-asking mode.
When I was looking for a job I found that it helped enormously to write down a set of questions ahead of time.

Some I liked:

What does a typical day look like for you?

What projects do you work on?

How long have you been at $company? How has your role changed since then?

If I were hired for this role, what would my first day/week/month look like?

Is there anything about $company that some people really like, but others might dislike? (For example, having an open-plan office.)

What tools do you use on a regular basis?


I would highly recommend that candidates do research on the company. If you do, and you are truly interested what the company is making, specific questions will come up. Be prepared to ask followups and drill in. In my experience, this can have a larger impact than the candidates answers (it's well known that people like to talk more than they like to listen :) This is a way for a candidate demonstrate your intellectual curiosity and enthusiasm.

I've seriously been asked by a candidate in an interview what our product was, and not just once. You took a day off work to come here and you couldn't even look at our website? On the other hand, I've had candidates who proactively identified some of the internal challenges we were currently dealing with "but how do you deal with X?" which is impressive.

More importantly, this decision to work at a company is going to have a bigger impact on the candidate than the hiring manager. People forget that the interview is a two way process. It's important to find out whether this company is going to be a place you will enjoy. Use questions as a way to figure out what the environment is like. Look for subtext in the answers.


Somewhat off-topic, but not too much: Are you the Jeff Bush that worked at Be for awhile? If so, you were in on my interview there. (For the sake of other readers, I got the job. But then Be went out of business seven months later and I got laid off, along with almost everybody else.)

This conversation is reminding me of why I washed out of the Bay Area high-tech scene. I was able to do it, but at too high a price. I'd rather work with slightly less smart people on much less shiny products, but living in a place where I can afford to buy a house, and with enough brainpower left over so that I don't have to live for my job.


Hey, yeah! it's been a long time...


You know, I really botched that opportunity at Be. I was really in awe of you guys. I had been on the outskirts of the tech biz for my whole career at that point. I didn't know that there were that many amazingly smart people in the whole world, let alone in one company.

It didn't help any that Be's heart was already broken by the time I got there. I don't think anybody really believed that the eVilla was going to be a success. But I could have overcome that problem, if I'd been smart.

Ultimately, I'm just not cut out to work in the rarified air that you work in. I can certainly see the appeal, though.


I think you're being tough on yourself. A lot of life is timing, and unfortunately, in retrospect, you came in at a bad time. The eVilla was a challenging project, hampered by a lot of decisions that were out of our control (it was a shitty hardware design due to ruthless cost cutting). At the time, I believed there was a kernel of a good idea, but it just didn't come together. I feel bad that overall the experience seems to have been negative for you.

Many of the people who worked on that project ended up back together as part of the team that built Android: Dianne Hackborn, Jean Baptiste Queru, and many more (BeIA actually had a early version of Binder in it). Not immediately though: people who weathered the layoffs ended up being acquired by Palm. Mired in politics, I don't think the OS they built there ever shipped on any hardware, but, as I understand, many of the ideas from that project ended up in Android. The other big contingent of Be-ites, which I followed, went to Danger, which Andy Rubin had co-founded. After that flamed out, many people from there ended up at Android as well. I'm pleased to see Android's success, especially given the string of failures that many of the team members experienced over the prior 8+ years. Many people may not realize that.

To your other point: I periodically go running at lunch with a group that I work with. They are much more serious than I am and have been doing it longer. I'm not at all a great runner and fall behind pretty quickly. I don't aspire to be, and have no expectations I ever will. But I like to run with them because it motivates me to work harder and it's more fun with go with other people than by myself, even if it points out my shortcomings. Most people who seem smart just have spent a lot of time doing something. Personally, I think it's important not to be intimidated by people who you think are better at you than something. You're also probably better than you think. In those days I think was the type of interviewer everybody here is complaining about, so you probably did alright. :)


Man, this is bringing back memories.

Yes, I am very aware of the post-Be trajectories of all you guys. I've been following you all since then. Almost nobody remembers Be anymore, but I still get mileage in job interviews out of having former coworkers on the Android team. (heh.)

I would say that my time at Be was a failure, but that it was also entirely my fault. I was often so intimidated by you guys that I was afraid to speak up. I would have gotten over it eventually, but not in that environment, what with our impending doom and periodic layoffs hanging over our heads. I didn't enjoy working on the eVilla, and I don't think I was alone in that respect. But I could have put my head down and performed a workmanlike job anyway, while cultivating contacts amongst all you guys who were dribbling out to bigger and better things. But I let my intimidation get in the way and made myself a liability.

I am well aware I could get back into the big leagues if I wanted to. I am a much better programmer now than I was then. I clawed my way in the first time, I could do it again. But I really don't think the Bay Area is for me. I recently bought a house for 180k that would have likely cost a million bucks out there. I am happy with my piddly little jobs in the B leagues where I don't have to try all that hard.

I guess I'm not as ambitious as I thought I was.


Perhaps you just have more perspective now. I think back to previous jobs where I was so stressed out and the problems seemed so important. Looking back at the craters that are all that remains of those companies, they weren't as much as I thought they were. That's not to say it wasn't worth doing: there were some exciting times and I met some great people that I enjoyed working with. But I probably focused too much on the wrong things.


I agree. Having a few questions in mind is always a good idea, though I tend to prefer discussion starters rather than a simple, straightforward question. It gives you the opportunity of a follow-up, which let's you talk about a topic of _your_ choosing. My usual rule of thumb for end-of-interview discussions is that it should last until the interviewer suddenly realizes time's up. Then you know that they really enjoyed the conversation.

In general though, I'd avoid HR-related questions. They are almost always likely to generate a generic response, almost every candidate will ask similar questions, and they can easily be answered by your HR department contact.


If I were to start interviewing for a position now, I think the last thing on my mind would be trying to find out 'right' questions to ask. I'm either really interested in the position being offered or I'm not. If I am, I've already got tons of questions borne straight out of that interest. If not, I'm looking for the quickest exit I can make without burning any bridges. I don't want to waste time any more than Apple does.

The author got it right when he mentioned at the end that he was "talking to the people who implemented the original OSX UI". That's the sort of thing that would make me interested in working for you. Personally, I don't care about a company's 'interview process'. That's just filler crap they use to get people talking. I don't need help to get me talking about what I do. I'll answer questions, but as soon as I can, I'll be grilling you about all kinds of stuff. I'm in question-asking mode by default.


My favorite question to ask is "If you could change one thing about $company, what would you change and why?"


I like that, it's a good question. Nobody's actually asked me that, which is odd because one question I like to ask all candidates I interview is the inverse ("If you could change one thing about $our_product, etc"). You'd think somebody would have flipped it around on me!


Would you expect an honest answer to that one?


It usually throws the interviewer off, sometimes they need to take a long time to answer, which can be good or bad, but its up to you to decide how honest they're really being


I always find it a little funny as a manager when a prospective individual contributor asks me what a typical day is like for me. For me? I sit in meetings all day, thanks for asking. Would you like to know what a typical day would be like for you? :)


Finding out you spend all day in meetings still tells you something, especially with a few follow-up questions. Who do you spend your time meeting with? What about? How many people are typically involved? How long do meetings last?

(That said, most of the people I've been interviewed by were devs, so this was not really ever an issue.)


Yeah, when I say I spend a lot of my day in meetings, I usually get a blank look, but it's an opportunity to riff and expand on what the environment is like at the company. For example, part of my job is to protect engineer's time. One reason I go to meetings to report status and collect relevant information to condense and pass on to the team.


You can wipe that smug smile off your face. The individual is interested in what you, the manager, does in a day-to-day basis.


It's funny because my answer turns out to be kind of boring. I'm not sure why you felt the need to attack me.


I usually just ask the questions from the Joel Test. If they score high enough I get to other questions specific to their company.

Back to OP: I personally don't see myself working for a place that needs to talk to me for more than 1 hr before making a decision. If they take this long to decide on a hire, imagine how long and grueling are their technology decisions.


EVERYONE does a horrible job recruiting. I think a very low number of companies are doing this correctly.

The thing about the process is one bad moment spoils the entire process for the candidate. Shallow/No responses, or horrible questions, or something unprofessional being said during the interview.

It's not just $AAPL it is everyone, but if you are an interviewer or a recruiter, please fight for the candidates to get good responses and good questions, especially if you fly someone across the globe to awkwardly sit in a room for 6 hours.


I agree that most companies get it wrong, but what is right? It seems like interviewing and recruiting is a field dominated by "sounds right, common sense" styles of thinking (like most HR) where there is no post-mortem of how well a candidate did in the next 6-24 months.

Even if you look at most MBA programs, the stuff on recruiting and interviewing aren't as research and evidence based as you would expect, and instead you just get spoon fed a bunch of best practices seemingly out of thin air.

I think programmers and technology companies in particular are very trend-following. For example, Microsoft decided to do some out-of-the-box questioning about circle manhole covers and suddenly tons of other companies had to have their own version. Google did CS algorithm questions, so everyone else had to have them also (even for jobs which use high level libraries like Java, C#, PHP, etc).


They get it wrong because no one knows how to do it right. Actually...evaluating human knowledge and behavior into a bunch of 1 hour interview slots doesn't lead to much accurate information.


But no one seems to spend time on trying to figure out how to do it right or even how well the current methods perform.


Studying people is much harder than doing math proofs or experimenting with chemicals.


I meant that corporations should be trying to figure this stuff out, not academics.


They have the same problem as academics do, only without the benefit of being able to consistently apply the scientific method and good experimental practices (the only hope of cracking that nut).


The difference is they have lots of funding and a large monetary incentive to do the research.


Their development teams have funding to build products, rarely do they have funding/resources/expertise to do "meta" research on processes.


Obviously you wouldn't fund it through the development team budget, it would be a corporate level initiative.


$AAPL ? Why not “Apple”?


It's shorthand on Twitter to refer to a company: https://twitter.com/search?q=%24AAPL&src=typd


In this case, it's the same number of characters as the longhand.


But $AAPL is clearer, because "Apple" may refer to the record company, or the fruit!

(I'm stretching, I know.)


It's the stock symbol.


With the $ sign?


he's trying to belittle the company


Idk. Flaunting how much the process cost and how much income it lost was sort of put off for me.

It's great to see insight into interviews, in general, but that just left a weird bitter note to the article.


Same here. I always cringe a little bit when I see people breakdown their time to an imaginary monetary loss. This way of looking at things comes with a pretty heavy dose of narcissism if you ask me. It says "People would be paying me money for what I'm doing for free right now; look how much I'm sacrificing." While there might be quite a few people out there who could get away with billing their time at any given hour of the day, most of us have to establish relationships that facilitate a mutually-beneficial value exchange.

Luis might have very well been looking for work during this time, but by phrasing it as an outright monetary loss, he exaggerates his sacrifice and gives an appeal to the reader to condemn what Apple "did to him."I believe this is the reason also for the "700 Billion". Oh well. Sucks to be rejected. Natural reaction


Yeah I wouldn't quantify how much money I personally lost, but it's absolutely fair to specify how many hours of time were lost. I value my free time. That's time I could be learning a new skill, working on a product, or just having fun. Either way, it's time I gave up for nothing.

I understand wanting to really vet someone first; but it really does seem kind of excessive how long these interview processes are becoming. It's not as if the author were applying for a Japanese salaryman (read: lifetime) employment position. Why not do a normal interview, bring them on as a contractor, see how it goes, and then make your final decision? It'd be a bit of a risk for the candidate if relocation were involved and remote work wasn't possible, but that would be on them.


> but it's absolutely fair to specify how many hours of time were lost

I don't think it is. First of all, the hours aren't "lost", they are "cost of getting a job" - you don't interview without at least considering the possibility of not getting an offer. Anyone who expects to get a job after every interview they do is delusional. It's like the time you spend pitching your services to a client who then decides not to hire you - not "lost" time, but "cost of business".


> Same here. I always cringe a little bit when I see people breakdown their time to an imaginary monetary loss.

If you're freelancing, then it's not that imaginary. You're giving up billable time.


As a person who is a freelancer and also employs freelancers, you're right in a way. But in another way, you have to admit it's probably not OK to just say "Hey guys, off for two weeks to write a blog post, oh and if I decide to do a a few hours of time when I feel like it, you better pay for it."

It's just not realistic. Like the guy above you said, it comes down to time and I can sympathize with that. But to imagine you always have someone on hand right there willing to pay for your hours of work is where I am like "ok, wait, hold on."


I wouldn't expect to be paid to interview. But it's still an opportunity cost.


If his time was too valuable, he always had the choice to reject the interview and save that $6000. He chose to bet $6000 for a ~70% chance of getting a $200,000 job (or whatever). Sometimes bets fail. It's frustrating, but life goes on.


I don't understand--I thought we have no ego. There is no self. There is even "egoless" programming.


Same here. S/he sure does come of as very butthurt (is there a better, less "offensive" word for that?). It wasn't a "shallow 'no'", it was just a "no", what else did s/he expect (companies usually don't give usable feedback because of legal reasons)?! S/he seems hurt to get a "no" after 6 hours of in-person interviews, but obviously, if it was a guaranteed "yes", you wouldn't even need an interview!

In other words, just another unsuccessful interview, nothing unusual here, nor anything that Apple did badly or wrong.


I used to work for Google and did a ton of interviews for roles where I was the hiring manager, as well as others.

One of the more painful things that I came across regularly was that we often had multiple great people go through the full interview process for a role, but could only hire one. Often 2-3 candidates could have done the job brilliantly, but we could only choose one. In that case, it tends to be really subtle things that shift the decision. (And this is where Google's Unconscious Bias training is vitally important - https://www.gv.com/lib/unconscious-bias-at-work)

It sounds like that situation may very well be the case here: lots of expense (both time/effort and $) and a long series of interviews, with a "no" at the end. (And in my experience those "no's" are often blunt, no matter how awesome a candidate is, for cover-your-ass/legal reasons.)


This is the startup secret weapon: they can hire people that Google (and other large companies) cannot. When there's no shortage of work to do, and hiring is a constant struggle, you can hire as many good people as show up at the door.

A lot of startups do still hire with a large company mindset, but I think they're making a big mistake.

Simply the process of getting approval for a job req and playing the required politics screws everything up. I've actually been pressured to hire someone just to hold onto the req at a large company, with the up-front, stated intention to fire the person in a month or two and keep looking.


> I've actually been pressured to hire someone just to hold onto the req at a large company, with the up-front, stated intention to fire the person in a month or two and keep looking.

Wow, that is seriously fked up. While I got pressure to hire (one role I hired for was very specific so it took a long time to find a candidate), as long as I was actively sourcing/interviewing people, I never got too much flak. You've got to keep a hiring bar high... and not screw people over!


How long ago were you doing these interviews? Currently, a company like Google/Facebook/Apple will hire all the good people they can find.


While that may be true on the whole, it doesn't mean each team is allowed to just hire as many people as they can find. Of course, it's possible that you could interview with more than one team at a given company, but that depends on the company policies as well as other teams being interested.


I was under the impression that software engineer interviews at Google were for generalists, since they want employees to be able to move on to other projects in the future. Is there any reason to suggest that Google/Amazon/Facebook is currently saying "no" to exceptional generalists?


My understanding is that generally, for things like new grads they will hire for the company and then assign those new grads to teams.

However, each team has head counts for positions, and it's more or less up to them to hire for their own teams. It's certainly true that they may want exceptional generalists, but companies don't just hire people and then find a way to put them on a team. This wouldn't make sense for both the company or for the person involved, as someone who's more senior would generally have some sort of preference on what they want to work on.

My experience with interviewing at Microsoft and Google and working at Amazon is that basically a recruiter will try to find teams that might be interested in you and vice versa, and then you will interview with those teams. That being the case, you could get rejected by one team but then get accepted by another team. Or, even if you seem awesome, if none of the managers are interested, it's a no go. This also means that your success depends on how well your recruiter can sell you and find positions for you.


Google always has openings for hundreds of engineers. If multiple people did well and the process is so expensive, why not hire all of them?


Good point. Most roles at Google have a specific job req... you find the right person and the job is filled. But there are roles where that's not the case and where what I said doesn't necessarily apply. (That said, I'd argue that the expense that a company takes to interview you is in direct proportion to their interest in you, no matter what else happens in the process.)


...Often 2-3 candidates could have done the job brilliantly,..

Tell me more about the skills shortage.


In my case, I wasn't interviewing for software engineers.


this is pretty close to the process we have here at <undisclosed bay area company>

And indeed, if you had to go through all this it means they very seriously considered you for the position. Now, the expenses they made mean little (even for a far poorer company) compared to the mistake of recruiting someone that did not fit.

There's many reasons why someone would not be selected and sometimes it's just that people didn't "click" really.

I know that most of the time, recruiters word is "if you're not sure, better not hire than to make a mistake" and sometimes people who could have been accepted and made a positive contribution to the team get refused. There's even a bit of luck in that.

Thanks for sharing, though. I've never applied for Apple - albeit I guess engineering jobs get more tech stuff in the facetime interviews ;)


Why is this the case? As a hiring manager, I often lean heavily towards the "hire them and if they don't work out, let them go" camp. I've gotten a lot of great teammates that way and only one that didn't work out. But the one that didn't work out killed the interview and was ridiculously smart. All the ones that did poorly in the interview and had little experience ended up being some of my better engineers.


Because there's a prevailing idea that once you hire someone, there are huge legal and logistical barriers to letting him go. I don't know how true it is, but that's what people believe.


theres a lot of reasons, its more expensive to hire, form and fire than not hire for one.

Then, there are relationships with colleagues and between employees regardless of performance, if you fire very rarely then your employees are happier, everyone's happier and performance is better.

Basically, you always take the smartest risk you can, and quite often, that means no hire when you're not too sure.


"Now, the expenses they made mean little (even for a far poorer company) compared to the mistake of recruiting someone that did not fit."

Please explain. I hear this a lot but it's never substantiated other than by vague references to employees being able to sue for being fired. Yes, some employees do sue, but there generally is no ground to do so, even when the employer has misbehaved. In my experience, it's actually incredibly easy and cheap to fire someone. You might lose a couple months' salary, but generally even that won't be a total loss as you're likely to get at least some decent work even out of a bad hire.


This depends on the job. If other people can do their job without one who has been fired then it's quite cheap. On the other hand, in software industry, there are often teams of specialist with different expertise and their jobs depend on one another. In such a case, firing one will interfere with every one else and you will take a loss in decreased productivity for everyone. E.g. you fire a member of a 5 people team on a project with 100 people total. So that team productivity drops 10% (it was a bad hire after all so there is not much loss) and, hence, the whole project slows by 10%. Now you pay the remaining 99 people 10% more to get the same work done.


It wouldn't happen if it weren't economically wise. Contrary to claims to the contrary there is no shortage of adequately qualified candidates and an endless and growing sea of unqualified. So randomly rejecting the majority of qualified candidates is a relatively small price since the hiring goal is to get rid of the vast sea of unqualified.

If there were indeed a shortage the practice would be reversed and companies would be willing to risk hiring unqualified workers in order never to miss the one candidate who can do the job.

But so long as there is a flood of less qualified workers along side a good number of skilled ones, the practice will continue or worsen.


I cannot stand the whole "culture fit" gambit. It's a job, not a country club. The idea that some people will "fit in" and others won't and that this can be determined during an interview is naive at best.

What you get are a bunch of new hires who's only qualification over the not-hired is that they put on a good show for the interviewers. I'd say they are the best actors, but that doesn't cover those very good actors who make the mistake of playing the wrong part. Say you are willing to work through weekends to meet deadlines ... oops sorry, you guessed wrong. In this office that attitude is too competitive. We are going with those who guessed "no, weekends are for relaxing" and don't think you would get along with them.

The message this sends to current employees is also evil: if you don't fit in perfectly we don't want you. So everyone shows up to work in costume, wearing a mask, because they fear standing apart. Bring the wrong suit or express the wrong opinion and you might not "fit" anymore. We often hear about a lack of visible diversity in IT. How can we expect to achieve visible diversity if we cannot yet tolerate emotional and cultural diversity? Employees and prospective employees should be judged on on their work product, not on their ability to emotionally camouflage themselves.

Did Office Space teach us nothing?


As someone who's travelled 10,000 mile round-trips for final interviews, only to lose out on "culture fit," I find it the most frustrating excuse for not getting a job I have otherwise proven over previous interview rounds that I am capable for. Why? Because it's totally unquantifiable and subjective. Fair enough if you find a hole in my technical ability which would limit my performance in the job you want me to do, but using "culture" as the excuse is a nonsense.

There could be any number of reasons someone might not appear to "fit" on a given interview day, which wouldn't necessarily apply in them in the day-to-day - jet lag, the stress of the interview process, being under the weather and many more...

People and cultures adapt over time, through contact with each other; if you're denying good candidates because of their "fit" in the now, you're artificially limiting yourself for the future.


> I cannot stand the whole "culture fit" gambit. It's a job, not a country club. The idea that some people will "fit in" and others won't and that this can be determined during an interview is naive at best.

First, regarding the cultural fit: I think it's important that you share a similar mindset with the people who already work there. You'll get along better, and it is more productive. For example, if one person is much more assertive than another, and tends to get their way, we may miss out on the contributions of another. (A lot of very different examples here)

The second part: You're right, they can't give you a full personality quiz, but they're doing their best (oral communication and body language tell a lot more than having you fill in a quiz). They want to look for someone who fits in, so they bring you in and see if you do. What other way is there?

> ... best actors ...

I think if you intend to be an actor for the sake of a job, you're going to have a miserable time. Sure, I suppose this is the case if you value money more than satisfaction at you workplace. Which is where you'll make friends and spend a lot of your life, so I think you shouldn't, but that's subjective, so I concede this point.

> ... not fitting ...

This relates to the previous part in terms of priorities between just "getting the job" and "being happy with your job". As for the idea of not fitting in, I think it's too much of an exaggeration to think that people won't tolerate a few things here and there--but if you're entire view was different or fake to begin with, well maybe you didn't belong after all... you wouldn't be happy there anyway, so it's for the best.


Having a similar mindset or outlook doesn't mean that people will get along. Getting along is about conflict resolution and tolerance of other people. The best teams are those with various personalities.

Look at the space program. All those astronauts put on a good show. They look like they all play baseball together on weekends. In reality, they are bunch of very assertive and competitive Type-A personalities that, absent the overwhelming desire to fly into space, would rip each other to shreds. They get the job done because it is a job, not highschool.


Spot on! I know plenty of places that are "desperate" for talent but reject clearly talented people because of "cultural fit".

For example I know a couple of tdd shops that have passed over quality candidates because the candidates don't think tdd is super awesome. I'd understand if the candidate refused to code in a tdd style but it's not even that.....


"I think it's important that you share a similar mindset with the people who already work there. You'll get along better, and it is more productive."

In theory that might be nice, in practice its ALWAYS implemented with a search and replace of mindset for gender, race, religion, orientation, parents socioeconomic class, political affiliation, random quirk of geography, etc. And how can you blame them, after all those are the primary determinants of mindset?

This is how in a diverse nation you end up with 100% brogrammer shops.


|First, regarding the cultural fit: I think it's important that you share a similar mindset with the people who already work there

Id much rather work with an ahole that gets things done than someone I get along with that barely does anything to be honest.


While I agree that "culture fit" certainly is double-speak for a lot of toxic crap and discrimination, I think that corporate culture is something very important and worth keeping / building a good one.

Culture is also wether to be a perfectionist or to ship things now, even if they have bugs. To spend time sharing your knowledge with others or to document the code. To create a design or to quickly do what the customer wants. To generate comprehensive documentation, or to give personalised support. To tolerate brilliant aholes (hey, they are geniuses after all) or not.

All those things are different approaches to work, and being in places where the culture is different of your own can be a pain for both sides.


> I cannot stand the whole "culture fit" gambit. It's a job, not a country club. The idea that some people will "fit in" and others won't and that this can be determined during an interview is naive at best.

Funny thing: at country clubs, "culture fit" used to be a nice way of saying that we had better keep the Jews, Chinese, and Italians out, and that anyone darker-skinned than that will be automatically assumed to be an employee.


Oh dear, where to start with this...

> It's a job, not a country club.

Yes, it's a job, but your ability to deliver on your work is not defined merely by private metrics like how fast you type, how many lines of code you can write a day, or even how knowledgeable and experienced you are about C++. Pretty much every job that you might apply to involves very large amounts of communication with your colleagues. When that communication breaks down (which it does even when you are a good culture fit), all sorts of elements come into play to help get things back on track. Also, when there is a need for rapid change (which there is on an almost daily basis in any company that's not on a straight path to the cemetery), communication and how well you gel with the rest of your team becomes the critical factor for how fast that change can happen.

"It's a job, not a computer game," I would reply. You can play your game by yourself with no interactions. Jobs require mature people who know how to communicate and behave in the target environment.

> What you get are a bunch of new hires who's only qualification over the not-hired is that they put on a good show for the interviewers. I'd say they are the best actors, but that doesn't cover those very good actors who make the mistake of playing the wrong part. Say you are willing to work through weekends to meet deadlines ... oops sorry, you guessed wrong. In this office that attitude is too competitive. We are going with those who guessed "no, weekends are for relaxing" and don't think you would get along with them.

If a company hires based on superficial answers like this, and thinks they're hiring based on culture fit, they're totally missing the point and they'll probably fail. Culture fit is at the same time far more subtle and far more concrete than this. Superficial features like whether you say that you're willing to work weekends or not are irrelevant. However, little and big details like how you walk down the street, whether you are open to someone questioning your ideas, whether you let someone else walk through the door first, whether you are a well rounded person with more to bring than just "I'm a great programmer", and, indeed, whether you recognise that you do want to work with people that you like and get along with, whether you you care about what kind of people you're going to be working with - individually those might be easy to fake, but as a whole, it's as hard to fake that general picture as it is to fake knowing about programming (to a programmer) when you're not a programmer. Even if you learn stuff by rote, details will slip.

> The message this sends to current employees is also evil: if you don't fit in perfectly we don't want you. So everyone shows up to work in costume, wearing a mask, because they fear standing apart. Bring the wrong suit or express the wrong opinion and you might not "fit" anymore. We often hear about a lack of visible diversity in IT. How can we expect to achieve visible diversity if we cannot yet tolerate emotional and cultural diversity?

That's the message, perhaps, if the company sending that message is totally stupid. Yes, culture fit matters, and yes, people can drift out of culture fit. But this is not something that happens suddenly, it happens over a long period. People don't suddenly come to work one day with a completely different outlook on how they want to behave at work. Obviously, if their definition of culture fit is based on childish, superficial details like whether you wear a suit, then yes, you'll get dumb behaviour from said companies.

My experience is that, quite unlike what you describe, organisations with culture fit enable people to stick out more. Because you know you're surrounded by relatively like-minded people, you tend to feel more comfortable being yourself. On the other hand, in an environment with a bland mix of employees with no consideration of culture fit, people tend to much more harshly punish people who stick out. Take a company like Zappos, which definitely cares about culture fit, and has as one of its explicit values "be weird", and compare the types of behaviours you see in that company to what you'd get somewhere like UBS or any typical traditional large corporate, which don't tend to care about culture fit, and you will easily see that people at Zappos tend to be much more willing to stick out - it's the ones working in the banks that have to wear masks all day.

> Employees and prospective employees should be judged on on their work product, not on their ability to emotionally camouflage themselves.

See above point - it's not about emotional camouflage, unless you're in a dumb company that doesn't understand the point of culture fit. It's about being emotionally intelligent and well matched to the people you'll be working with, so you feel comfortable being yourself around them, and don't have all this extra friction of working with people you don't really like or get along with.

> Did Office Space teach us nothing?

Yes, it taught us that the superficial understanding of culture you're describing can be implemented in horrible and somewhat comical (if you're not stuck in it) ways. It taught us that "pieces of flair" is a terrible way to measure enthusiasm, that "hawaiian shirt day" is ridiculous, that bland cultures generate zero loyalty or wellbeing, that culture, or lack thereof, can be a ruthlessly efficient demotivator.

In other words, it taught us that actual culture fit really does matter.


"Pretty much every job that you might apply to involves very large amounts of communication with your colleagues."

Yes, and the ability to communicate well with people who are culturally different is incredibly important.

Trying to find someone who has the same cultural fit as the interviewers is counterproductive unless your company is tiny or there is no mobility.

At my current company:

- We have close to 20% turnover and 10% growth in our software division.

- We have over 25 developers in our division.

- Developers frequently need to interact with the business arm, with the sales arm, and with the customer support arm. They all have significantly different cultures.

- Our clients have different cultures and as an "agile shop" our developers deal directly with them.

Getting along with the 4 people who interview you means next to nothing in light of the above.

I want people who can get behind our vision, who are good at their work, and who can get along with people whom they might not be best friends with outside of work.


There's no contradiction between what you've said and what I've said.


I've had 9 on-sites in the past 4 months at both large companies and start-ups. A few reflections:

- Sometimes, a "No" means "we like your career trajectory; we've identified you as a candidate that we want to follow up with in ~6 months".

- Sometimes, a "No" means "we really like you; we think you'd be a fit here, we'll be constructing this team in ~6 months".

- Sometimes, a "No" means "we wont relocate; we wont fly you out here; we're only considering local (e.g. Bay Area) candidates".

- Sometimes, a "No" means that it's up to you to reflect on the situation. Take as many notes as you can during the process. Analyze what you said, wrote, acted, etc. It's up to you to determine how you could be better.

- When you get to the on-site and have the opportunity to learn a lot more, things might not be all ponies and rainbows like you'd imagine. Be open to what you didn't want to see, hear, or learn about. You might learn that you actually don't want to work here.

- You're racing against the clock. Balance is key. You hear advice about asking clarification questions, discussing trade-offs, etc. but at the end of the hour one of the most important things is the code you put up on that board. The interviewer will likely whip out their phone, take a pic, and that's that.

- Coding on a whiteboard, with a stranger, in an unfamiliar environment, after traveling many miles... is... challenging. Without much practice, you're at risk to fall flat on your face--I've face-planted my fair share, and it's always fuel to get back at it again.

- Interview as much as you possibly can. You learn about companies, people, technology, industry, challenges, etc. Practice, practice, practice.

- Sometimes, recruiters reach out to you for an initial call (you're excited), and then you learn that members of the hiring team haven't even seen your resume (orly? u think i haz de skillz dear rekrooter?). You then never hear back from the recruiter, or receive an email stating that they're not moving forward. I've only had a couple of these, but it's enough for me to strongly dislike contact before any member of the hiring team has reviewed my qualifications.


The lack of explanation about why they didn't hire you is completely normal in California. Saying nothing at all ensures they don't say anything that can be interpreted as discrimination, minimizing their legal exposure.

They have nothing to gain by explaining and plenty to lose if they say something stupid.


It's also just awkward. I've had a few cases where people pressed me for feedback, and I responded gently but truthfully. I thought the answers were somewhat innocuous (you don't have any experience with X), but people still got defensive.

I've certainly interviewed and didn't get offered a job. It stings, even when I knew I wasn't the best fit. It's natural to feel some bitterness.


My own experience from a few years back. I had relevant skills for some technology they were ramping up and got an call from them 1 hour after I submitted my resume. Next day did a phone screening and they wanted to interview me in person. The interview was for two days with 18 people. Most were coding and problem solving questions with engineers and then some management. I did correctly one all questions except one I got incorrectly and one I stumbled a bit. In the end I didn't get the offer because I was not enthusiastic enough. Apparently because I also mentioned I was interviewing at a startup. Honestly I felt I could contribute more to the startup than be a cog in the wheel at a big company. In hindsight the startup was more lucrative for me as an individual...


If software development was not a creative process then such algorithmic/IQ test interviews would be very relevant. Unfortunately for those wasting their time with such interviews it is a creative process. A recent Nobel prize in economics was given to Daniel Kahneman for his work proving such gut instinct interviews are a failure. When I first left college and was bad at software development I passed those tests, got into software firms and got my experience. Now even though I write software everyday for my clients I wouldn't pass any of those interviews. Zuckerberg is right - younger people are smarter (at passing those tests).


Where was there any suggestion of algorithmic or IQ test interviewing?


I was commenting on the article's posts which had expanded into interviews for such firms as Apple, Google etc. Apologies if that is not allowed.


From surveying the comments... If companies are willing to spend the time and money vetting you, why are you not looking at them the same way?

Despite the headlines, market cap, cache of the name of the company on your CV, how can't you have as many questions coming up to put at them as they have for you?

The only time I've been turned down for a job that looked like it could have "dream job" aspirations to it, I had to say that 1) I totally knew and agreed with why they were declining and 2) felt they knew exactly why I would not likely feel comfortable coming in with them in a way that fits just right.

You should be seeking out, within reason, what day 1, month 1, and year 1 are going to be like. You should be seeing how they fit into your life path as much as they are seeing how you are going to get them through the issues that made the added headcount necessary.

What OP left me with, literally, was "I'm not a dummy b/c they brought me in." It's such a dry, objective review that it makes me think they were along for the ride instead of taking the wheel. It could well be just a personality-based thing. The OP has an apparently sterile passion for design and/in documentation.

Interviewers love passion and resonance - or at least they should at some place you really want to be. Nobody should have to pry things out of you. And then, they want to be able to agree with you and your view on technical passions and interpersonal rapport. Are you hard-working, objectively talented, opinionated-but-open, and do you seem ready and able to complement or enhance them?


When I read these stories, I always wonder how many qualified people would actually subject themselves to such a pathetically long interview process?

I imagine that companies with such processes only get candidates that are extremely compliant and lack self-esteem. Because most people I know would politely tell the employer to go f themselves after the 3rd screening call.

Are these long drawn out, humiliating application processes typically American or does this happen in other countries as well?


>Are these long drawn out, humiliating application processes typically American or does this happen in other countries as well?

It happens in other countries too. It is really more a symptom of company size than company nationality. The mega-corps all tend to do shit like this.


Unfortunately, laws make it really difficult to provide candid feedback to candidates in the US.

I always call my candidates and ask one simple question when they don't get the job and after I tell them they won't be getting the job: do you want the usual HR rejection reason as in "you don't fit the profile we are looking for" or "we have a candidate that better fits the business need," or do you want me to give you 3 suggestions on how you could have done better? If the latter (they always want feedback, don't we all?) then I go into very specific behaviors. The majority of these tend to fall in two camps: you did not prepare for the interview, or you did not demonstrate a specific skill or experience and this is how I think you can get it.

100% of the people I have given feedback have never come back to sue my company or me for rejecting them. Many have followed me and one has actually followed me, interviewed at another place I went, and got the job then.


Sounds like a pretty standard process, I was actually expecting it to be more convoluted for a company of their size.


Out of curiosity, why the title 700 Billion? What is the purpose of this in how it relates to the article?

Regarding the article, yea, seems pretty standard. Sorry you didn't get the job


It could be for a number of reasons.

1. OP wanted to emphasize what it is like to interview at a company which has a lot of resources to invest into interviews - one of the things mentioned was committing multiple people for a full day to just interview him, as well as willing to bear a high initial cost (travel, hotel) to interview him.

2. OP wanted to detail the interview process of such a financially successful company: who they hire, why they hire that person, how they find and select candidates that have contributed to that high financial success.

3. OP wanted a crafty title beyond "My interview at Apple"

4. More likely to be clicked on, shared, commented or voted on (i.e clickbait).


5. They have $700B, and even they can't they afford more than a "thanks but no thanks."


"A few people asked me to write about my experience of interviewing for a job at Apple—the 700 billion worth company—so here it is."


I still don't understand, but ok, thanks. That's a great descriptor of Apple (of which there are many), but doesn't point anywhere toward a rationale for titling an interview experience as "700 billion". I'm not trying to say titles need to make logical sense, but they usually should make some sense


it refers to Apple's current Market Cap


I think he understands that, but is wondering why that is relevant for the topic at all.


it's called link bait.


I also recently went through an interview process lasting over 3+ weeks, 3 separate interviews with 4 different people. Initial phone interview and skype for the other 2. Oh and add to that tech tests lasting over 3 hours, completed after screening interview.

In the end I didn't get an offer, with a one liner explanation.

I was grateful that they even gave me a chance and hold no hard feeling against them BUT I'm pissed about the waste, on my and their part. On the days I had the interviews, I wasn't productive at all as I spent time preparing, managing my nervousness (pacing around), and decompressing after interview. Those are a few days I won't get back. Even without putting monetary value on it, I think all can agree it is a big waste.

After all that, all I got was a stinking one liner explanation, that I wasn't a good fit. What was the tech test for?

One person on the team I talked to seemed as if he hadn't seen my resume until the interview time. He was going down my resume and asking questions and I could tell that it was his first time reading it. And I also feel that was the person that gave thumbs down.

I hope their accounting knows that 1 person cost the COMPANY nearly 6 man hours of their employees, for nothing.

EDIT: From what I've seen previous jobs, managers and team members are asked to interview the candidate, not necessarily say yes/no based on the resume alone.

Not that anyone will listen but I think it would help if HR asked managers/team-members to give up/down on each resume before calling in for interview. If enough give down, don't call in for interview. Save time for all.


> Overall, I’m pretty happy my work caught someone’s attention and that I had the opportunity to meet all these people.

This is a really cool way to sum up the article.


"Talent Shortage"


I feel like that's a big misunderstood thing in our community. There is a talent shortage - in the sense that companies are always ready to hire someone in the top ~10%. That's what talent means in this context. Google and Facebook will always be more than willing to hire the people who build frameworks in their spare time or contribute to the Linux kernel. There is however no shortage of one trick pony PHP developers, because by mathematical definition they are the bottom 90% (see http://www.joelonsoftware.com/items/2005/01/27.html).

(the question of whether companies actually need employees of that caliber for building mobile apps is a entirely different one)


"Wanted: Someone with the time-management skills to get to the top 10% of developers. Must be willing to show up for 8 rounds of on-site interviews and be prepared for deep philosophical discussions on the merits of mergesort."


Well, there have been a few instances in the past where I've been desperate to hire and I've brought people in against my better judgement. I can tell you it sucks having to look someone in the eye and let them go because they couldn't keep up with the rest of the team. Once you've had to do it a few times as a manager, you become more conservative with your hiring.

Sure, pushing pixels around is easy, but when you're up against a deadline and the app is crashing in a subtle way, you need engineers who have solid debugging chops. Not everybody does.


When you're up against such a deadline, your manager has failed you, not the other way around.


Companies shouldn't have deadlines?


No, that's not what I'm saying. I'm saying it's the manager's job to secure enough time for a product to get developed by the team or reduce the scope of what's going to be developed by working with whomever is setting these deadlines. If you need to magically speed up your development to meet the deadline or work extra hours, the manager has failed at doing the above, something that's a core part of his job. In some really bad companies, the manager won't have a choice in doing either, and you're in a situation where the deadline was simply unreasonable. In those cases, I can excuse the manager. Mostly though, deadlines are artificial and it really doesn't matter if they're met or not. Even if it does matter, the manager is getting paid a whole lot of money to manage both the team and the expectations of those who care about the deadlines. Making the team work overtime is thus a complete failure on his part both to the team and to those above him.


I don't disagree with you that death march schedules are bad, but I don't think I was making a case for them. :)

Another way to put it is that the manager's job is also to hire the best team possible, and there is a wide variance in skill levels of engineers. All other things being equal, hiring engineers who are more adept is a big advantage to the company.


Well, it doesn't sound like the author is out on the street, desperate for work. He accounts for his time at 400 pounds sterling per hour.


That's his day rate, not hourly rate. It's pretty standard for senior, competent contractors in London.


Whoops, duh, you're right.

My point was that he's not hurting for work in general, so this story doesn't really have bearing on the talent shortage.


If you're too good, they often won't hire you for political reasons. It's unjust but I think it happens a lot.


Seriously, I think a couple of hours and a lunch is all that is needed to consider most positions. Management and directors can be more prolonged.

Developing a workforce is about cultivating good leadership, a balanced diversity of thought, improving raw talent and most importantly tenacity.


I noticed quite a few grammatical errors while reading this blog post. Normally this wouldn't be a big deal, but if the person is looking for a job writing documentation then it could be a problem.

Some examples:

>I personally don’t see money as a measure of worth, but as a freelancer and well, running my business, should not and cannot ignore it.

>Calls are 30 minute-long, informal, you’re explained how the process works and what to expect next.

>The first call was with an internal Technical Recruiter, given my interest, I had a call with one other team lead before being redirected to the Developer Publications lead.

(I have no idea what this last sentence actually means).


>> I invested around £4000 (~$6000) of my time (2 weeks @ £400/day rate) into that article, I’ve written 8 of the total 16 topics I intended to, and replicated dozens of Apple logos which I made freely available on Dribbble. (terrible ROI)

that's dedication

>> So when Apple asks me if I want to help improve their Developer Documentation: I’m in.

(rofl) I have never seen anyone put in so much effort/investment for so little return. IMO his creativity and drive belongs in a start-up. pearls to pigs I guess, but sure he doesn't see it that way


Thanks for sharing your experience. Bottomline - don't let any person/company judge your competence. If you've got the chops, you'll excel at what you do. So, go build it.


I really have no idea, what criteria is the most important for apple. However for me, when hiring these points hold most value in the order they are mentioned.

1. Type of Person. (Preference to be given to a positive, honest, candid, compassionate, less focused on money and more dedicated to and focused on job/skills and friendly person).

2. Skills level.

Author apparently failed at the money vs dedication. If you are more focused on money than skills/job., you are a big no-no. in my books.


My experience interviewing at Apple, don't let them know you know more then them (guess common sense, did i get the "then & than right?), you ain't getting the job. Sorry to say you have to dumb yourself down to work at these major companies, it's a pretty big ego game at play.

Actually it's probably like that across the world, but sometimes you luck out and actually get to work with just awesome people.


Maybe Apple is overdoing the hiring process but I think it's the right approach especially for a company like Apple. I rather risk to decline ten good candidates instead of hiring one wrong one. Hiring not fitting people will cost the company so much time and money that a expensive hiring process is justified. Question is which hiring process leads to good fits only but this is a different discussion.


The "Are you good enough for us?" interview process is seriously broken, maybe even neurotic, considering that the excessive focus on weeding out false positives actually ends up rejecting too many good people such as you who would end up contributing a LOT.

The inequation is :

Savings due to reducing false positives << Loss due to increased false negatives.

10X lower

It takes intelligence to realize this, because weeding out false positives (LHS) is a Realized profit : your workplace is full of smart people and you get to say, "See, our process works", while the RHS is an Unrealized loss : you never got the chance to quantify how much you lost by rejecting the next amazing employee.

IMHO, everybody needs to get off their high horse and start accepting employees after gasp just a cursory inspection of resumes / qualifications / blog posts, or even more radically, random double gasp selection of 10% of candidates who meet the minimum criteria. Give everyone a long probation period, and allowing them to seek feedback frequently as to how they can influence the decision to hire them on a more permanent basis so that the final decision will not be a surprise binary event.

Hire for passion and ability, not just "the best"; how can you know the best among a sample if you never gave them a chance to score at the job (NOT looking good in an interview)?

I have been surprised many times by hiring non-superstars and then finding out that there are many dimensions to doing a job, such as perseverance and sincerity, that they can bring to the table that can tilt the final score in their favour.


>> Give everyone a long probation period, and allowing them to seek feedback frequently as to how they can influence the decision to hire them on a more permanent basis so that the final decision will not be a surprise binary event.

Hypothetically, let's assume every company follows this method and around 30% of the employees who went through long probation period didn't make it through. Wouldn't that leave the employees in an even worse situation than getting rejected immediately, since they resigned their current job and now everyone in his professional circle knows that he or she didn't make it through company X's probation period? In addition to that, the employer will also accrue a lot more negative publicity from the employees who didn't make it through.


This will not be as big a problem as you assume because the "everyone in his professional circle who knows that he or she didn't make it through company X's probation period" would also have gotten their fair chance to try their hand at being a Google or Apple employee, to aim as high as possible, and would have faced the same rate of rejection.

It is only a problem if failing probation is a huge black mark. If there are a large number of people for whom the company-employee fit didn't occur, the word "probation" would lose it's sting. Maybe we can call it an "apprenticeship" period? Or other innocuous term without previous negative connotation.

> In addition to that, the employer will also accrue a lot more negative publicity from the employees who didn't make it through.

The same could be said of ex-employees, too.

In general, the problem is the neurosis of giving too much importance to "failure" or "probation". It is ironic that this is the case even in a startup discussion board :-)


I find that ranting about a company's hiring procedures is a quick way for their HR department to quickly strike your name from the "Future Followup" file.

Apple is the richest company on Earth. Criticize their means and methods when they're in Chapter 11.


If a company can't take criticism then why would you want to work there? That sounds like an awful place to work.


Richest != Best to Work For


Can't help but wonder how Jobs or Woz would have reacted to that when they were young?

I get the feeling they would call the company "assholes", of course there wasn't quite the celebrity culture of tech and money back then.


I don't get it. They have the right to reject. What's wrong ?If you want to change their interview process get selected and change it !

Don't defame google,apple,fb ..etc interview process. (Humble request)


We live in an age of inversion. Many things are the opposite of what makes sense.

- You have to interview, and prove you're worthy, to become a slave

- You have to pay to look at ads (ever been to a movie theater, or sat in a plane with screens in front of you?)

- You have to pay to get cancer (ever buy a cigarette?)

It's interesting, because the other way makes way more sense. If you're going to be a slave, you should get to pick where. You should be paid to look at ads. You should get paid to get cancer.


Yes, using such a manner of thinking, you ultimately arrive that you are born to die, and but live to suffer. It truly is a grim irony, isn't it?

Sometimes though, we say to ourselves we were born to live and suffer to live. The manner through which you justify your existence here on this Earth -- and how that relates to your work / play balance -- is nothing special to this age and never will be something special to an age. Its roots go too deep. We'll always be paying in some form to live or die.


>> You have to interview, and prove you're worthy, to become a slave... If you're going to be a slave, you should get to pick where.

Being a slave means performing involuntary work without pay. Having a job means performing voluntary work for pay. I'm not sure how you're conflating the two. Also, you do get to pick where you work.

>> You have to pay to look at ads (ever been to a movie theater, or sat in a plane with screens in front of you?)... You should be paid to look at ads.

On the contrary, those ads offset the cost of your movie or your flight. Just because they don't completely cover your cost doesn't change the basic tradeoff that's going on.


Isn't this why they are a top-tier company? I mean, their selectivity is what makes their company great as a whole.


when i interviewed, at the end of the day, the dude went out of his way to tell me they'd let me know, no matter what, either way, in a few days. Then crickets .. i still resent how he was so insistent that i would hear from them. Just be honest jackass har har.


LinkedIn did the same to me.


I have been working at a smallish startup for the last 2 years and have spent a lot of time hiring people. You have not asked for comments about what might have led to your rejection, so feel free to disregard this free advice. Obviously I don't have enough information to give you real feedback, but perhaps the following will be helpful.

By far and away the biggest reason we tend to reject junior/intermediate people who have had a decent interview is that their view of their own level and our impression of the same level appears to be grossly at odds. We don't expect junior people to know how to do everything, but rather hire people where we can see very good growth potential. We have an exceptionally low attrition rate, so this has worked out very well for us.

There were several things in your web page that would raise immediate warning flags for me if I were to see it in an interview. As others have mentioned, the attention to numbers makes me feel that you are justifying yourself. For example, the translation of the time you spent on a personal project to money makes me feel that you are trying very hard to make it sound impressive. The details about how many hours a course took and how you spent many more hours making notes makes me think that you want this to be a very impressive thing.

Please don't take this as a personal attack. It is a very good thing to be proud of your accomplishments and to use the good feelings as a springboard to your next project. The only problem is that you will find that these accomplishments will really pale when compared against the many people who have nurtured side projects for years, written hundreds or thousands of pages of peer reviewed documentation, designed and given courses (as opposed to taking them), etc.

My point is not to discourage you -- just the opposite! I love to see CVs where people take initiative and invest their own time in things they love. No matter how small the thing might be, it always has the potential to be a seed that grows into a tree. But if I get the sense that you are over valuing your accomplishment I am left to wonder -- is that all this person is capable of? I am looking for amazing growth in the applicant. Can they do something 10 times more impressive with some guidance? 100 times more impressive? Or will they hit a glass ceiling and say, "This is as good as anyone could reasonably expect me to be".

Even if someone has potential, they don't always have the maturity yet to bring that potential to fruition. My advice is simple. Present your accomplishments with no embellishment or sales pitch. If they are impressive, then the interviewer will be impressed. If they are not impressed, then you have a very real opportunity. Ask the question, "What would make you impressed and can you help me get to the point to be able to do that?" If they can, then the job will be yours. If they can't then it is not a job you want anyway.


"Present your accomplishments with no embellishment or sales pitch. If they are impressive, then the interviewer will be impressed." --> I can sign that.


I got roped into one of these idiotic interviews at a Very Important Company.

Them: How would you solve (well understood, theoretical and tedious to solve problem). Me: I'd Google it. Them: That's cheating. I want to understand how you think about the problem. Me: We're not in school. You'd be paying me to be efficient and solve problems. Why would I waste time on something I can Google. That's how I think about the problem.

And that was about the end of it.


I like the following interview style (I was interviewed for a security full time position at a well-known SV company like this):

Skip introduction...

1) start with basic textbook questions like what is authenticity and authentication or XSS

2) catch what the interviewee said and build questions (e.g. I said something about private key so interviewer asked me about pro and cons of asymmetric and symmetric encryption). Oh yeah - know your shit because they are going to catch you! It's okay to say "I don't know." Being straightforward earns respect. My interviewers didn't penalize me much (well I just graduated from college...).

3) the next couple interviews again starts with introduction, then deep dive into what the team does, what the team is building at a high level, then proceed to ask me my interest. Here i would talk about my ideal projects, show them high level how I would go about implementing my idea, challenges I face (and also why I have to build one; are there any existing solution and are they not adequate). Take caution of your words - know the things you say aloud.

Somewhere in those 4-6 interviews, add a programming sessions if you haven't done so (for me I skip that and went to onsite because of internal referral).

I didn't get an offer probably because I didn't quite know what I really want to build. My idea was too generic and probably too "child play." It was a really intense and yet fun interview. This interview process allows interviewer and interviewee to see if they are a match or not quickly and pleasantly. I always look back at this interview and believe that the rejection is just and great for me and for the team. I wasn't a match and I won't be a match any time soon. I am still exploring techniques, interests and ideas.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: