Hacker News new | ask | show | jobs
by conjecTech 1459 days ago
I'll voice an unpopular position: There are positions where you use all of these skills regularly (data structures, algorithms, system design), and they are some of the most satisfying, respected, and well-paying in tech. They are also uncommon.

For context: I've done 3-4 full job searches ranging from new grad to Staff+ that included FAANG companies, and received offers each time from some but not all of them. I've been fortunate to have other offers I preferred each time, though until recently this has meant accepting compensation below FAANG-levels.

One of the primary reasons I haven't taken a FAANG offer is because of the over-scoped nature of most of the work they offer. The positions at these companies often involve squeezing more profit out of existing successful business surfaces by fiddling with the knobs. If you're working on a surface that produces $10M in revenue each year, and you can improve it by 10% each year, you can justify a good wage. That kind of straightforward investment is exactly what middle managers like.

However, jobs like that will seldom see you architecting or changing systems at a sufficient scale where these skills become relevant. There are undoubtedly exceptions at these companies. I'm not making a universal statement. But having watched the careers of people smarter than myself both inside and outside of FAANG, I've seen a considerable gap emerge in the technical abilities and accomplishments in favor of those at leaner companies.

I think this explains the experience of most engineers going through this. To be Jeff Dean, you need all of these skills. Because of this, OG engineers like him made it part of the recruiting rubric. But you are unlikely to become Jeff Dean by joining Google now. If that is your goal, my advice is to seek out companies with the highest ratio of users to engineers. A value of 1e6/1 is a good target. These places probably look like dumpster fires because of their scaling problems. But they need these skills and have no alternative than to let you work on the problems that require them. Make sure there are a couple of people there who have done it before that you can learn from and hold on for as long as you can.