Hacker News new | ask | show | jobs
I got multiple FAANG offers in Europe (blog.goncharov.page)
62 points by Sandeepg33k 1758 days ago
12 comments

> The first week of February went by. I sent, probably, several hundred applications. My rough estimate is 400. And... nothing.

Getting a job is a function of: Quantity_of_applications * Quality_of_applications.

I have been somewhat successful in securing positions in the past 10 years or so of my career, including a relocation. And when some friends/associates ask me how I did it, and I offer to mentor them, they are not willing to put the time that it takes to research positions, and apply with tweaked "marketing material"; so eventually they give up, some not even try.

Looking for a job is a full time job, and if you're doing while employed, it means you're working 2 jobs.

"Lived happily ever after." => let's wait for his blog posts in ~3 years and check back on him
Here I am, writing B2C applications, wondering, why after 8 years of professional programming, I never encountered the need for a "heap".

Then I looked it up, read about it, and realized that I'm using it without naming it. I know it by the name of the special class I'm using in my language.

I wonder if I would fail miserably in an interview, or if it just depends on the questions that are being asked in the domain I'm working in. Or maybe I'm just not FAANG.

"Heap" has at least two meanings.

Often when asked about "the heap", it's in the context of heap versus stack. "What's the difference between a heap-allocated object versus a stack-allocated object", or "what's the diffence between the heap and the stack"?

That sometimes comes up in early phone screen interviews.

Some languages don't have that distinction: Everything is heap-allocated. So it's understandable how you could work without encountering the difference in some environments. But many of the commonly used "big" languages make the distinction, and if you've been working professionally for 8 years, interviewers who ask about it will take into account if you know the difference. Especially if the job is in a language where it matters.

(If you're looking at working with any of the async-await-patterned languages, you might be asked a trickier question about how does async change heap vs stack allocation.)

As a sibling comment points out, "a heap" is used in a second way, to mean a heap data structure, which is one of many ways to implement a priority queue data structure. Realistically, this rarely comes up in real life except that you might use an efficient priority queue without caring how it's implemented. In interviews, it might be asked about to assess the depth of your CS or performance knowledge. The same way they may ask about other basic data structures like balanced binary trees, linked lists, etc. Heaps are among the simplest "CS-ish" data structures. Even if you're not that interested in CS, I'd say it's worth reading what heaps are and how they work, even if you never implement one.

Yeah - I was aware of the "heap" as in "stack vs heap". Though I could not explain, without looking it up, what the difference is between values being put on the stack or the heap.

Now, of course, after reading about it in the linked article, I looked it up and now I have an understanding of it.

But I wonder how much this will be taken into account during an interview. I could, from the technology I'm working with, explain what the pitfalls of an async/await-pattern are, or what the difference between the logical and the visual tree in WPF is.

I wonder if you loose some knowledge on the way while working in a certain domain for a long time, and if that's a bad thing per se.

I remember this was one of the first things they teach you in Java but in web world eg. react do you even think about that stuff... Unless you see call stack exceeded.

That's why part of me does not consider myself a programmer since I'm just building out applications/basic server admin but I'm not worrying about nLogN or memory management. Unless something is really just blatantly bad/noticable lag/bad performance. I only recently started to learn about BST but personally have not had to use it yet.

> That's why part of me does not consider myself a programmer since I'm just building out applications/basic server admin but I'm not worrying about nLogN or memory management. Unless something is really just blatantly bad/noticable lag/bad performance. I only recently started to learn about BST but personally have not had to use it yet.

There’s a comment I found from a few years back[0] that touches on something related. There are some oversimplifications in the latter part refuted and expanded on in the replies, but the general idea struck me as probably mostly correct.

At this point I’d kill to just get out of the industry entirely, but there’s no desirable path out.

[0]https://news.ycombinator.com/item?id=12079697

You're focused on delivering solutions. I've been programming for 35 years now and I know all this fancy-schmancy CS stuff - have a degree in CS and mathematics to go along with it - and you know how often I need to worry about this? Especially these days? Hardly ever. So don't worry about not considering yourself to be a programmer.

Build solutions, delight your customers, and call it a day.

Yeah I mean I still get paid/can't complain. I just feel concerned when people rattle off these algorithms and what not and I don't use it day to day... maybe it's FOMO.
Yeah I'm definitely currently in group 1, I'm working towards 2 regarding robotics/vision but I also am aware that I am not good at math even if I try. At the very least I can take part in group 2 as a hobby.

I also wonder to what extent can you consider yourself good/bad regarding resourcefulness/desire/aptitude to learn. If you took a developer and had them learn Post/ghostscript while having not worked with printers before, how quickly should they be able to learn it? That's a thing I'm dealing with now, it's not as easy as just pulling a popular library from GitHub and plugging it in.

[0] really resonates with my "feeling" about it. Thanks for the link!

Although I wonder if I would want to get out of the industry. While I admire the works of Torvalds and Bellard, and every once in a while dip my toe into low-level works, I feel happy about end-user feedback and making someone's life easier by providing a useable UI to a dataset.

I used to read a lot of programming books in my early 20s, but experience taught me that everything I don't use on a daily (or at least weekly) basis will end up forgotten in no time. So now I'm just trying to work diligently and integrate stuff that offers immediate benefits. Of course, there are certain situations where, say, mad complex analysis skills would have meant shipping a significantly better product. But hey, perhaps those jumps aren't for me to make.

Individuals who learned data structures and algorithms in university 20 years ago and can recall 95% of it do exist, but there's far less of them than most people think. There's no real progress without keeping your personality and your situation in mind.

Yeah, that's what I also experience. Some kind of "erosion of knowledge" is happening over time - and I wonder if that makes me a "bad developer" if I don't actively fight against that.

Sometimes I think I should be able to come up with a sort algorithm from my mind, for instance - but I would have to look up how quicksort is working. I know that something like quicksort or bubblesort exist, but I couldn't tell you how the algorithm behind it works.

This happened to me many years ago when I was a teen and working on personal projects, but even worse. I forgot exactly what it was (something in C#), but it was something as fundamental as classes, I wondered if I'd ever need them, looked it up, turned out I was already using them.

On interviews, I have the same fear as you. I know very little on the theory side of things (and don't have much of an interest to either), but I can get the job done. Maybe I should read up on the theory a bit more, or maybe I will another day ;)

Heap has multiple meanings. For example it could mean the datastructure typically used in priority queues.
Anyone else a bit surprised by the shotgun-like application approach? I have learned from past mistakes to only apply for companies in which I think I will be happy doing what they do. I can't fathom applying to 400 different companies (but then again I also can't see myself wanting to work at FAANG)
> I have learned from past mistakes to only apply for companies in which I think I will be happy doing what they do.

Every time I go to start a job search this is what I tell myself I’m going to do this time around. That quickly goes out the window as soon as I’m rejected from most of those roles though.

For webdev stuff I often see people say "I applied to hundreds heard back from 3" makes me wonder are you a bad applicant or too much supply.
From what I've seen there's a surplus of applications and shortage of talent today.
No, I'm not surprised by this shotgun approach. Especially if money is a strong incentive. I think it is pretty much common these days.

I'm surprised, however, about the willigness to relocate in general for high paying jobs (from friends working at faangs / hn comments).

While the top 20% at FANG's probably do interesting stuff I think most of the people there don't do terribly interesting stuff. If you have to game the hiring process I don't think you'll expect to be in that 20% with the interesting work?

So what is it with people wanting to work so badly for large / FANG companies? The money and perks?

The author is quite explicit in their post:

"A natural question here is why only publicly trading companies? First, I had already tried working for small and medium-sized businesses, wanted to try what it feels like to work for a proper corporation at a proper corporation-sized scale

"Second, I figured that a FAANG entry on my resume would act as a quality stamp, opening many doors in the future.

"Third, I hoped that a rigorous hiring procedure would help to concentrate true talent inside of the company. When you are surrounded by people willing to methodically take a VM apart piece by piece just to figure out why one operation works 5% faster than the other one, it, kind of, becomes a new norm for you, don't you think?

"At least, it is a heck of a story to tell at a conference.

"Forth, I figured that larger companies would be less afraid to relocate candidates.

"Last, my wife is about to start her Master's, and FAANG pays pretty darn well."

I think I must be of some kind of previous generation where I still think of Google et al as the anti-corporation. My time at "Corporate™" companies involved neck ties, shirts, shoes I had to polish, and trousers with creases ironed into them.

There were densely packed cubicles, the walls of which dotted with calendars, SLAs, corporate branded motivational posters, and poorly taken baby photos used as a reminder of why you continued to turn up to this droll.

Endless .. and I really mean endless .. middle management beuracracy meetings, interspersed with yuppy salesman/managers (hard to tell the difference) comparing their weekend adventures at the golf course, referring to you for pointed but logically flawed questions about the possibilities of technology, gasping at your lack of enthusiasm to work the weekend.

Canteen food that wasn't fit for prison, but still cost you twice as much as home made.

Filing form after form. Sometimes a form to request a form (no really, this happened.)

Then came this hip new company that had pool tables in the office, open spaces and plants to help relax the employees - how on earth would they ever get anything done these yuppies scoffed inbetween sharing pictures of their latest company car amongst one another.

Wait.. they let their engineers lead projects? What do the project managers do, then? THEY DON'T HAVE ANY?!!

(I'd like to add I'm really not making any of this up. My years at EDS, Xerox, several large UK banks, and some would-be-giant-corporation companies was just like what you saw in Office Space.)

These are all the very same reasons why MBAs and B-school grads work for the "Big 4" Consultancies (Deloitte, EY, KPMG, Accenture). They work there a few years for "Resume fodder", all the while being ground down with 80+ work week hours, not working on anything particularly enjoyable, and learning primarily how the Big 4 Work and not really how the industry works.

There are other comparisons between the inner workings of the FAANG and Big 4, but I'll leave that for those in FAANG to make the comparisons.

Focusing on the technical side (ie. ignoring salary etc.), there are a couple of significant aspects I find attractive:

- working on high scale projects

- working with highly skilled peers

They're relatively unique, in the sense that they can be found in other companies for sure; but at FAANG they're pretty much guaranteed.

Working on an uninteresting task at high scale is, I think, an experience worth having, profession-wise.

They seem to believe they would be doing interesting work and yeah money and perks.

And working in faang has also become something of a status symbol, maybe that's what comes with money and perks

It's a lot of money. A lot of it, and usually great benefits and a flexible schedule. You also typically get to live in a very desirable place.
But in Europe they barely pay more than a lot of medium-sized companies.
The perks and benefits are usually considerably better, which IMO is a much bigger factor than the base salary.
That is not my experience in Germany. Maybe for base salaries; but not for total compensation.
at levels.fyi Amazon Germany starts at 66.000€ total. L4 at 87000€ with 2/3years of experience. Imagine sending out 400 resumes, spending months on leetcode, multiple days for interviews and then getting an offer for 66.000€. Edit: it's probably still worth it for getting the compoany name in your resume.
The author lives in Nowhere, Russia; the chance to move to Europe is probably added attractiveness, once he's there it's easier to move jobs.
Sure, for a graduate position, targeting someone out of Uni; there are not many of those in Germany for €66k outside of FAANG (although I'm sure they exist). And that is unlikely to be what the OP was offered from Amazon (they said "mid-level"; probably SDE-II).

And for what it's worth; my search led to an average of €76k ($90k) for SDE-I in Germany: https://www.levels.fyi/company/Amazon/salaries/Software-Engi...

Have you recently checked fb/google europe TCs? for L5 it's 250k£+
IIRC L5 in those companies is equivalent to L7 in Amazon though no? Like Staff Engineer basically.
Which medium sized companies? I haven’t seen any that get even close.
Schibsted, TypeForm, I'm sure there are many others too.
I'm currently sat on 2 strong offers in the UK, and think I'm in a favorable position to receive a third. The market is hot right now.

I know it's an exceptionally privileged position to be in, but trying to make the right decision for my future, particularly when it affects my partner as well, is really stressful.

Interviews vary wildly. Some are pure HackerRank grinds, others are more conversational and want to assess how rounded or seasoned I am as a developer. Some had a focus on algorithms and data structures, others were purely coding, debugging and thought process focused.

One started with a 2.5 hour homework as a timed HackerRank test, before any human contact, and was followed by 6 hours of further technical assessment. I took holiday off my current job to take these interviews, and WFH has helped me "bunk off" and do them.

The only advise I can offer to others is this: work with _only_ the best recruiters you can find, and leverage your personal connections and word of mouth. If your recruiter isn't introducing you to companies you've never heard of, or getting you interviews, ditch them.

Is finding a good recruiter easier than finding a good position?
The easiest way is to find someone you know and trust who switched jobs, preferably in an impression fashion, and then ask them to refer you to their recruiter.

My current recruiter:

- Checks in with me every day, unprompted.

- Calls me after (and sometimes before) every interview.

- Schedules interviews appropriately so I'm not overwhelmed.

- Respectfully tells companies who aren't moving fast enough to get lost (He did this with several companies once I had my first offer, only entertaining companies that promise an expedited or accelerated interview process so that I can make an informed decision).

- Gives me his honest opinion on offers I received from direct applications or via other recruiters, even when they're favorable and it's not in his best interest for me to accept. He's used these as leverage on my behalf.

- Has contacted me at weekends and bank holidays so I'm not left hanging.

If anyone in London wants a good "C++ in the financial sector" recruiter. Let me know.

This post makes it seem like what counts in an interview at a big company is to give the "right" answer, not showing your reasoning process or applying your skills. Is it really like that?
Yes. Interview is a theater. You must cut your hair, dress accordingly and give the right answers.
"It depends".

When I'm running an interview for a coding test, I absolutely don't care about your answers as long as you show a proper reasonning with strong arguments. However, if you take 25 minutes to write a loop that count letters, that's going to be a reject.

> Tip #7. It is OK to use the same story for all your interviews. Usually, a good life story covers several leadership principles they want to hear.

I strongly advise against this, especially for Amazon.

We read each other's notes in the debrief. If we all see the same story, questions arise about experience. Have some variety. If you think the same story will answer all questions, it had better be one hell of a story.

Often the interviewers ask variations of the same question. Variations of "What's your weak spot?", "Tell me about an example where you coached someone", "Walk me through an ethical dilemma you've had", "Why do you want to work here" and so on. Seems unfair to penalize for "same story" when there's "same question".
These aren’t examples of questions you’ll get in the Amazon interview process. It’s also 4-8hrs of interviews just for the final loop. So you’ll get some overlap, but also literally hours of other topics. If hours of conversation are anchored to the same single event it’s unlikely to reflect well.
I wonder if anyone's ever tracked the eventual career trajectory for candidates they hired versus ones they rejected in interviews. This process sounds like it selects for people comfortable with the somewhat rare skillset of sweating hours of face-to-face quizzing without breaking.
I think a better comparison would be how much effort a candidate puts into finding a better job.

People willing to grind leetcode, send out 400+ resumes, doing a lot of interviews will probably have a better career than the one's who don't.

For a very narrow definition of "better career" maybe. I concede that it might result in more wealth.
5 hours max these days unless it's for a very senior role.

Every interviewer has a leadership principal or two they need to get data points about. And there's a database of questions to ask that help specifically learn about that LP.

And it all has to fit inside the same hour as a technical question.

Yea Amazon cares about how you work when doing the interviews and not just your technical ability. A lack of clear evidence demonstrating those inter-personal skills will be no hire. It’s really unlikely a single story will provide enough evidence demonstrating those skills so it’s really an unnecessary way to handicap yourself.
Harrowing stuff.

I note he interviewed to a wider range of companies than just FAANGs (Booking, Databricks, etc), but ended up getting offers only from Amazon, Facebook, and Google. With no disrespect to Andrey, does that suggest they're actually easier to get into than the rest of the pack?

He was better prepared for Facebook and Google because he explicitly did the LeetCode algo puzzles that are for their companies. Also, he interviewed these companies last because he used the other interviews as "training" steps. Also, he had multiple interviews at amazon (and failed his first one at Amazon Munich). So, to sum up: No, it's not easier to get into FAANG than elsewhere.
>The first week of February went by. I sent, probably, several hundred applications. My rough estimate is 400.

what.

400 applications?! I've heard about people on cscareerquestions sending hundreds of CVs, but this is insane!

> 400 applications?! I've heard about people on cscareerquestions sending hundreds of CVs, but this is insane!

Yep, looks like "resume spam". No wonder recruiters do not read submitted resumes anymore. Kind of DoS attack :-)

I've heard multiple times of the hiring practice of "throw to garbage bin every resume without past stint at GFA" from a few of my friends.

Most of them worked companies like banks, and other big name non-tech companies.

The number of people with past experience in big dotcoms now is big enough that any mid-sized company can expect to get a few resumes from such for each position.

It's very obvious a sign of risk averse, and lazy recruiters, but what you can do? No doubt, it works for them, professionally.

It makes me think whether chasing a big dotcom name onto the resume, at any cost, and regardless of the merit of position worth it from the job security standpoint.

A dotcom name on the resume really opens you a lot of doors, you will not get yourself in otherwise. A stone cold truth.

One way to look at it from the FANG PoV: we don't know how good engineers they are but at least we know they can handle leetcode grind and they are most likely young (i.e. had a desperation and willingness to allocate time for leetcode preps) - so we throw them 500K total comps and hope to retrain/FANG-ify them. I don't think many small/mid-sized shops can afford this.
The article is about Europe. My total comp as an L5 at Amazon was about $75k, maybe up to $90k if you count the slowly vesting RSUs.
May I ask which country? This seems very low.
Not OP, but Amsterdam based faangs/unicorns don't pay as much. I'm willing to grind leetcode, but I can't really find any companies in the Netherlands that are worthwhile (that pay significantly better than mid-size companies).
Databricks in Amsterdam pay around 140k EUR.
That was in Spain, but it's pretty similar everywhere. It's tough to break $100k in any sort of non-staff engineer/management role.
Facebook in London pays GBP 300K-500K+ though.
I (London residing) find that quite hard to believe.

Unless you mean TC which includes share-options "valued at" £200K+ (but likely will barely get £50k when vested after 5 years of active tenure.)

A good salary for principal engineers in London is upto £120k, but can be from half that. There are exceptional cases of higher. Highest I have personal confirmation of is £150k (a friend.)

Across all of engineering, the mean average salary at Google is £66k according to glassdoor, and that's known to be embellished.

>share-options "valued at" £200K+ (but likely will barely get £50k when vested after 5 years of active tenure.)

This is a dangerous misconception to have. You may not want to work at FAANG which is fine. Otherwise don't shoot yourself in the foot by misunderstanding pay structure.

Public companies such as FB pay in liquid stock, that vests over some period of time. These are not options. You get 200K every year, immediately sellable. Or keep them and grow. Which given the performance over last two years would actually give you close to 400, not 50.

Glassdoor says 86-110k GBP. Which is still pretty good for Europe.
Look at levels.fyi, the highest paid E7 is around 250k GBP TC (i.e. base + bonus + shares) and there is one IC6 with 350k GBP TC. But basic devs are in the Glassdoor range, while London is as expensive as SFBA with a much worse weather. Basically a dead-end, like the whole EU right now (technologically finished without a single competitive company after the fall of Nokia).
...to managers
I’m not sure if you realized this while typing it, but you may wish to reconsider that acronym.
Ok I got nothing.. I assume you are referring to GFA - what evil organisation could it be mistaken for? I could only get results for Global Furniture Alliance, Ghana Football Association, (The) Good Friday Agreement, and Gospel For Asia, and many other orgs that don't seem to be controversial enough to warrant a warning.

The tension is too much to bear, please enlighten me :)

The original acronym included Facebook, Apple (presumably), and Google, in that order.
That makes a lot more sense now :)
Do we really have to fell that low on HN to obsess over the slang of weird internet boards? Edited that.
It's funny, anything I read about the hiring process of FAANG companies makes me not want to work there.
The most unappealing to me is that supposedly you don’t even really know what role you’re being hired for and they choose a team for you afterwards? At least that’s what I’ve heard. No way I’d go through all the bullshit for a dice roll.