Big Company vs. Startup Work and Compensation
danluu.com
danluu.com
There are a lot of brilliant hyper-competitive people who work at these big companies and you will be a small fish. So I think this article is spreading a myth that there is guaranteed piles of money to be made by working at Google, Facebook, Apple, etc.
Or, maybe I am doing something wrong here and am underpaid...
Remember: it's not year 5 of your career. It's year 5 of your tenure at one company. It's a little unusual for people to stay longer than 4 years at most companies.
Is 200k median salary, or an outlier for the top senior engineer there?
More than 10 years ago, my in-the-door offer as one member of a team of 5-6 senior developers at an east coast tech firm was higher than $200k.
Fair point. The Top engineer at each of those companies is making more than $200k.
Edited for clarity.
The "outlier for top engineers" at the above companies are in the $500k+ range. I'm being entirely serious.
Not that it's so far fetched that big Valley firms are paying over $200k base salary, but if it was so prevalent, I'd expect to see more concrete evidence to support that.
be more indicative than asking a person first hand what they make? I don't think saying 'personally confront friends/workers at said companies about salaries' is anymore reliable than anonymously submitted.
The claims I'm interested in regard Base salary.
I should note that I didn't get to the in-person interview, and that was because salary negotiations start beforehand. I did my research afterwards, and everything I found seemed to point towards cheapness.
I'm a natural (coding since 3rd grade), out of college for 6 years, and I've only known 1 engineer in my career who made over 200k. Now if by BigCo you mean Facebook, Google, Apple, Amazon, then I don't know them, so I can't comment.
But if by BigCo you mean IBM, Cisco, Intel, etc then I can guarantee you that I don't know a single person making 250k, and glassdoor generally corroborates (if you google STAFF (> senior) software engineer in SF for IBM your average is 132 base in SF)
That said, in those cities they are far from absurd. I started out similar to you (coding since elementary school) and now live in NYC ~3.5 years out of college. Off the top of my head, I could name half a dozen developers making seven figures, and at least 100 making over $200k.
I'm shocked you know the salaries of 100 other developers. Care to share some of the companies that are paying this much to developers 3.5 years out of college? I'd love to corroborate on glassdoor.
I recently turned down an offer from Google for $270k total comp, so they're definitely one of the high-paying companies. I know Facebook pays similarly well, but have no interest in working there. Being in NYC, though, the highest paying are mostly in finance.
I've found Glassdoor to run very low for higher-paying positions, though. Their numbers are all salary as far as I can tell, while a large portion of compensation is in RSUs and bonuses (40%-90% at compensation levels of $250k and up).
If you answered yes to all three, yes, you are probably underpaid. That doesn't mean you're doing something wrong if you love your job, but know that you could earn more.
...on the West Coast or Northeast, sure. It's my understanding that $250k is a little high for other cities, unfortunately. Hopefully the corporate culture there catches up.
Otherwise, a lot of engineers are getting used to living off of some sort of bubble.
Lead, architect, principal... they may not hang up but I would expect a double take and a "let's be realistic."
I'm not sure why your comment is grey; it's spot on, although it's not likely a sentiment that HN folks are fond of.
On the other hand, your second paragraph is exactly true in my case. But still...
No, they don't pay anything close to that. Actually, AFAIK, in Dublin the salary that Google pays for developers is on the low side of the scale (they offset that, in part, with all the benefits like free food and the rest).
Salaries do go quite up a while but statistics on the corporate ladder are stacked firmly against immigrants, the higher you go the less chance you have to find non local people.
With soft career ceiling and continuous influx of people salaries are driven down. You can still make a fine living, but nothing compared to the colleagues on the other side of the ocean.
Getting $250K is certainly doable in bank, but it does not follow a specific career plan. I have known senior system tester making 150K GBP and for the same job and responsibilities another was making 50K GBP. Doing it in 5 years out of school is difficult in tech.
It is doable without too much trouble in finance in trading, m&a, ... the trick is that you need to survive which require more luck than skills.
Overall though, in the 4.5 million workers in London, only 120K make between 100K GBP and 200K GBP, and 60K that make more than that.
From my experience, say, the North Carolina scene, you're lucky if you are going to get $120-ish with ten years of experience. There's some give or take, but includes large companies and banks. You can do a little better at something like a Cisco if you are willing to trade quality of work. Most big companies as well as startups are paying new grads somewhere in the low-high 60s or maybe 50s depending on where. I don't have hard data, but it's no where near $130k.
Data from cost of living comparison sites that some companies use indicates that these companies hiring someone in the bay area may pay those people 20% more for cost of living at most.
Startups pay substantially less on average, with senior level personnel getting around $100k, maybe $120k if you're excellent and the startup is well funded - but this is 10 years of experience kind of stuff. I have unfortunately had to turn down some great folks because they wanted north of that - and they were worth it. I've also seen companies where their maximum pay tier tops out at 135 for what amounts to principle engineer level positions. (I'd assume a fellow at IBM would do better, but they are uncommon and few have a chance of surviving the machine to get there).
Conversely, really senior level software development positions at basically-exit-ready startups in CA aren't going to be much better than 40-50% better than the above. Some of these can be obtained remotely - sometimes.
What the article states as common for Google and Facebook are absolutely not the norm, and I'm not really sure how achievable that is for most people even there.
It's great if Google/Facebook can allow to pay people that, definitely. I just wouldn't say it's even remotely common and does not translate.
I've heard some ancedotal completely crazy numbers from hedge funds that most people would hate working for elsewhere, but nothing nearing the numbers in this article.
I don't really have hard data on the New York software scene or Texas, but .. again, this isn't normal. HN may be more of a microcosm than expected if most people do feel this is normal.
To put it in perspective, this is still amazingly high compared to a lot of other positions and you'd still have it really good.
This is just untrue. I haven't looked closely at Facebook recently (beyond watching the [office in Seattle](http://www.geekwire.com/2015/sneak-peek-facebook-plans-epic-...) grow quickly) but traditionally Google has had ~50% eng in MTV and the rest spread out. NY is the second largest office but Seattle and Bangalore are pretty big. Seattle (and Kirkland) are now at ~2000 people (https://twitter.com/juberti/status/675022362438316032).
I have had lots of experience with Google and Amazon recruiters where CA was the only viable option. Google also tended to have a bad habit of offering SRE positions for datacenters in the sticks, but that was not a development-flavored SRE thing in the least. They pretty much close the door on you if you don't want to move and are dropping the ball on some pretty awesome development centers IMHO.
Facebook is often avoided by some very sharp kernel (and other) folks, because they greatly insist on a boot camp and can't guarantee what department you are going to work for. They lost some brilliant folks as a result. I wouldn't work for them for that reason, as I think the team and the manager are the most important parts of the hiring decision.
Yes, Google has other offices, but they are not hiring people in some pretty darn major development regions. There is allegeldy an office in Chapel Hill for instance, but it seems to be on the edge of being decomissioned and no recruiter will tell you anything about it.
So, yeah, it's not quite like you can just work anywhere.
That sounds better than Google's "work on what we tell you to" approach.
I don't know how much preference you can have.
As such, I think it's possibly very similar, though I thought with Google you did get to apply for specific groups.
I know from recruiter spam that $260K seems to be on the high end, with only the top firms mentioned paying close to that. I have friends that dwarf what I make, but they had good stock options at companies that made it to IPO. Definitely don't regret leaving NC.
I'd love to know what someone mildly famous like Mbstock, Rich Hickey, etc would make. I am a nobody and have done what I consider well.
So to make it concrete, a new hire at a particular grade might have gotten $120k in SF or $105k in Little Rock (base). Considering the high taxes and housing costs in SF, the new hire in Little Rock would have had a much higher standard of living.
Of course, working at a non-HQ site is a major career-limiter, so 10 years down the road you might have been better off relocating anyway. Depends on where you are in life and what you want to achieve.
By contrast, non-US salaries are dramatically lower independent of the cost of living at a particular location. So if you're working for a US BigCo outside the US, you had better be in Chiang Mai or Belize, not Berlin or Hong Kong. As the author of this post notes, no one seems to know why this is so, only that it is.
I know only numbers from germany and somebig corporations here. Apart from management you would here be very unlikely to even hit 100k (neither $ nor €).
Not salary.
The author's core point is that you are much more likely to become a senior engineer at a large company (and thus earn ~$250k in salary) than you are to hit the jackpot at a startup.
If you were to take the set of people who achieve senior tier (or comparable) at large tech companies and the set of people who earn at least $250k as a lump sum payout for working at a successful startup, you'd find that the former group is vastly larger than the latter.
If you were to do the same exercise and replace the second group with folks who actually got "rich" (for any reasonable definition) working for a startup, you'd find that it would not even be visible as a pixel next to the former group.
Statistically, you are simply better off trying to hit senior at large tech company if you want to optimize your career for wealth. This is so doable within five years that at large companies like Google and Microsoft you are expected to hit senior level, and if you don't it begins to reflect badly on your record. More explicitly, "senior" is the last level that everyone is expected to hit, and at which you are "allowed" to not seek further promotions.
If, if, if, if. Just by numbers, most devs don't meet these criteria. And even in the periods of time which I personally have, I still was not making anywhere near this kind of money.
These numbers are inflated and out of reach to the vast majority of developers in the workplace today, full stop.
I will reiterate - you are more likely to reach $250k working at a large company than you are to earn it (in salary or lump sum) at a startup.
This has been corroborated by numerous individual's experience in this thread, including my own. I personally interact with companies that pay this on a weekly basis.
Show me the companies in Columbus, OH that pay that way. Or Milwaukee, WI. Or or or.
(It should be noted that I completely agree with the article's conclusion. I've come to feel that the EV of buying a startup lottery ticket is woefully lower than pg, sama or [insert vc/angel here] assert. If you can land a solid and interesting bigco job, that's probably your best bet.)
i.e Say there are two groups of 100 engineers of equal average ability. One goes into megacorps and the others do startups. Which group will have earned more as a whole after 5 years? 10 years?
I was under the impression that Senior is mid-level? I thought the ladder went, Junior/Associate, (Just) Software Engineer, Senior (some places have Senior I/II), then Principal, and finally (Optional for really big companies with R&D like Cisco/Juniper/United Technologies), Fellow or Distinguished Engineer (and Senior Fellow).
>a senior engineer at a large company (and thus earn ~$250k in salary)
I'm under the impression that the $250K salary is total comp, usually $150K in Silicon Valley (which is like $80K in fly-over country) and $100K in stock options/bonuses which varies year to year (e.g., what was the annual bonus of SV programmers in the year of 2002-2005? vested options now worth for employees of TWTR and LivingSocial?); also how secure are these Senior Engineer jobs and people's average tenure at those jobs? What is their hourly wage accounting for how many hours they work?
I propose a better formula for salary range for all job ad's, your cost-of-living adjusted annual salary * (1 - % involuntary attrition per year at your company) * (40 hours / avg hours worked of employees in the team) + (50-percentile bonus) + (employee stock options {if not public 0 else 50-percentile of the cohort of the one year price target of stock analysts}).
What I meant was that large companies expect all hires to eventually hit senior, give or take 3 - 6 years. If you don't, they have something of an "up or out" approach, where it counts against you in subsequent reviews. However, not everyone is expected to achieve Staff or higher.
You're right that "Senior" is still mid-level, but the author is being conservative.
The reality at a healthy, profitable company is something like this: $250k being the "total comp" for someone is a T5 seems right to me, even adjusting for risk. A T5 at Google, Facebook, or Apple is likely earning much more than this as their stock from 4 years ago is vesting at a much higher price than it was granted at.
150k guaranteed comp, 25k bonus, 75k vesting equity is low for the companies w/ equity run-ups in the past several years, in my opinion. Also worth noting -- the bonus is basically guaranteed. It can be much higher if you get very good performance ratings.
The author also didn't include 401k matching (about 8.5k there), free offsites to go skiing or go to Vegas (w/ team trips to Hawaii not unheard of for high profile, long-term projects), generous medical/dental/vision benefits, free food, free gyms, matching charitable donations...
And IDK if it's just my team, I don't see people working extremely long hours.
You're totally right that you're at the mercy of stock prices in some regard -- but it works in two directions. Both FB and GOOG have gone up something like 150% in the past 5 years. So if someone got an initial stock grant of 200k vesting over 4 years, last year that 50k at vest time was more like 100k. Meanwhile they've gotten subsequent equity refresh grants -- the actual equity comp might be more like 200k, not 75k.
You're right, assuming that everything continues as it has. Nothing is guaranteed; that 150k can vanish in a puff of smoke through no fault of your own, and take all your unvested comp along with it.
> the bonus is basically guaranteed.
No, it is not. Many, many people will tell you of their time spent at BigCo when the economy is not booming, and after the free donuts, the first thing that goes is the bonus. You have to read the bonus plan very carefully to understand how it's computed. It's quite possible that your bonus at Facebook or whatever depends solely on your own rating, but at most companies that's just the final multiplier and all kinds of other things have to happen in order for the bonus pool to exist at all. In even mild headwinds, it's likely that only a part of the expected bonus will be paid, and not unusual for there to be none at all. Furthermore, the bonus plan is usually determined one year at a time, so the fact that whatever needed to happen this year for everyone to be paid at 100% did happen is no guarantee that the criteria in next year's plan will be satisfied.
Do not assume that the future looks exactly like the recent past. It is certainly possible that the near future will be even better than the recent past, but at least some kind of mean reversion is a hell of a lot more likely. I predict that very few people will end up receiving as much total cash for their work over the next 5 years as their simplistic and rosy-eyed calculations of today would indicate.
Yes and no. It's a middle level in that there are levels above it. It's not in the sense that it is where most people will cap out. A senior engineer is expected to be exactly that for most teams, but you will see principles (or whatever) there for the harder/bigger problems.
So Dallas doesn't count as a metropolitan area? I can almost guarantee nobody here is making that kind of money after only five years. In fact, I'm willing to bet that this kind of compensation is extremely rare outside SV, NYC, and possibly Seattle.
In fact, based on what I remember of the salary bands at my former company, it was impossible to reach $250k/year in five years, anywhere in the country.
It's worth noting that using a flat cost-of-living adjustment both overestimates and underestimates things.
The kind of place you'd likely rent in Plano or Addison would cost ridiculous amounts in NYC, given comparable neighborhood qualities and commutes. You can easily afford to have three, four, or more kids. In NYC, one kid is doable, two is a challenge, three is crazy. From that metric, $150k in DFW sounds awesome.
Though if your goal is retirement, maxing out your 401k in NYC is much easier. If you plan on moving to a lower cost-of-living area to retire, or are otherwise looking to hit a certain dollar-figure for some reason (paying for kids to go to college), NYC probably has the edge. That is, people usually adjust their total salaries for cost of living but ignore that annual contributions to medium-term and long-term savings generally shouldn't be adjusted.
No one is reaching any of those titles 5 years out of college though.
I'm not challenging that. There's a reason after all why I have not yet and never will move to California (well, a bunch of reasons, but most are irrelevant to this). As I said to my other respondent, I'm taking issue with the absolute numbers.
On this specific point I don't have a good opinion. I don't know much about the startup scene here because nobody is doing things I am interested in, but from what I can tell they seem to be saner than what you get in the Valley because nobody has delusions of unicornhood there. Similarly, there are plenty of bust-your-ass BigCo jobs around here. So both camps seem to pay similarity and seem to have the same scattergun of stress levels.
Of course, given today's stock market prices, it's likely that any options you get at BigCo will be out of the money when they finally vest, and there's a good chance your RSUs will be worth less than you're valuing them today. But the effects of these things are still much smaller than the vastly overstated likelihood of ending up with a winning lottery ticket.
Not at Amazon. They are fine if people cap out at SDE 2. It's a bit of an odd thing IMO, and it's resulted in a comparatively low number of senior and above level SDE.
The ratcheting hiring bar[1] and the punishing promo process[2] mean that SDE II has to be treated as a career role as a practical matter for the tech orgs to continue to function. As hard as it is to retain good engineers, it'd be even harder to retain good managers if they were expected to manage all their SDE II's up or out.
[1] - Every new hire is expected to be better than 50% of the current employees in a given role and level across the company. This means the "bar" for a given role and level continuously trends higher modulo attrition.
[2] - Senior engineer candidates typically require at least a dozen peers and managers at or above the senior level to each dedicate a couple of hours to write detailed SBI feedback. The promo candidate's manager then has to spend many more hours crafting a lengthy document from this. The doc then gets reviewed (i.e. picked apart) multiple times at every management tier up to the org VP. At any point along the way it may be punted back for rework, or denied. The process gets even more cumbersome going to principal - so much so that it's often said that the easiest path from senior SDE is to leave Amazon for a couple of years and get hired back as a principal.
source: former Amazonian who really liked working at Amazon, but who finally got an offer elsewhere he couldn't refuse.
you mean the ridiculous and pretty broken process?
So someone starting at BigCo in California should expect to take home 100-125k a year for the first few years. That said, I would caution new entrants to the workforce about three things:
- Tax rates are likely to go up, and certainly will not be going down. It would not be shocking if you were taking home 10% less in a few years solely because of higher taxes. You can also expect your cost of living to grow much more quickly than the tax bracket boundaries will rise.
- Your RSUs are likely to be worth less than you're expecting, because market prices will decline in a bust (a major bust is all but certain at some point in your upcoming 4-year vesting period).
- In a bust, you will likely get a smaller bonus or none at all (even if the company is still making money), and are unlikely to get a raise, even a nominal cost of living adjustment. These conditions can last for several years, so even if you keep your job (hardly a given), your total compensation will likely be much less than you expected when you were hired. A few companies may be doing well enough that you will be exempt, but don't count on it.
All of these things need to be factored in when evaluating compensation. It's not as simple as adding X + Y + Z and assuming that all changes over the next 5 years will be either neutral or positive. That's not how life is.
In the neighborhood of $250K, 401K and HSA match are just a few percent of comp generally.
My brother got a starting salary of $80k at a startup that went on to IPO in the single digit billions (he joined after the series A). After he sold his options, he earned an average of $130k / yr at that company.
Its more about the kind of experience or skills you want to gain. Money comparison in my opinion can't be head to head, some make millions while some make 0 at startups.
> 250k a year in 5 years at a big corporation, really?
Yes, really.
> Yea if you're lucky to work on a project/team higher-ups care about and are also willing to bust your ass working long hours to meet insane deadlines.
Nope, not true.
> So I think this article is spreading a myth that there is guaranteed piles of money to be made by working at Google, Facebook, Apple, etc.
Have you worked at Google, Facebook, or Apple for 5 years? If you do, and you're a decent programmer (not a rock star, but a solid contributor), you'll find there are guaranteed piles of money to be made.
Provide an anecdote, links to articles, etc.
Edit: It does kind of depend on how you value stock/RSUs in your compensation package. Most of the offers they got were from public companies that were well run. So I personally would not be extremely worried about the stock losing most of its value before I was able to sell.
I spent 5 years at Google. My AGI (as measured by the IRS) during my time there went $130K, $200K, $280K, $280K, $300K, $356K (for my last 5 months there...it also includes unexercised stock options for the last 5 years, though). The bump to $280K was upon promotion to senior SWE; the one to $200K was largely because of a generous stock refresh grant.
I am Senior SWE at an Alphabet company. Came to MTV in middle of 2015 from a company in the midwest where I made over $200K last year (much of this was profit-sharing bonus), and I was definitely at top of the market for my city.
My total compensation for this coming year (based on current value of GOOG, obviously this can vary) is projected in the mid-$300Ks. (Some of this is initial GSUs vesting, so it's slightly inflated). With the difference in cost-of-living it should be about equivalent to where I was last year. Too soon for first refresh grant, so I can't speculate about where it may go from there.
I've already gotten a larger raise and bonus than I expected, seeing as I negotiated a better offer than they originally gave me. My manager has been talking with me about what I need to do to get to promoted Staff level.
So yes, there is money to be made in SV, at big companies.
$75k (partial year), $182k, $254k, $360k
and then I left for a start-up where my total package is $50k. No less happy :-)
Also, since the thread is about making decisions about your career, considering compensation, why did you leave Google?
Many of my coworkers would auto-exercise-and-sell their options immediately as they vested. If I'd done this then it would've added between $15K-$60K for each of the first 5 years, but the last year would've been about $130K instead of $350K (I benefitted significantly from the stock price appreciation of GOOG, even if I did screw up nearly everything tax-related).
I left Google because five things happened within a year or so: #1 I started feeling bored at work #2 My existing project ended and I couldn't find one that really excited me #3 I passed a million bucks in liquid net worth #4 The outside tech world started entering what seems to be a period of high uncertainty and #5 I started thinking seriously about marriage & kids and realized I only had a few years left. So, in the spirit of YOLO and with immediate financial concerns taken care of, I figured it was time to do some things I'd always wanted to do.
Does that mean you decided to do the startup thing or that you decided to take time off?
So my question is: stipulating that the numbers favor bigcos for fresh graduates, is the same true for people who already have that 5 (or 8, or 15, or 20) years of experience elsewhere?
If I grant you $1,000,000 in RSUs, vesting over 1000 years, is your annual income $1,000,000 ? No, it's $1,000.
Generally what happens is a laddering of grants. 100k over 4 years. Then a year later, another 100k grant. Then again the 3rd year. And again the 4 year. Once you hit that 5th year, you are indeed seeing 100k in stock each year.
Remember kids, stock prices don't always go up. Some stock prices go down, and sometimes all stock prices go down together. Those RSUs that, if fully vested, would have a market price of $400k at time of hire, may well be worth anything from $0 to $millions at the time they actually vest.
Yes, it is possible that you will be given additional grants or options repricing if your company's stock price declines. Usually not, unless you're a key employee or top performer, but maybe. But that doesn't mean the price won't just keep going down anyway. To say nothing of the bonuses and raises you won't get, or the mandatory across-the-board 10% pay cuts, or the elimination of all the miscellaneous perks. At least, unlike the employees of many of the companies I named above, you won't have a pension you can lose too.
I know it's hard to believe. Intellectually, you can look at history and accept, know very well, that most of these companies will fail someday, and many of them probably in the very near future. But viscerally, you can't get it, because they feel invincible right now. But they aren't. Believe it[0].
[0] https://en.wikipedia.org/wiki/Braniff_%281983%E2%80%931990%2...
For instance you may get 100k-150k initial allotment and suppose you get promoted in 18-24 months, they will likely give you a refresher of 150k-225k plus whatever bump you got on your salary. It's also important to note that the refreshers don't have the one year cliff of your initial grant, it starts vesting immediately.
So if you start working at Google, and you make it to 5 years, then yes I'm sure you'll be making $250k+ total compensation.
And what is your evidence for that?
I hope it's not an estimate for the average time an engineer has been at Google, which is clearly not the same thing.
2012: ~75k (internship + first half of sign on bonus + relocation bonus)
2013: ~100k (salary for ~6 months + second half of sign on bonus)
2014: ~225k (~110k base salary + stock)
2015: ~265k (~130k base salary + stock)
I believe myself to be around average. From what I've heard about some of my peers' comp they sound comparable to this as well.
2 years of startup @ $90k, worthless stock (one of the first employees), long hours. Learned a lot, but definitely underpaid in stock.
FB @ 2014 - $230k/yr = $150k base + $50k stock / yr + $30k bonus.
FB @ 2015 - $480k/yr = $200k base + $200k stock / yr + ~$80k bonus.
Getting into the senior levels at FB/GOOG does indeed get you 250k+ easy.
Friends at FB who joined the same day as me, but fresh out of college: $200k+ / yr right now.
Secondly, people are ignoring the fact that RSUs at the 3 companies mentioned (and a few others AMZN/MSFT) have grown substantially in the past 5 years (about 125-150% on average) and is the biggest factor in these "surreal" figures.
Broken down into base (110k starting common at BigCorp), RSUs (initially 100-150K over 4 years) and bonus (10-20% base comp ), these numbers would make more sense. First year total comp is close to 145K-170K. By the time you are a senior engineer (mid-level) and assuming this took 5 years, your base comp is close to 135-160K, with refresher grants (and accounting for market performance) your RSUs probably hit 100K/year, bonuses at 30K bringing total comp to 265K-290K.
I happen to work for a BigCorp in SV (close to 1.5 years now) whose stock is performing poorly, hence my total comp is 160K (110K base, 25K bonus, 25K in RSUs/year). But if we had FB/AMZN/NFLX type of stock performance, then my comp would shoot up to 185K without any promotions.
Company 1 (~25 employees, entertainment industry. No benefits. No stock.)
1997-2000 $30,757.56 (entry level)
2001-2002 $98,944.97 (junior)
2003 $128,986.96 (senior)
Company 2 (post dot-com crash brought salaries way down, ~150 employees, software company. Ok benefits. No stock.)
2003-2005 $66,838.10 (mid-level)
2006 $77,699.29 (senior)
Company 3 (non-tech startup, 5 full-time employees. OK benefits. Small amount of stock.)
2007 $114,465.95 (senior)
2008-2012 $77,529.03 (senior, pay cut after investments were cut)
Company 4 (~120 employees, ad firm. Goodish benefits. No stock.)
2013 $100,000 (mid-level)
2014 $110,000 (senior)
Not only do company sizes, upward trajectories, educational background, company industry, etc. impact earnings, but where you are in relation to business cycles and booms/busts really matter.
If you do the math as base+equity you will often find startups that are giving out even better offers. I've seen $300k+ if you consider dollars in RSUs the same thing as dollars in cash. Unfortunately the math really is base+(equity*chance_it_pays_out). With that math, you are much more likely to come out ahead at Google, FB, Microsoft, etc.
I worked with a guy in a .gov billing $250/HR, with about $100 going to the upstream contract holder. He was an ITIL/process expert.
Just wanted to give you a heads up. I went back to startup work and my salary got immediately cut down to $125K.
~110k salary ~60 shares of GOOG per year (so right now about 45k) ~15% bonus (so 15k, conservative)
That right there adds up to 170k and that's entry level. Get a promotion or two (could be a 20% increase if you're lucky) plus the general year-to-year raises to keep up with the market and you're looking at 250k being possible before you're 30.
Now of course this can't be everyone. But it's a lot of people, and anyone who is going to be competent enough to keep a startup afloat is probably good enough to rise a rank or two at Google/Apple/Facebook/etc.
The important thing is to leave after one year, no matter the compensation you are getting. Teams have a tendency to give the shittiest work to the most junior member, and there's very little inertia to replace that person if they are doing a stellar job at that shit work, but once you leave that startup with bankable experience under your belt, you'll have a much easier time interviewing and negotiating yourself a cushier position at either another startup or a big company.
Most big companies have a much better career 'ladder', where you'll be on a path to more interesting work once you've proven your worth, but I suspect you'd still be in a better position coming into the company one or two years in, rather than starting the treadmill at a lower salary/title.
Flip side, I'd also add an option at months three and six to ask myself whether I should just get out now and basically just not put it on my resume in the future. Interesting tech is interesting, but if the startup has pathological personnel or psychological problems, a year may be too long. I would suggest sticking out anything other than outright abuse for at least 3 months, though, since you do want to account for the fact that, ahem, a real job is not school and there are certain different expectations, regardless of where you work.
This reads as if you're advocating against ever becoming an expert in anything. A few months is nothing--if the domain is difficult you're barely up to speed.
Given the recent specialization in programming (web backend v. frontend, "mobile", devops, etc.), which is a continuing trend from previous decades, this seems sensible. I advocate for a T shape in skills, but before you pick what you go deep in, get somewhat established in the wide. Fresh out of school you just can't have the width yet to know what you want to and should go deep in yet, not even if you've had a job the whole time.
Actually, I suppose I ought to raise that up as my true point: Go a bit wide before you select what to go deep in. Try not to just float into something without thought. Width should emphasize learning things that have demonstrated staying power, but you want to go deep on something that you expect has future power. It probably shouldn't be the current hottest fad tech, but the current hottest fad tech is probably at least in the area of a good future choice; it's more interesting why the current fad is a fad than the specific fad. If you do go for something that became super hot in the last 6 months to a year, try to figure out how to leverage that into learning about fundamentals even so. There's ways at both big companies and startups to succeed and fail by this metric.
Of course, on the flip side, you don't have to get it perfectly correct. You can't go deep in everything all the time, but "pi-shaped" Π is feasible in addition to T-shaped too. (That's capital pi, for those who may not have seen it before.)
And I would say that in your first several years, you really don't want to be an "expert" in anything, cause you likely haven't had exposure to enough different things.
Maybe it doesn't matter which one you start with, but you should give both a try at some point.
It's important to differentiate skills learned at big companies. Some are very useful, but others are coping mechanisms that have no place in a startup. Meanwhile, the scrappiness and well-rounded skill set learned at a startup will almost always have a place in larger businesses.
My own personal recommendation for early career workers would be to prefer the cream-of-the-crop mid and large companies where you'll get useful experience you can't find anywhere else, then prefer startups and leave the slower-moving and more dysfunctional larger companies as a last resort.
Instead of recommending what people should go after college for their first job, I'll recommend what people should not do:
1. Work for a consulting / contracting company that has companies people don't like to work directly for. This is probably the worst arrangement of bureaucracy possible because you have the maximum possible layers of management overhead combined with business incentives to keep your compensation and impact upon the business as little as possible. Working for a web development shop that has big customers doesn't count here IMO because your work as an engineer is largely unchanged regardless of your customer paying you $2000 or $200k.
2. Work in corporate IT. These are high-turnover positions for many reasons. It seems like there's a lot of money in it, but it's mostly going to those that sell software to these places. People are miserable enough in F500 companies as it is, this is probably among the worst places for combination of stress, pay, and career mobility.
3. Work in a non-software company. A company whose business doesn't take its software seriously invariably treats its software and IT resources as cost centers meant to get maximum cost savings for as little money as possible via opex reduction and will, ironically, likely fail to make bigger expenditures required to keep costs (and really, wasting time) lower.
Being around non-motivated people in a demoralized environment is a great way to kill any starting career and learning what the signs of these organizational attributes are have important for avoiding really bad career moves.
Find the leaders that understand all programmers need training (especially around process and coding standards). Sell that on your passion and that you want to become good _quickly_.
And to be a little cheeky, Pivotal (compared to Pivotal Labs, not the same but still) is nowhere near a "start-up" company by most definitions. They're planning for an IPO and are pulling in many millions in revenue like Cloudera and HortonWorks, it's hardly possible to keep these plans from being kept under wraps.
To expand on this, there are some companies that seem like non-software companies, yet still treat software as a competitive advantage rather than a cost center. I worked for a big bank that did their best to stay six months to a year ahead of other banks on technology. The marketing folks were constantly coming to us and saying, "Give us cool features that we can sell." It was a fun place to work.
I also worked for an insurance company that viewed technology as a necessary evil that should be as cheap as possible. The marketing folks there were constantly complaining about how much time and money the company was wasting on technology. (Curiously, they also complained that the company's technology offerings were hopelessly far behind its competitors.) It was a miserable experience.
If you're looking for a job, ask questions about management support and budget priorities. If they're evasive or they say things like, "we're proud of how far we stretch our investment," it's not a good place to work. You can also ask how the company compares technically to its competitors. If they're evasive or talk about how they're trying to catch up, that's a bad sign, too.
A good example of what I mean are large, innovation-less companies with "start-up in a large company" efforts to bring themselves some relevance that almost always become the worst of large company inertia / legacy with the fiscal and market position disadvantages of start-ups. I've been through at least 4 of these efforts with varying degrees of "success." And while they're a large part of my career and I want to believe it can happen, I have no evidence of this working out well and am convinced it's a rather high risk to take with disproportionate upside.
Do you have any thoughts about what the general environment will be like, and is there any chance the place will be mired in bureaucracy? I'm relatively early in my career as well, and have never worked for a Big Co before.
I'd love to get in touch with you, but you don't have contact info in your profile. I'll be grateful if you can drop me a line - mailshanx at yahoo dot co dot in
Look for a deep culture of respected and accomplished leaders in software up and down the hierarchy. If nobody in a position of authority has delivered software successfully before that you can recognize as an engineer, pass because culture and experience among executives is massively important and their priorities should focus on long term growth (Amazon was ridiculed by enterprise vendors while I screamed that they will eat their business in a decade - they don't care because they'll go somewhere else while I have to deal with the very expensive consequences of bad software). There are too many great companies around today to waste time on mediocre companies - it is better to be jobless for months or years waiting for a great company to accept you for your talents than to waste some of the best years on companies where your best efforts will result in second rate winnings. It's a huge risk to work for mediocre companies that will not put the work you will have to put in themselves.
My e-mail is djk29a on Google's e-mail service. Not sure how the first part of your e-mail works out and I'm several days late so hopefully this is relevant advice.
Starting off in a startup will lead to little support and a cowboy attitude, what the world needs more of is people who know when to cowboy, and cowboy with purpose rather than using 'just get shit done' as an excuse for a lack of standards and quality.
What I usually tell new grads is: Get offers from both, and take the job that has the best potential person or people that you'll be able to learn from. There are a bunch of ways you can research this. Try asking people on the team to tell you who they've learned the most from in their career.
Do not take a job where you'll be a lone wolf. As a new grad your goal should be to find great people to work with and learn from them.
If you want to have a balanced career you should try both big corps and startups, but ordering doesn't matter.
Good point. Fresh out of school I went to a tiny company of under 10 people. I had a great time and I was really impressed with the skills of the people I worked with.
But within 18 months or so it became obvious that I had by far the most theoretical knowledge of anyone there and a lot of their approach was guesswork. In two years, I began to realize I was just as good an engineer as any of them, just inexperienced.
I should probably have left after year three when the fun-factor was in sharp decline, but I stayed 5 more years, then took a job at at $BIGCO where my salary almost doubled instantly and projects were much, much bigger and infinitely more fun.
The important thing is to be vocal about what you want to do. If you came in as a frontend dev want to do more about backend work, go find gossip about new projects and express your areas of interest to higher ups. If you want manage people, offer to improve the technical hiring test. If something is stupid (maybe there's burnout due to too much overtime, or a process is over-bureaucratic, or some aspect of development is too cowboy), be proactive and offer solutions.
The unique thing about small companies is that there are enough people that narrowmindedness and complacency start to appear (and with it, process problems), which gives you plenty of opportunities to prove yourself with out-of-the-box thinking, but not enough bureaucracy to prevent you from being able to make changes.
I rebuilt the recruiting process at my first IT-company after college.
Now I started my own IT-recruiting agency in Zurich. If you look for a tech-job in the most liveable city in the world, check out my story "8 reasons why I moved to Switzerland to work in IT" on http://medium.com/@iwaninzurich/eight-reasons-why-i-moved-to... or send me a mail to the mail-address in my HN-profile.
I've been trying to leave my small company for a mid-sized startup in NYC (currently in NJ). Started just before my year mark. Almost every startup wanted someone with more experience under their belt. Of the few that were willing to take on someone with one year, I was still in competition with others who had much more experience. I got the same line over and over again - "strong technically, passionate, good fundamentals, but we need someone more experienced". So I waited a few months and tried again. It's gone a lot better so far (no offers yet) but I've had to shift my image from that of a young up-and-comer to one who knows how to Get Stuff Done. I stopped asking about mentorship opportunities. I still really want to work at a startup but I need a new job ASAP - I don't think I'll be attractive to them for a few more months at least.
If you're primarily interested in making money, or if you love the startup but not the compensation, you should NOT work at that startup.
If you're a good developer, you can get a better deal by working at an established company and simply investing. This has been true for every startup offer I've ever seen. Ever.
I've considered lots of startup jobs because I believed strongly in the companies. Every single time, however, I was able to get a larger chunk of the company by keeping my current job and simply investing.
To give an example, my current job pays about $250k, and one year, I invested $100k of that into a startup, leaving me with ~$150k of salary. This $150k + startup equity was a better deal than the startup was offering in both salary and equity (BY FAR). Plus, equity bought as an investor is much less tax toxic than equity options received as an employee of a startup.
On the other hand, most people who work at startups aren't interested in money. If that's you, that's totally cool!
Just sharing anecdote for anecdote.
Do you want to be a small fish at Google, or a big fish at Goldman Sachs?
That being said, at this point in my life/career, I'm not worried about being a big fish at either Google or Goldman Sachs.
Certainly we need Rome, the modern world wouldn't have existed without it, but Romans themselves are myopic and self-obsessed. They need to be, otherwise it wouldn't be Rome.
I love that Silicon Valley exists, but I wouldn't want to live there. I love the people that go there and exist on the bleeding edge of innovation. I'll happily sit here behind the curve and have a normal life with a house and car and kids. I'll root for the dreamers that go there and hope that they too can one day achieve their dream life. I don't need that glory.
Besides, from what I've gathered from the job postings here, SV startups mostly don't hire remote workers. You're expected to move to Rome.
Local startups offer substandard salaries, the very real proposition that your company will run out of money, and inevitable reticence on the part of the founders to clue you in as to how the company is really doing. No thanks.
That actually sounds awesome to me. I know I'm unusual, though.
Me, I live in the Midwest and work in a quite substantial local office of a SV-based company that is now midsized. I get the job I want (in particular I want to work in a place where programmers are the core value providers of the company, not a cost-center afterthought, which is what is generally true of the other companies where I live), in the place I want, because I do not want to live in SV, and do appreciate being near family. Granted my choices are less, but I only really need one job "right now" and enough fallback that I have choices; I do not need thousands and thousands of options.
I know it can be done. I know it's not an either/or, because I have in my hands an existence proof of something that is not either/or.
You want Rome in your life, having Rome there is way way better than not having it there. But Rome is dangerous, precisely because of the infectious nature of Roman ideas. When you 'live in Rome', you are ceding control over your life over to Rome in exchange for a more exciting future. You've sold the family farm, uprooted yourself and moved to the big city.
I don't want to live in Rome. I don't want Roman ideas controlling my life. I want to live out here in the periphery, maintaining as strict a boundary as I can between myself, my lands, my family, and Rome.
I don't want little bits of Rome on my lands. If Rome wants to come to me, offer me a fat salary and a cush job right inside my kingdom, I'm going to examine that gift horse extremely carefully to make sure it's not hiding a bunch of soldiers inside, or, more likely, ethical failings on the parts of the founders that can wreck my life along with my kingdom. I can't fight Rome, Rome is unstoppable, but by keeping my head up and not falling prey to ego and hubris, I can enrich myself and my kingdom through Rome rather than get destroyed by it.
Hacker News is how I get exposure to that ecosystem while still maintaining control over my life. It's perfect for me, no less than I need, no more than I can handle.
Python, golang, and Java(+jvm languagages such as scala/clojure) all have a TON of users at very large and interesting firms. I was just reading today about the new york times open sourcing their golang microservice framework.
I think that programming can be further subdivided into web development and everything else, and then Rails as a platform compared to other frameworks.
Rome had its own evolution, and so each individual Rome is also in a different part of its evolution. When Rome fell, it did so not because of any real weakness on the part of the Romans, but because they'd succeeded in exporting what made them powerful to the surrounding lands. Rome couldn't maintain dominance faced with its provinces each wanting self-rule.
So I consider Rails in the last throes of empire. Its legions will still fuck you up, but it can't fight the whole world anymore. Still the best web dev framework out there, every other framework ends up reimplementing Rails, but it can't be all things to all people anymore.
Most big companies I've worked with in Europe have horrible new employee training package or no training at all. I haven't worked in a single one that took fresh out of college types and allowed them to work in different departments. The most common scenario when a new graduate gets hired into a team doing X is to throw him in, get whatever documentation the team has, even maybe someone to ask questions and the expectation is that he will do X for the next few years.
Opposed to this is the environment in a small company/startup, where you'll be forced to do a bit of everything and even lend a hand with stuff that is not your job at all. You'll have the chance to see different technologies, see the whole process end to end AND then, decide what you want to do.
BTW, is salary that important for people starting their careers? Salary advancement yes, even what salaries you might expect with 2/5/10 years of experience, of course. But for a first job? Does it matter that much?
My first salary was crap (600€/month in the year 98), but allowed me to work in multiple environments (web, databases, sysadmin, embedded system...) and when the time came to look for a new place, allowed me more freedom to choose what I wanted to do (the biggest problem I had finding a job, in the middle of the .com crisis, was convincing employers that, yes, I had indeed worked with all those technologies in 'only' 2.5 years). I multiplied by 5 my salary with that second job, which was a more than decent salary in the country at the time.
I don't work at a big company, I work at an established one. The key factor is that they're not still trying to validate their business plan, not the size. I want one that's been around for at least ten years. Less than that and I have to ascertain for myself whether the company's going to be around long enough for me to get what I went in there for.
The goal here is mitigating existential risk to your employment situation. There's outside risk, the chances of your company going under, and internal risk, the chances of getting fired or laid off before you've accomplished your goals.
Working at an established company mitigates external risk, working at a small one helps mitigate internal risk because you can get to know your company very well and keep alive to shifts in politics. For me, the small, established company is ideal. I work at such a company now and will only jump to a similar company for a significantly higher salary. Small bumps aren't worth the switching costs.
Also, while "rand(100)" might be an accurate characterization of the returns of all employees over all startups, it is not entirely a game of chance. There is skill involved in picking the right startup to join: being proactive in your search, building a personal network, finding founders with track records, considering enterprise startups. You can learn to improve your odds -- a bit like learning to count cards.
I remember reading something about the Great Depression and it involved ordinary people investing in stocks and losing everything.
However, 200k for the last 2 years + an expectation for 200k next year qualifies you as an accredited investor. (300k if married) https://en.wikipedia.org/wiki/Accredited_investor
The problem is that these analyses always focus on how you, as a prospective employee, can extract the most value from the world. Optimizing cash vs equity or arbitraging location or whatever.
You can see it seep through all over the place in the language used. Sometimes it's subtle:
> I’ve told that anecdote to multiple people who didn’t think they could get a job at some trendy large company, who then ended up applying and getting in.
Waiting and hoping to "get in" is pretty weak. It implies that we're all just meat-sacks working away until some of us get lucky and manage to convince a fancy company to overpay us and let us extract a lot of value from them.
If you have value to contribute to the world (and you definitely do), then go figure out someplace where you can best contribute it. Stop worrying about the best way to take things from the world and figure out the best way put stuff in. The rest will take care of itself.
It's pretty bad overall for net societal productivity. The main reasons this framework shows up so much is that (i) it's hard to really think through what kind of unique value one offers and to figure out how to leverage it, and (ii) it's tough psychologically to do something that doesn't optimize for the typical value function (prestige + income).
I like to go by effectiveness estimates from www.givewell.org. One of the charities they approve of is GiveDirectly (www.givedirectly.org), which makes direct cash transfers to people living in extreme poverty. They feel confident in the claim that the average person receiving money from GiveDirectly lives on the equivalent of about $0.66 (U.S) per day[1]. GiveDirectly has an organizational overhead of about 15%.
Another charity they like, the Against Malaria Foundation (AMF), distributes anti-malarial bednets. The nets cost something in the ballpark of $5-6 to make and distribute[2], including organizational overhead. They make a much more tentative estimate that each $2,800 sent to the AMF results in about one life saved[3] (of a child under 5).
So, by donating 150k, you could plausibly:
1) Double the yearly income of about 531 people
(66c * 365 = $240)
($150,000 * 0.85 (efficiency) / $240) = 531
2) More tentatively, save the lives of about 53 children.
($150,000 / $2,800) = 53.6
GiveDirectly Estimate Source:
[1] http://www.givewell.org/International/top-charities/give-dir...
AMF Estimate Sources:
[2] http://www.givewell.org/International/top-charities/amf#Cost...
[3] http://www.givewell.org/International/top-charities/amf#Cost...
*Edit: Formatting corrections
I think these companies are actually too ideal to draw this conclusion from. For everyone Google/Amazon/FB, you also have a Comcast, an Oracle, an HP or Cisco.
You frequently hear about companies like Apple, Google, Facebook, etc trading employees. You don't hear about the typical big company poaching anyone besides executives.
Edit: The above doesn't seem to represent a clear thought. I'm trying to argue that the average big company doesn't pay as well as those three. Similarly, the average startup isn't going to be able to pay massive dividends in four years.
If you join a startup early you'd be very lucky to get 1%, 2% maybe? Ok so then 4 more rounds of funding go by and you're diluted. Then finally after 5 years you sell to Googapplesoft for $200M. Holy shit, payday is here! Wrong.
First you're going to pay out to all of the preferred shareholders, some of whom might have special payout clauses because you guys really needed the money. Then you find out your 1% is now 0.3% and you have to wait 6 months to sell any of it. So you busted your ass for 5 years for a few hundred thousand dollars when you could have had a full-benefits, low-stress job at Googleapplesoft in the first place and not put nearly so much at risk.
Oh and there's a 90% chance that exit never even happens and all you did was work way below market salary for worthless stock. Oh and that whole time you probably had crap health insurance and minimal 401k matching so your savings aren't looking too good either.
The point of the above is not to say "don't work at a startup" because it's obviously a great experience and the right choice for some. And who knows, maybe it will be WhatsApp and you'll be a billionaire and you can come back here and mock me. But if you run the numbers (as the article says), you really shouldn't work at a startup if you're after money.
http://www.cmu.edu/career/salaries-and-destinations/2015-sur... [pdf]
Having $130k as a baseline salary for the analysis is silly. (However, a total compensation of $130k is not silly)
If you're the type of person that can't stand repetition and predictability and want the emotional roller coaster of creating something new, then join a startup!
We don't have blog posts talking about the payouts between being an artist and a hedge fund manager, and yet people still become artists. Why do we do this in the startup culture? We shouldn't feel apologetic or like we're missing out on something if we decide that what makes us happy is to work at a startup.
It's not even about skill. It's just the effect of living in the SV echo chamber of billion-dollar start ups and multi-billion-dollar BigCos.
https://twitter.com/mxcl/status/608682016205344768
If you can get a job at Google, it's very different than getting a job "at a big company" and has historically actually increased your odds of success later on (via the propensity of investors to fund Xooglers). So I would definitely agree - taking a job at Google when you haven't had one before vs. starting a startup is a very legitimate choice to make. Taking a job at Microsoft vs. starting a startup, I would argue (and the X-Microsofters in my life) a very different one.
---
"Second problem: every 'experienced' interviewer has a set of pet subjects and possibly specific questions that he or she feels is an accurate gauge of a candidate's abilities. The question sets for any two interviewers can be widely different and even entirely non-overlapping." -- http://steve-yegge.blogspot.com/2008/03/get-that-job-at-goog...
"I have 25 years of software development under my belt, I published a book, spoke at various conferences in Europe, have a Github profile (admittedly not very lively), worked for well-established enterprises and have great references. Why shall I still prove myself?" -- https://news.ycombinator.com/item?id=10757186
It makes everyone that's interviewed at Google and didn't get it feel better, which is why it is such a good story.
[0]: https://github.com/apple/swift-package-manager/graphs/contri...
3 years in small companies outside the bay area 10 years in bay area startups ~2 years in bay area big corporations
I can say the following. The transition from startup to big company was really tough. Part of this was because I was used to being "the guy" for such a wide range of things. At big corporations, these roles are divvied up into 5-10-15 different roles. This is both good and bad. On the plus side, I can relate somewhat intelligently to colleagues across a very wide range of roles. On the minus side, the colleagues all (rightfully) feel their areas are their domain and don't typically recognize expertise coming from outside their team. This knowledge with lack of credibility was hard to reconcile until I fully realized what was going on.
His comment about cost of living was kind of an outright dismissal, very odd? I don't think Google will let me work from Milwaukee.
Where is the information on travel, quality of life (owning a house?), etc?
If you look at Dan Luu's resume and writing, it's reasonable to assume that he's well beyond the 95th percentile himself, so those numbers are very likely attainable for him.
What I mean to say is, my thought is that a developer in the 95th percentile would make their own product/business.
I've never thought of myself as an 'average' developer; but then again most people say that about their driving. It does make me wonder what a bad developer is though.
As for 95th percentile developers making their own products or businesses, that's a completely independent skill with little correlation to software development ability. Beyond writing the software, you've got to market and sell the product, set up distribution channels, support the product, etc. I'd consider myself a respectable developer, but I have no delusions that my development skills translate to any of the other skills required to build a business. I'm generally content to execute in a software development role for someone who has the broader vision and skills to build a business around that product.
And lastly, I wouldn't base an assessment of your skill as a developer on your compensation. In current and previous roles, I've seen a number of salary lists, and there was zero correlation between pay and talent. Some of the most highly-paid developers were near worthless and some of the most solid developers were paid 25-40% less. While it's sad that being a good software developer is not enough to be paid at the top of the scale, we generally have it pretty good in that the decent ones of us are likely to have salaries well above the national average.
Depending on your skills, maybe they would, maybe they wouldn't. But you might be surprised to learn that the author worked for Google an hour-and-a-half away in Madison? https://github.com/danluu/tex-resume/blob/master/resume.pdf
For example, I currently make about $90k. I interviewed at Microsoft in Redmond and was offered $110k base. Let's call it $130k with bonus. I declined the offer. Why?
I interviewed for a senior position and was told "we don't think you're qualified for a senior position, would you like a junior position"? This is not a problem, except that it communicates to me that expectations will be high for improvement. Additionally, during the interviews, I inquired, "Does the team generally work 40-hours a week?" And they said with a disdainful tone, "Well, we do have one person that works 40-hours a week." That tells me that I'll have to work my butt off for 50+ hours a week. Additionally, moving from the smaller town I live in to Redmond/Bellevue area will incur a noticeable increase in cost of living (specifically rent/mortgage).
So, I go from a pro-rata rate of ~$43/hour to ~$50/hour (a 16% raise, nice but not amazing) but then I have to pay for it with substantially higher cost of living and substantially more stressful workload. As an aside, this was when stack ranking was still a thing, and my questioning of the team during the interview indicated that it was a internally competitive team, which as a personal thing is disqualifying for me.
So if you want a six figure developer position, create a GitHub profile and build some ad-hoc demonstration apps using some interesting modern tools. But just be aware that, if you're not a "top developer" or "rock star", then six figures often comes with a considerable cost.
Note these are generally not luxurious properties at those prices. Many are small postwar ranchers or Eichlers (beautiful but a pain to update) that have not been renovated in decades. Some houses have negative value because they're teardowns; you'd buy the property for the land.
After taking into account housing costs and California's aggressively progressive tax regime, you may find that $250K salary does not go as far as you like. You may make 2x-3x as much--but your cost for comparable housing may be 10x-15x as high and your tax burden will be more oppressive as well.
As somebody who worked at Google for 5+ years, I'd like to emphasize a point: If you sustain good work [1] for a few years, you will be rewarded well beyond expectations [2]. Your compensation will depend on your performance, and not on your starting salary. I think this is unique to Google and maybe a few other tech giants. From this point of view, the generalization to 'big company' is flawed. But otherwise the points made by OP are true, and I wish more new grads would see it (and believe it).
[1] Your overall contribution to the project is important. Whether you work 30 or 50 hours a week to get there, it depends on you, of course.
[2] And those rewards do not depend on the stock price going up. That's just cream on top.
It's just a fun as arguing which is a better phone, Android or iOS... it's super old and a boring, divisive conversation.
Do contract work at $250 an hour or equivalent compensation in shares at >= series B funded startups. Choose the level of risk you're willing to accept in cash vs equity. (Nearly) completely avoid politics and other office related BS. Take vacation between gigs if you like. Get a very broad variety of experiences at different companies and get a good feeling for what companies are willing to pay for should you decide to start your own.
Having worked at Google for 7 years and now at a startup, I have to say the big company bullshit factor is huge. Even at Google where where bullshit is gold plated and served with delicious, locally sourced, healthy and tasty side dishes.
I learned a lot there, worked with brilliant people, was able to carve out super gratifying work. But, it just got silly. I'm thrilled to be gone, and hope never to go back.
However, his argument becomes truly hand-wavey and spurious when it comes to the interesting work part. Of course some of the most interesting tech papers are coming out of Google, that doesn't mean anything for the average Google employee. Also, in his, argument, he goes from "here's what the average can expect for compensation" to, "you need leverage to work on interesting things at big companies...get some".
Of course not all start ups provide interesting work, but I think the dice roll is solidly in the camp of start ups for interesting work against the Big Cos, whose interesting work dice roll, I would guess, is similar to the start up comp dice roll. Unless rebuilding a bog standard UI framework is your thing.
At my first startup job I got to:
- build a compiler
- implement shared memory on high traffic services
- play with any language I wanted
- manage smart and interesting people
- more stuff, but I'm tired of typing.
Why?
Was this a good idea? Separate question. But that's one story of why a startup might write a compiler. I often think startups do things the hard way just to turn a boring task into an interesting one. Conveniently, good startups have technically strong people who can do this without it being a drag on productivity. This company had no shortage of talented folks--their staff have gone on to work at Google, Amazon, Microsoft and at least one YC company.
> But the total comp for “a good hacker” is $250k+/yr, not even counting perks like free food and having really solid insurance
Maybe that's anecdotally true for the big companies in a small high demand area of the country (really just the bay) but not so most everywhere else. Probably why Paul Graham used a figure less than 1/2 that.
With that figure exaggerated, I'm not sure I can take any other points made here seriously...
AFTER all those 10 years, the Sr. Engineer plays at Google and Microsoft were probably 250k+, when they needed that 10 years of specialized experience for a $10M+ project and can pay to play.
Anec-data: As an SV person who's worked at BigCorp and funded startups (from co-founder to CTO)... these numbers definitely trend high amongst my friends and acquaintances who graduated Stanford CS in the early 2000s.
All I can say is that the market is actually a lot more efficient than most people give it credit for. I remember coming out of school and thinking "Why would anyone work for a big company when the payouts for startups are so much better?" After a bunch of experience, I've found that:
1. Those big startup payouts are much rarer than a typical new grad conceives. They're also more widely distributed: perception is that startups are "go big or go home", but a number of companies end in talent acquisitions that are just slightly less or more than what the founders would've earned at a big company.
2. Compensation at big companies varies wildly, and people with the effort & effectiveness levels that you'd expect from a startup often are actually making startup-level money. There is zero reason for anyone doing this to publicize that fact, and oftentimes they're contractually forbidden from disclosing it.
For people trying to decide between these - forget about the financial rewards and ask yourself "What would you like your working life to be like?" I'd also forget the common wisdom about startups = no life & big companies = drudging pace; both of these are inaccurate on a micro-level, and you can find startups that prioritize work-life balance or teams within a big company where everyone's life revolves around work.
Instead, think about the problems you would like to solve. Do you want to do cutting edge research that pushes humanity's knowledge forwards? Work for a research lab or big company's research department. Do you want to bring new technologies to the masses? Then you want a startup, probably one that has spun out of a major university with a couple professors as founders. Do you want to put social hacks in motion and bring technology to ordinary lives? That's probably also a startup, probably one with young founders. Do you want to scale technologies and work with big data or machine learning? Big company; startups usually lack ownership of enough data, unless they're a consultancy. Do you want to apply technology to an industry that currently does things backwardly? Join a startup whose founders have significant domain knowledge in that industry.
If you work on problems that you believe in, you'll find that you're much more effective at solving them. The financial rewards follow after that; money is a lagging indicator for value generated, not a leading one.
Is that true? That sounds illegal.
Can someone explain why salaries in for example Europe are so much less? Out of uni salary for example seems to be around 38k in Europe, whereas in US everything under 90k seems very low. Just the difference in purchase power and costs?
BTW, I think you'll find it difficult to find a fresh out of college job that pays you 38K€ in most of europe.
From what I see, you might get 2-2.5K€ per month in the rest of Europe. Ireland and UK are, AFAIK, where the highest salaries in IT are and even there you are going to get 2-3K€ per month at most.
Most lawyers I know in Europe start their careers earning minimum wage. And they do that for a few years until they are promoted to full lawyers or open their own practice.
Doctors usually spend their first years with temp contracts of 3-6 months in Hospitals for slightly more than minimum wage. This is after they finish their degrees and do the mandatory internships they need to do to get their MD degree.
Of course nothing like Bay area salaries, even though London is ridiculously expensive. Some Googling seems to indicate that the cost of living in SF is about 25% higher than London, so real earnings are quite a bit higher there for programmers it seems.
When software is the product, you tend to consider your software developers as money makers and pay them better. When you think of your engineers as a necessary evil to sell other stuff, you tend to pay them as little as possible.
Europe is full of the second scenario. That's the problem.
But $90k is not the norm for starting in the US. I started at $50k in DC for example post-grad school. $90k is perhaps only the Bay Area.
Much of the east coast probably has >=$80k starting salaries as well. (Or at least, you'd expect the high salaries to be on the coasts.) Negotiate, negotiate, negotiate.
Part of that may be because your view of the US is distorted by being limited to a particularly highly-paid slice of the field in a highly-paid geographical region; 90k is close to the median salary for the highest of the non-management programming occupation titles (software engineer -- software developer and computer programmer pay less) in the BLS salary survey, and therefore pretty high paying for the technology field as a whole, rather than the level where anything under it is low for the field.
In Europe we lack software companies of such scale. Why? Not too long ago going global from the middle of nowhere was not an option. Companies would saturate their local market and fail to grow across borders. I'd venture to say this is due to the (1) lack of international sales experience, (2) different laws / work practices elsewhere, and (3) language barriers.
I know 3 companies doing accounting software in Estonia with a population of 1.4 million. These companies know the business better then anybody else and the market is too small for any of the big players to consider. Similar patterns can be seen across industries.
At Big Company if I get bored I can move to a different group fairly easily. And I know my work will be used by millions of people a day. I think that's the part people forget; A lot of people will use your product. At a Startup good luck with that.
And another thing, if you start to have conflicts with someone at a Startup and it's not resolved, it will be a pain to work there. At Big Company, at least you can move to another group or hope they will.
A tech Big Company values engineers and pays accordingly.
A non-tech Big Company simply does not value engineers or tech and consider both to be cost centers instead of drivers of growth.
I would plainly say that jobs at either a Startup or a tech Big Company would both be better options than a job at a non tech Big Company.
Typical startup raises a $500k seed round and is two founders + 2 senior engineers building the v1. If founders want Google-caliber people, they can't afford to pay $200k; the cash just isn't there.
So companies will have to start giving out real chunks of equity (5% or more) to early key hires. And "who you are" will matter even more than it does now (e.g. look what having Spielberg or another A-list director does to a movie's prospects, they can get the good actors, etc.)
I just don't see any other way this plays out. SV will become more like Hollywood.
If Google and Facebook are your median exemplars, I really want to know what your sample is. Those aren't exactly large companies. Amazon, too. Apple and Microsoft may be, at least in this industry, but I still have the feeling that the total number of the technical people that this article seems to be addressing is much larger than the total employment of the "large companies" (and small ones).
Also, another minor issue: During my years at IBM (technically, contracting for IBM, but even then you couldn't pay me enough to sign on), I did get to work on very interesting projects and learned a great deal from some very smart people. On the other hand, everything I did was shovelled into the trash can immediately after I finished it. Project cancellations, reorganizations (IBM: I've Been Moved), etc., these are fun facts. Of course, I don't expect start-ups to be any different in this regard, given their failure rate.
Then I got to the final footnote. That kind of Kafka-esque bullshit is what keeps me working in startups. I could not stand working in a culture where policies which are widely seen as unhelpful and ridiculous are still routinely inflicted upon employees.
Yes, startup "bullshit" also exists, but the difference is that it's totally possible to avoid that bullshit by picking a good startup to work at. I've never had anything like the experiences described in [1], despite working at 3 different startups. On the other hand, big company problems seem to be universal: it's not possible to find a big company without at least some arcane and employee-hostile policies. (For example, Google's blind hiring keeps me from ever considering working there.)
Then I got to the final footnote. That kind of Kafka-esque bullshit is what
keeps me working in startups.
While I agree that big companies can have weird Kafka-esque bureaucracy, they're still generally a lot better at record-keeping than startups. I've never had a big company ask me if I could go without pay for a couple of weeks while they waited to "sort out my payroll paperwork". I did eventually get the back pay, but it was pretty tense for a couple of weeks, as I waited and wondered if I'd made a terrible mistake in quitting my work for a large corporation to go work for this startup.Work at whatever job meets your financial needs, everything else is gravy. This will be hardest at the start, but as you gain seniority, you'll have increasing freedom to work where you want. All things being equal, established companies will pay better. Save money, but don't take jobs you hate to save more money - it's not worth the equity.
For work:
If you know what you want to work on and can get a job in an established company, do that. Established companies are much more likely to actually have you work on what they hired you to work on. They are also much more likely to continue the project you were hired for. There are exceptions, but generally you will have much greater resources available to you. Your work may never see the light of day, or may only be used internally, but you'll walk away with a lot of experience on a specific area.
If you don't know what you want to work on or you like working a little bit on a lot of things, work for a startup. Especially for junior roles, there is enormous flex in terms of what you'll actually work on from day to day. This is not limited to programming, but includes all branches of tech work: architecting, service monitoring and setup, marketing, etc. The downside is that it can be hard for you to explain, in a substantive way, the amount of work you did during this time. The upside is that you learn a lot and get a feel for many things.
As for future options - startups will give you many shallow options, working at a big company will give you lucrative & focused options. If you work only in one area, understand that you are betting on that 'kind' of work to continue into the future. The more experience you have, the more value you have in that market. The value in that is entirely dependent on the value the market puts on your skills. You can often pivot, but it can be difficult. Keep that in mind when looking at future work.
Definitely, and not just for the reasons stated in the article. I believe it's pretty common for employees to get escalating stock options as they progress in the company. When I first joined my startup as the second engineer hire, I got something like 0.2%, under a four year vesting schedule. After a year I got a bit more, like 0.3%. After another year and a half or so, I was given enough to bring me up to what is currently 1% -- but again, under a four year vesting schedule. Most of my options vest under a four year schedule that started 2 1/2 years into working there.
Is it pretty common for regular engineers to get 1% options right off the bat? I thought it wasn't.
However even if return to the 2004 scenario of 80K/100K that is still comparable to other professional careers and better than most college majors. So I'd recommend staying in CS if you like it.
The problem with any comparison is hindsight. Many other large cap tech stocks do not behave that way. Certainly you could have joined Microsoft at a certain time and "given up" at the "wrong time". Your cash comp might have been quite good (or not).
The thing to ask yourself (and I definitely am not judging or implying one way or another) is where does your code go and what does it do? A lot of that IBM code, well... And of course many startups don't make it as well.
If all you want is money with low risk the choice is clear. If all you want is a chance at a huge payoff with high risk then the choice is clear.
If you're happy with the end result of your code then in a Fountainhead sort of way that's what matters. Then whichever risk path you take for your compensation is secondary. And your views on this might change at different life stages.
Finally the ability and skills to navigate and succeed in either a startup or a big company are different. Depending on when you choose and how you grow and evolve you may or may not be at the right place at the right time.
That's my shortest comment to a very long topic :)
It's not quite clear to me: care to explain?
That being said, a startup in my area would pay 50-70% as much.
No different than when people talk about how they bought a house for X and then sold it for Y at some point down the line, giving the impression that they made a nice return on investment. Off course such casual math forgets that it costs a ton of money in interest, taxes and maintenance costs to hold such an asset for this length of time and these need to be subtracted from what appears to be a nice lump sum payment down the line. In reality, net net many people never make a $1 owning their nice fancy house even though when they sell it results in a nice lump sum.
With jobs and houses there are lots of other factors at play, but when it comes to $ it's important to understand the difference between perceived "windfalls" and actual net return. The true results are often not what people expected.
For fresh grads there is almost no negotiating room on compensation. Additionally, what one learns and experiences is critical to career growth. At one sv bigco I got paid intern level wages to manually label machines in a server room for a month (hired as a developer). I'm sure this is not represent tative of that company. At another bigco I have seen fresh grads and interns get plum work assignments (and pretty good compensation, according to surveys), and I know that's not the case for many other parts of that company. Neither of these companies is appamagoogsoftbookflix, but I know both these scenarios can be found pretty much anywhere.
Even midcareer professionals should care a great deal about the people and projects they will be working with, but there the ability and need to optimize compensation can be more acute. So, avoiding optimizing for compensation and company prestige early in ones career is something to be cognizant of.
Sure, that may not be true across the board, but the author's assumptions are far reaching. I mean, 250k? Really? I'm not questioning his honesty, I just envy the bubble he lives in.
Or you could work for Google in Zurich, they apparently pay slightly more than in the bay area. Although that's nominally, after accounting for cost of living it may be less.
Is this an omission in the post, or is the early exercise option less common than I thought?
So the startup people talk about experience in the context of assuming you will also want to do a startup.
The author of this piece kind of ignores the value of having to make those difficult choices in the face of shipping something. But that value is only towards actually starting a company. It's not nearly as valuable at a large company.
So that bias shows through in the writing although I agree with the rest of it. It's just a tiny argument towards the value of startup experience that in context for some people does have immense value while for others it is negligible.
I was just perceptive enough to notice, that, copy the entire table into a comment and pontificate on it, then notice that I missed the sentence in question immediately after commenting, and delete it 3 seconds after posting it. :/
There are many pictures online of d100 dice clearly showing a '100': http://www.amazon.com/Role-Playing-Dice-Spherical-ZOCCHIHEDR...
And while the argument for rand() starting at 0 is true for Perl, even this is language dependent. More frequently, rand() doesn't even take an argument: http://linux.die.net/man/3/rand
My recollection of 100-sided dice was that it was often printed as "00", so you could take it as either 0 or 100, depending on your need.
I make ~$110k/yr after taxes (!) and insurance and I work 10 hours per week, tops. I literally watch Netflix more than I work on an average workday. I know it's not great money (don't have a Tesla), but it's quite cozy.
Thoughts?
http://www.payscale.com/research/DE/Job=Senior_Software_Engi...
Should the goal be to spend time studying for interviews, or is this some other strategy? This article assumes you're at some level to command this level of compensation, but how do you get to that level to begin with? I know the classic advice: do good work, write excellent code, etc, but is there more specific advice?
One of the guys tried to arrange that where I work, and he ended up retiring.
I think if enough people asked for it, it could become more mainstream; we spend way to much time at work IMHO.
"You should figure out what the relevant tradeoffs are for you."
The author is just summing up his experience. Individual mileage definitely varies!
Orthogonal to the point of the article, but the only time you can really get a salary bump is before you start, so make sure to negotiate like hell before you get in. Once you're in, you're going to be grinding to get a 3% raise (contrary to what the OP states).
I've been promoted faster than most, but my numbers stretched over a 5 year timespan still work out.
Negotiated a 40%(!) raise after 1.5 years because I was kicking ass and had +40% offers in hand(!) from other BigCo's that I interviewed at.
Since then I've been getting 2-3% cost-of-living raises annually. I would say my performance is above average, but that's my opinion.
Definitely not seeing 10% or $30k annual raises and my total pay is significantly below $250k still. Maybe I need to do another round of external interviewing again.
That being said, I like my work and have good benefits and really good compensation compared to non-tech work.
Not saying there are no roles like this--just saying this probably several standard deviations from the mean, and not useful as a "back of the envelope estimation of big company tech salaries in general"
MPG1 is the entry level grade BTW