Everything is fair game here, whether it was the process, the setting, the people, the format, a particular question that was asked or anything else that made this interview stand out to you in a positive manner. It doesn't have to be limited to getting a job in tech either.
First round, I had to do 2 coding questions in an hour, 30 mins for each question. I had to go to their campus. They would give me a laptop/environment of my choice and then time starts. Questions were very easy, so the expectation was reasonable.
Second round on On-site was two interviews: Director of engineering asked me why certain piece of C code was behaving in a certain way. I could not answer, but we compiled the code into Assembly and tried to understand the behavior. An hour later, the CTO of the company, Ken Duda, walked in and he asked me an Object Oriented question and some of my past projects. Really drilled me. He gave very simple design of same projects. Very educative and amazed to see a brilliant mind at work. The interview was in no way condescending.
They took a decision right there and it was a no hire. But I loved the experience. It was no BS interview.
It all felt comfortable and not "quizzy". I didn't get the job, but I got back a lot of very specific and encouraging feedback that really inspired me in my career, and I will be forever grateful.
My takeaway was, treat candidates as people that deserve respect and time, rather than churning through them.
Then I got put on a crash course of Solaris and vim (with the mentorship of a literal UNIX greybeard) and sent fixing bugs at customers' sites. One month later another young colleague and I were sent to teach the basics of Linux networking to a class of enlisted recruits in the Italian Army. Quite the experience, and highly reckless strategy for a consulting company, but you tend to learn pretty quickly if you're eager to.
The hoops I gotta go through 16 years later to get a consulting gig are just ridiculous.
First, the interviewer was very supportive and cooperative, it felt almost like a friendly talk between two colleagues. He did not try to outsmart me or catch on some tricky detail.
Also, the questions were very good - we discussed how to build a distributed data processing system, a very relevant and on the right level for the position I applied (Engineering Manager).
It was all very high stress with questions and answers going back and forth. There was a long pause which was broken by one of the engineers asking: "Do you drink beer?"
I didn't get the job.
A lot of software engineering is finding the simple solution in what looks like a hard problem, and I thought their questions simulated that well.
Their design questions were pretty standard but it was a good back and forth conversation, not an interrogation. It seems clear that google gives everyone at least some training on how to conduct good interviews.
Facebook for a data science role. Professional, relevant, fun. Edit: this was 2017, Menlo Park.
They evaluated multiple skills, from relevant behavioral type questions, to relevant technical questions.
Interviewers were engaged, smart, never arrogant, and I recall them asking questions about my resume that no one else asked about.
The feedback for not extending an offer was fair, and I think I even agreed with it actually.
And they were the only ones who gave me swag - and it was cool swag.
Looking back, it was one of the most professional experiences in my life. I will add, such experiences are not typical.
"They asked me to bring in a code sample, we discussed what it did and various details around it, then he showed me an actual class in their codebase (printed out), asked me to explain figure out and explain everything it did, and there was also a couple mistakes included in the code for me to find as well. The guy also asked me a few relatively simple technical questions, then said "Okay I know you can handle the job, let's see what you really know," asked me some really difficult questions, when I said "I don't know" to some he actually spent a few minutes teaching me the concepts.
That same guy was the lead programmer on some famous arcade games, btw. Did a lot of assembly programming back in the day. He had serious technical chops.
Got a job offer the next day. 1 interview, 1 interviewer, a little over 30 minutes spent.
Best interview experience I ever had. If more interviews were like that I wouldn't feel dread every time I felt the urge to switch jobs."
Then they gave me an assignment to build a particle system. They provided a rendering framework and then I wrote the code to generate the particles. It was so much fun that I spent a lot of time on it. The follow-up was a panel with four engineers and we just went over my particle system code where they asked me about my reasoning for certain design choices, possible edge cases, etc.
It was all very positive and I got the job.
I much prefer the code review style of interview because I'm not good at writing code or problem solving while someone is watching. I've never been offered a job that had any sort of coding/whiteboarding component. My brain often presents novel solutions to complex problems at 2AM after I've slept on it, or during a walk around the block, and that sort of thinking isn't exemplified well in many technical interview scenarios. Talking about code I've already written is much closer.
No leetcode, no whiteboarding, no nonsense. Just a 5 minute recruiter screen, and then two nice ~90 minutes each conversations about the technologies I've used, projects I've contributed to, opinions/approaches, asking me to explain how the stuff I use actually works, etc.
Ended up not working out due to a hiring freeze, but their interviews were refreshing, and I think they got all the information they needed without having to do any of the usual annoying stuff.
Although it feels kind of rigid, I appreciate structured questions. I've heard that you should keep the format objective and ask things in the exact same way in order to avoid subjectivity. So when I interview others, I usually have around 8 very structured questions that I ask and then it goes onto the actual coding part. It makes it easier and more fair to compare later. Of course end of the day, apparently nobody can pick performers from an interview as proved by google so maybe it's all just to make ourselves feel better
Any job that doesn't ghost you and even better, give you a specific break down of what you could improve on. I remember doing a takehome where the prompt said there would be a leaderboard and was written with a peppy fun attitude to sell the competition. I got really excited to see how I did compared to others and they just never replied back.
The typical process in Sweden is to just talk with the HM about a past project or your experience, no leetcode, no bs. Then you have another call with HR when they tell you if you got the job or not.
Typical process in US: Intro call with recruiter: 30 minutes
Technical screening: 3-4h, design questions and leetcode
HM interview: Asks you to walk them through your resume one more time, asks behavioural questions like, "Tell me about a time you had an disagreement with a collegue".
Followup call with recruiter: They will inform you that they are working on an offer
Offer call: You got the job!
No wonder it's hard to find good developers in the US, who got the time to go through a process like this unless you are unemployed?
They say startups should hire those with flaws who can otherwise do the job since startups can't compete with big tech on pay. Between the mobile device apps I made for them, the database optimizations which saved them a fortune in aws rds fees, moving them off a $100k/year image/video processing service to an aws scaled jobs service that cost a fraction of that I think I did a pretty good job.
The lesson here is probably one for the interviewers. You may be looking for red flags that allow you to rule someone right out. You might want someone that's followed the same path you did and has the same bubble of knowledge. But you're going to miss a chance at a new perspective. That's also the risk with a formal interview process in general. All those who pass will have a similar set of traits. Maybe that's desired but maybe it's also a negative.
Having said all of that shortly after that startup job I moved into big tech where I've been ever since (albeit in different big tech roles - I have a personal goal to work at all the FAANG for at least a few years). I have no trouble with the big tech interviews, yes they take at least a week of solid study beforehand which is a pain but there's no issue getting through them if you're willing to do that. I still think the informal coffee chat interview allows for more diverse hiring though.
Didn’t care if they’d hire me or not, that interview was a free lesson.
- technical questions were all async via email and the application
- typical interview questions were mostly async via email
- all interviews were culture fit
- I was informed of deadlines and next step at every step of the way
- The interviews were conversations
- quick call with CTO for screening (10 min)
- technical interview live with CTO and coworker, not hard, just some questions about tech I've used (nothing on what they use that I didn't know about, except maybe "do you know X ?" "no" "ok fine")
- technical homework, again only on stuff I know (you can skip what you don't know), maximum 3h and if you only want to do 1h you can and they'll judge you on that basis (I did the full 3h)
- culture fit interview with the customer success then the CEO (30 min each)
First conversation with the recruiter was very straightforward and included salary ranges from the very start.
First round was coding with real life examples for data structures/algorithms, frontend and backend/SQL
next conversation was with PMs where I got the learn more about the product and company culture.
Next was an offer.
I was interviewing with two other companies at the time but OpenComp blew them out of the water with how straightforward they were.
I am not a developer but had to do a code assessment and the interviewer was very patient with my pseudo code and likely novice algorithms.
In the end I didn’t get an offer but everyone was great and learning about the work they had done as well the job I was interviewing for was a lot of fun
Very practical interviews all the way through. No one even mentioned linked lists/binary trees.