
Poll: Full-time software engineers over 200k, how'd you get there? - michaelochurch
I'm kind of tired of all of these salary surveys because I don't trust them, but I am curious and think that it would be useful for the HN community to get advice/inspiration from some of the most financially successful engineers.<p>So, for the developers making more than (plus or minus) $200,000 per year in salary:<p>How much are you making?<p>Is your income stable or volatile?<p>What industry are you in?<p>Where do you live?<p>How long did it take to get to your level?<p>What kind of work do you do?<p>Do you enjoy it, or is it the stereotypical "highly paid because it's crappy" work?<p>Is this a short-lived opportunity, or do you expect it to exist in 5 years?<p>What would your advice be to a 20-year-old aspiring developer? 25? 30?
======
larsberg
When I was working at Microsoft, after about 6 years I was well over $200k a
year (before cash bonuses).

About 3/4 of that was salary. The rest was primarily rolling stock grants
vesting. Most of them were a grant of X shares over 5 years (IIRC). I got one
grant every year and two in a couple of them (gold star bonuses). Once you
have enough of those grants rolling in and they get larger as you continue to
"level up," they account for a larger and larger portion of your compensation.

These types of packages are what are known as golden handcuffs. When I quit, I
left over $350k in ungranted stock shares on the table.

I really enjoyed the work. I had to make a location change for family reasons,
and though they offered it (and I tried it), remote work is not Microsoft's
forte.

As for advice, when young: learn. Avoid jobs at either big non-software
companies or startups where you (at 20-something) are the most senior software
person. At 30, make sure you have been networking well, as the vast majority
of senior hires into _good_ positions are done through networking your way to
a hiring manager who then sets up the interview. Especially if you are making
a field change, as the filtering process for hiring experienced people can be
brutal.

~~~
volandovengo
Thanks for the insights! What level (in the hierarchy) were you?

~~~
larsberg
I got to my compensation level (L64) as an individual contributor.

I switched to be a first-level manager for a couple of years, but there was no
bump in level since it was the same effective scope (12 directs).

------
boston_quant
_What industry are you in?_

Quantitative finance

 _How much are you making?_

155k in salary, 100k - 250k in bonus and equity grants.

 _Is your income stable or volatile?_

Salary's been very stable, bonus fluctuates a bit more dependent on the
vagaries of the market.

 _Where do you live?_

I live in Boston.

 _How long did it take to get to your level?_

5 years.

 _What kind of work do you do?_

Trading signal research, statistics, machine learning, discrete optimization.
Also a lot of time working on infrastructure, operations, and communicating
with different stakeholders.

 _Do you enjoy it, or is it the stereotypical "highly paid because it's
crappy" work?_

I enjoy it. The work-life balance is great(40 hour weeks), and I work with
smart people on interesting problems.

 _Is this a short-lived opportunity, or do you expect it to exist in 5 years?_

Jobs like this will definitely exist in 5 years.

 _What would your advice be to a 20-year-old aspiring developer? 25? 30?_

The world is your oyster if you can master the following:

\- doing difficult technical things \- knowing the business side of things
well and always working towards good outcomes for everyone involved. \-
communicating well, both in person and in writing \- working independently on
original, important ideas _that are germane_ to the business activity you're
involved with \- being friendly, positive, and easy to work with

It also probably helps to pick companies and industries where you're
appreciated for all of those things.

~~~
bearmf
300k for 40 hours a week in quant finance after 5 years in Boston? You are
very lucky indeed. Most people don't make this much after 5 years in New York
and usually work much more.

~~~
boston_quant
I'd be the first to tell you I'm very lucky, on a number of levels -- getting
a position in the first place, stumbling into a firm with a healthy attitude
towards work volume, etc. I mainly wanted to get a data point out there for
others.

To answer some of the other downthread questions:

\- Educational background: Ivy League, comp sci major and math minor. I wasn't
the smartest person in any of my classes, but I got my work done well and
didn't blow it off.

\- I didn't have any connections that helped me get in, but had been pretty
interested in the markets for a long time.

\- As for chances of getting in, I'd say that it's definitely still possible
but harder than it was. Most of the quant finance firms draw from the same
pool of seniors graduating from highly selective colleges, and mostly just the
good programmers from that group. Finance is also pretty cyclical in its
hiring -- most firms were probably hiring record numbers of people right
before the financial crisis.

I still have a copy of the cover letter I sent to apply for a job in
structured credit products at Bear Stearns.

------
Fassenur
In my case, finance. It's really not hard to make $300k/yr and the sky is the
limit if you learn how to help _generate_ revenue. You can do this in just a
couple years easily. The problem is that (for me at least) the work is not
satisfying (or worse) and the culture is terrible. Most people don't last all
that long or aren't very happy.

The other way I've earned significant compensation is by being hired at a
senior level, a VP of Dev or really any very senior technical position. At a
company with money, these roles can easily make $200k in base salary, and much
more with bonuses/equity.

The thing to keep in mind I think is that inflation is a very big factor.
Making $120k in 2003 is effectively the same as making $150k in 2013. The
numbers keep getting bigger, so $200k salaries really aren't that extravagant.

And it doesn't matter how much you make if you don't save. Plenty of $200k
earners save less than $100k earners do. Anyone who can save $50k/yr is going
to be a _very_ happy camper in the future, and most young people could easily
do that on $120k if they wanted to.

~~~
yekko
Keep in mind the housing price. Making 200k on a 1.5 million house is
significantly poorer than $150k on a 300k house. All your extra incomes goes
towards interest payments and then some.

Inflation have been crazy for the last decade, salary is finally starting to
catch up, especially this year.

You know things are getting good when recruiters email out the salary numbers
on initial contact.

~~~
jonknee
> Inflation have been crazy for the last decade, salary is finally starting to
> catch up, especially this year.

Not really. Housing prices raised significantly in a few markets (the SF Bay
area a prime example), but inflation has been average for the past decade.
That makes sense considering we had a recession, it canceled out high
inflation years like 2007.

[http://www.usinflationcalculator.com/inflation/current-
infla...](http://www.usinflationcalculator.com/inflation/current-inflation-
rates/)

~~~
wisty
House prices aren't part of inflation, are they? Generally, economists assume
that a house is an asset, and rent (or if people own houses, the rent they
would pay) goes to the inflation figures.

From the FAQ on your link:

> Housing: rent of primary residence, owners’ equivalent rent, fuel oil,
> bedroom furniture, etc.

So house prices aren't included, just imputed rent.

------
cityzen
Advice for a 20 year old aspiring developer? Travel. Go to Europe, get off the
grid, see the world. The struggle you will have today and 10 years from now to
make $200k will be the same, but you'll never be 20 again. I don't regret
anything in life and although I probably could have done more to get ahead 10
or 15 years ago, I was traveling in Italy and Greece and experiencing things
that were easy to pay for w/out having kids and a mortgage. It's easy to
obsess about salaires when it's the "reality TV" of our industry but, as you
hinted in your question, most of it is BS.

The biggest lesson I've learned in life is that wealth has nothing to do with
money and everything to do with time. You should work to live not live to
work. Fortunately for many of us, we love what we do but please don't forget
that you're only young once.

------
tosser8398b9
Answering from a throwaway: started my own software company 10 years ago,
selling SaaS w/ monthly recurring revenue in the CRM space. I was 25 at the
time, and left a 150K/year job as a lead engineer.

Endured 18 months basically zero income, then a slow climb from ~60K to
500K/year in 2012.

Monthly recurring revenue = stable income. Especially b/c our primary product
is a low price point, so our revenue is well distributed across hundreds of
clients.

Other than the sacrificial early years, the key points are:

1\. No VC

2\. Long, steady SaaS income ramp

3\. Small company - 3 people total, I'm the only developer (and always have
been), and I own the majority of the company. The company does over 1M in
revenue annually, with a low cost basis.

If someone wanted to go this route, I would advise them:

1\. Be a full-stack generalist

2\. Build a revenue-generating company by selling software (vs. giving it away
in hopes of attracting eyeballs & monetizing those).

3\. Learn a vertical (CRM, in our case), and fix a pain point. Don't follow
the herd into the sexy startup de jour.

4\. This is a marathon, not a sprint. Don't kill yourself.

5\. Offer extremely good customer service

~~~
mapster
would love to learn more about your path - maybe a mixergy interview? :)

~~~
tosser8398b9
hmm. I answered from a throwaway account b/c I don't particularly want "the
internet" knowing how much money I make in a given year. So I don't know that
a follow-on interview would fit my psyche =)

------
semaphoreblink
I make about $200k as a (mostly) developer, so I can give you a bit of
guidance.

First, constantly improve throughout your 20s. Learn a new (programming)
language, read tech blogs, contribute to open source, etc. This will allow you
to sharpen your skills and get into the top X% of the class. Understand
operating systems, networking, security, plus higher level stuff (read CIO-
focused magazines, technology strategy blogs, etc.) Volunteer for special
projects at work whenever possible--these are often worth their weight in
gold.

Next, specialize. Go deep in one or two areas. Trends today are on mobility
and security, but there are plenty of others. Depends on what you're
passionate about, but try to get to the point where you're the smartest person
you know in that topic.

Oh yeah, you have to be passionate about it. You aren't a programmer, you're a
creator of things. An artist isn't a "paintbrush mover", and you're certainly
not a typist. Take it up a level.

To be more strategic, get into financial services. A good percentage of
developers make close to $200k after bonuses. Watch the firm though, some
place like Goldman will have you working 18+ hrs a day.

Live in an epicenter (San Francisco, LA, NYC, Seattle, and probably a few
others).

Ok, most important advice. Change jobs every 3 years. Most developers, no
matter how good they are, don't get a 50% raise, but it wouldn't be hard to
start around $60k, then jump to $85k, then to $110k, then to $140k. After
bonuses at that higher level, you'll be close to $200k.

Don't work 80 hr weeks more than a few times a year. Put in the time and the
effort when it's needed, but if you make it a habit, it'll become expected.
Work for a company where quality >> # of hours put in.

If you're 20, generalize.

If you're 25, specialize.

If you're 30, take some risks. You'll soon be the "old guy" in the room. Write
articles, books, talk at conferences, become an "industry expert" (hint: fake
it till you make it)

If you want to do consulting, as opposed to traditional work, you can get to
$200k, but you'll probably need to bill out around $120/hr or so. You'll need
to specialize in order to get a rate like that, or be available on-site,
because whoever hires you would have to think you're better than 4 or 5 people
in (insert-outsource-country-of-the-week).

Finally, exploit LinkedIn. Get to know a few good recruiters. Get to know
people in the industry who are "going places". Unfortunately, many of the best
jobs out there aren't advertised, you have to know people to get in.

That's all I've got. Good luck!

~~~
bearmf
I really don't get why you consider 30 old or even near that. In my opinion it
is a good time to do some self education, maybe change careers because many
people don't realize what they really want until 30 or so. "Industry expert"
on the other hand sounds plain boring.

------
viseztrance
Personally I'm more interested of hearing from people that work part time and
still earn a good pay check.

~~~
j45
You bring up an important point.

Making $200k/year is one thing. How many hours you end up effectively working
for it is entirely another.

There's cases where making that much means 6 days a week and 12 hours a day.
3700 hours a year of work instead of the 1900 that's full time... you make
200k/year, but it can work out to a little over $50/hr.

On the flip side, if you're able to keep your income effectively tied to the
value you generate (a portion of your salary based on money you make or save
the company), the multiplier effect is a truer way to effectively boost the
average hourly rate you have.

------
justanother
For several years running (5?), I made most of $200K, 3500 miles from Silicon
Valley (and 120 miles from the nearest large city). It wasn't for being a
rockstar, it was from stacking two fulltime jobs. It was a lot of hours, and
it sucked. Industry was 'webdev', and it's as stable as you want it to be.

Anyone can do it today. I still could. I just refuse to, now.

My advice is to not worry about a magic number, as long as you're comfortable
and happy. Nowadays I don't even always hit 100 in a year. But we old guys
really do get high off of things other than money. Things like a happy wife, a
house full of animals, and a sailboat that goes where the wind takes it.

~~~
tharshan09
Do you have any advice for someone who would want to pursue that industry now
that is in their early 20's? I agree you should strive to do what you love,
but if the pay you could potentially get is also good for it then there is no
harm trying? Would you not say that the hard work you put in your early years
allowed your wife and kids to lead a comfortable life now?

------
77ThrowAway77
So I'll give my general experience. I'm a RoR developer making 450k a year. It
took about 3 years of non stop pushing myself (80/hr a week or more) to get
here. I'm fairly unknown as a developer, so I'm not one of the bigger names. I
work for a consulting company like Accenture or IBM global services. How I got
here:

Basically I was a Java dev and pretty much knew RoR would be big, and knew
there were guys making 100k+ at it (this was 2008). At the time I was making
75k as a Java guy and I just wanted to see if I could become one of the best.
So i worked at it night and weekends, virtually non-stop till I got a Ruby
position for 85k. That let me spent all my time on Ruby which was helpful. I
tried for find every little scrap of info that would help, and overtime I got
better.

I got a job for 130k 6 months later and my mind was blown. It was so much
money to me it was just unreal. I didn't take it for granted though, I went in
and worked my butt off to try and tackle every big problem there was and tried
to pre-emt and issues that I saw, so I had a solution as soon as the problem
came up. That went on for about a year.

All this time the main thing is that I kept working on all my skills,
everything big and complex I could get my hands on that is. So I knew how to
troubleshoot any performance issue that came up, etc. I also relentless kept
it touch with recruiters. I know a lot of people on HN and Reddit aren't too
fond of them but I love them.

I did whatever I could to help them out when they were looking for people, and
made good connections because of that. When they emailed me I would just quote
a ridiculous rate like $200/hr and be polite about it.

Eventually I formed a contact with a large consulting company and they said
they could offer me something good but not what I wanted. I did the interview
and go the highest tech score in the country (a lot of that due to the fact
that there were slim pickings). They made the offer but I turned them down.
They said okay.

A few months later they got desperate and gave me the rate I wanted. I was
more than blown away, it didn't seem real at all.

I went to the client location and yeah, it wasn't glorious work but the pay
was insane, so I've kept at it. I live pretty frugally, more or less just
stocking the money away so when the gravy train ends I won't have to work as
much.

What do I attribute it to?

1) Work insanely hard. 40 hour work weeks are good and healthy, but I think
it's harder to become super successful without working a lot. As an employee
when I was getting paid that 130k I worked 65/hr a week even though I was only
getting paid for about 45 of those hours, just because I wanted them to know I
was insanely aggressive.

2) Find people's problems and solve them. I always tried to befriend high
level people and solve their problems to the point that they see me as
invaluable. When I got the 450k job I made friends with all the project
directors, found out their problems (like performance) and would fix it and
surprise them with it. This helped me to cement my place at the company to the
point that I was able to have a lot of control and influence within it.

3) Be nice to people even when they are mean. I get insulted by the client
company often. Their developers tell me I'm an idiot. That's sort of the
nature of being a consultant. The big thing is that I'm always polite even if
I don't think it's warranted. So I'll say "Hmm, interesting, why do you say
that". And then politely explain why they are wrong and then make them not
feel too bad about it by saying "Actually it's easy to be confused over those
things because of..."

That is probably more of a book report than is needed but that's about it. The
one thing I will say is that the money, while very good and nice to have,
wasn't the end all be all that I thought it would be. I figured I'd easily
meet the right woman with all the money I have, but I haven't, in fact the
women I have mentioned it to on dates didn't even care (or believe me, or
both). I don't really get treated any differently either, other than by the
developers who know that I know what I'm doing. I also realized that I don't
care about material things all that much. The most fun I get is out of
achieving new things, rather than things the money can buy.

In the end I'd say the success was a result of hard work, a lot of luck and
aggressively marketing myself.

~~~
jimmaswell
What do people on HN and Reddit generally not like about recruiters?

~~~
1123581321
They see recruiter contacts as spam and resent that recruiters are paid to
make placements with money that they presume would otherwise go to the
developer. Additionally they detest people who cannot program but work in the
technology industry.

I prefer to take the same approach as the $450k Rails dev and always provide a
recruiter with good leads if I have them. I have placed friends in good
positions because of this and have the option to do the same for myself when I
am ready to do something different.

------
_pmf_
> I'm kind of tired of all of these salary surveys because I don't trust them

I'm with you there. The chances of self-taught web monkeys in companies that
are loss leaders making a multiple of the salary of PhD level automotive
software engineers in established companies with profits in the hundreds of
millions to billions range are pretty slim, so I think we can just write this
off as mostly fantasy.

~~~
moxie
I think the best developers are often the ones that simply have a detailed
understanding of their domain's fundamentals. These are the people that could
spend an hour answering a simple question like "What happens when you type
'ls' in a terminal?" in absolute excruciating detail.

In my experience, this is exactly the type of thing that PhDs generally don't
know, and are often no longer curious enough to learn.

Whenever I am a hiring manager, I am pretty openly biased against hiring PhDs.
They definitely start at a disadvantage compared to a highschool dropout in a
hiring interview with me.

~~~
hyperbovine
> Whenever I am a hiring manager, I am pretty openly biased against hiring
> PhDs. They definitely start at a disadvantage compared to a highschool
> dropout in a hiring interview with me.

I sincerely hope whatever fool placed you in charge of hiring learns of this
fact, and soon.

~~~
derefr
> [Moxie Marlinspike] was the chief technology officer and co-founder of
> Whisper Systems, which was acquired by Twitter for an undisclosed amount in
> late 2011.

Someone who knows what they're doing, presumably.

------
weaselsgonewild
33, cloud computing (IaaS) industry, Austin TX. $215 OTE plus stock awards.

I realized earlier in my career that my success up to that point had far more
to do with my ability to communicate well and connect with people than my
technical abilities. I stumbled into the accidental profession known as
sales/solution/presales engineering and never looked back.

Its great to operate "in the revenue stream". I encourage engineers who enjoy
presenting about and helping others understand technology as much or more than
creating or operating technology to consider this path. There is far more
demand than supply for these roles right now.

~~~
js2
SE generally requires quite a bit of travel, doesn't it?

~~~
weaselsgonewild
Varies by organization and the nature of your product. An increasing amount of
the work is done virtually. Some SE roles demand regional travel, others
national, some international. Mine is pretty light - I'd peg it around 20% at
most.

------
yekko
Base + bonus + stock grant basically.

Checkout glassdoor.com to find those companies. Be sure to read the reviews
(especially the negative ones).

For reference, 150k base should easily get you over 200k total, if not more.
180k, and you are looking at close to 300k. 200k+ base, 400k total.

Anymore than that, you are a VP, you make your own rules.

------
columbo
It might be easier to think of $200k as -only- $100 an hour. That is not a
very high rate for a contractor. Anyone here who has been through a
contracting company has probably been billed at that rate.

The most successful that I've seen has always been one of three things. All of
these can be traced back to people I know making over $200k in the software
industry.

#1) Knowing a niche technology and/or industry, finding a company that needs
to staff and going in as a self-employed contractor instead of an employee.

I had friends making $200 an hour in 1999 because of this. I'd like to say
they were working in Lotus at the time, but I don't really remember.

Find a company and say "I live right down the street, you need X and it is
hard to find, you can either have me show up every day or have someone a few
thousand miles work on it" - for some companies it is easily worth the extra
$40-$60k to have someone local.

#2) Working on a well known technology but having something important on your
resume - and still going in as a self-employed contractor.

Being able to say that you are a major Spring contributor will open doors.
Being able to point to your name on the list of authors of Hibernate opens
more doors. It doesn't even matter if all you did was help update the docs.
It's just a selling point, and it works.

Most enterprise shops will think about it like this; "Either we hire Bob who
did some spring work for x-corp, or we pay an additional 40k and we get Lisa
who helped write Spring. If you ask me it's worth it to get Lisa".

#3) Biting the Enterprise Application Architecture Bullet - and going in as a
self-employed contractor

Can you confidently whiteboard the entire Oracle Enterprise Suite? Can you
talk about JMS queues, BI managers, the E-Business Suite and all that, ahem,
stuff? There's plenty of companies who have built very complex solutions to
simple problems and they need someone that knows how the wiring is supposed to
work.

...that's the extent of how I've seen it work. All three share the same trait;
find a company in need and pitch yourself as a contractor.

So I missed the whole advice thing. Here's what I'd say:

If all you want to do is make money then get yourself in as a contractor for a
specific industry. Let's say that is shipping, or distribution, or something
along those lines. The more time you spend doing X work for X industry the
more valuable you become. If you can walk into X-Shipping-Corp and you can
name-drop things like "Parcel Size Distribution" you'll probably be fast-
tracked into compensation discussions.

To give you a real world example, I did lots of travel software work years
ago, just being able to walk in and say "I worked with Sabre Worldspan and
Galileo" was enough to get me to an offer. Hell, I didn't even need to explain
what I knew about them (which wasn't much!).

That's really if you just want to make money. It isn't glamorous work, and it
pushes you into a very specific bucket, but you will most-likely be well
compensated.

~~~
tptacek
Careful! Consulting hourly rates and salary are apples/oranges comparisons.
Even in a really well-run consultancy your utilization might not break 80%.
You're responsible for your own benefits and for self-employment tax. And
you're doing all the work (or paying to outsource it) that your employer would
have been doing for you --- sales, marketing, bookkeeping, receivables,
payroll.

~~~
mtrimpe
They are apples and apples from the client's perspective though and as an
independent consultant it's quite possible to consistently achieve 100%
utilization.

~~~
dlss
From experience, it's quite possible to achieve 150% utilization...

~~~
tptacek
For an entire year?

~~~
nightski
I have 2-3 clients that put me well over 100% utilization for a couple years
going strong now. I have to routinely turn down work. Don't even really have
to look for it, and this is in the Midwest!

The one key I have found is not to sell yourself as a freelance consultant.
Form an LLC and pitch as a business. If you need to find a couple other guys
to help out for a large project do it. But you can command much higher rates
this way.

~~~
alexgaribay
> _The one key I have found is not to sell yourself as a freelance consultant.
> Form an LLC and pitch as a business._

Can you explain your reasoning for this?

~~~
gte910h
I can answer it for him: They pay more.

------
gdltec
Getting close to 200K working full-time as a software engineer is achievable.
You need to work hard and I don't mean number of hours but show that your work
has an impact in your team and your company. My advice to you is to look for
companies in the rise, the ones that are either profitable or are funded and
in the tech/internet industry. I am in Austin, TX and this salary is not far
from what some companies pay here to their software engineers (HomeAway,
RetailMeNot, Tableau, etc...)

~~~
hkarthik
This is good to know. I'm planning to relo to Austin from Dallas some time
next year and I'm experiencing some sticker shock at the housing prices down
there recently.

If the salaries are trending up, then at least it's making up for the housing
prices, unlike the Bay Area.

------
femto113
I've spent my career roughly half and half consulting and as a full time
employee, and while it is possible to earn more as a consultant it requires a
lot of extra effort (plus taxes, insurance, etc.), so in the end feels like a
wash. As a rule of thumb I'd say $1 billed as a consultant ~= $.75 of salary
(or $150K salary ~= $200k consulting).

Base salaries above $200K/yr are extremely rare, even for high-level managers
in substantial companies. In my experience as an employee at companies both
large and small moving beyond $150K/yr base salary in a non-executive role is
quite unusual. That doesn't mean you can't or won't earn more than that--it's
just that once you get to top levels as either an individual contributor or as
a manager companies generally want to align as much of your compensation with
the company's performance as possible, whether as bonuses, profit-sharing, or
stock.

In my experience as a independent consultant $100/hour or more is readily
achievable if you have a reasonably rare expertise (e.g. data
warehousing/business intelligence) and a track record of delivering high
quality results. I generally prefer charging by the day rather than the hour
and have billed as high as $1000/day. While there have been many months I've
billed $20,000, I've never billed over $200K in a year, work at that level
just isn't that easy to find (at least if you're not willing to fly around the
world).

I believe that there is a strong political interplay between these two modes
of employment. As a consultant I have more than once been the highest paid
person at a company--sometimes making more even than the executives. For short
periods of time this doesn't seem to be a problem, but pretty consistently
around 5-6 months customers become a lot more conscious of the dichotomy--I'm
often working alongside people who earn less than half of what I'm billing.
I've had more than one case where I've worked for a customer on an initial 2-3
month contract, had it extended on a rolling basis for another 2-3 months, and
then found them very serious about finding a full-time engineer to take over
my duties (they often offer me the job but usually it's not a great deal).
It's also common for them to call me back for additional stints, including
cleaning up problems introduced by my replacement. Even though it would
probably just be better to have just kept me around they hit a wall with
accepting the pay differential.

------
alexgartrell
With equity packages, base and bonus, many Google/Facebook employees crack the
200k figure.

------
j45
Being able to touch 200K and not work full time:

When I was 20, I decided I was going to get 20 years of tech/business
experience in 10 years. I'm under 35 today.

By age 30, I hoped to have the experience and talent of at least a 40 year
old, but have my 30's to chase what I wanted.

I must ask though: I'm not sure what you're wanting to get from asking those
questions. They're metrics but how you get to them, and why is more of the
"how could I apply some skills to my life", measuring the metrics doesn't get
you the results, let alone getting the result in a way that you would be happy
with.

I'll share a bit of my story and if you like, feel free to ask, or contact me
offline.

When I was 20, I had this habit of not thinking why I'd want to solve a
problem, or a challenge, and just do it.

I decided on my 20 in 10 after the dot com crash as a hedge for a life in
tech. Get ahead and stay ahead.

How I tied in my passion: I did my best to remember that no matter how
reasonably talented I may have been with technology, I felt I wanted to learn
about solving problems, and there's only one way to learn to swim, and it
isn't by reading, watching, or talking about it.

I feel a deep kinship with focusing on solving problems by seeing them as
puzzles. I don't care if the problem is small or big, they're all worthwhile
and can make a big difference in someone's life to solve if you truly care
about solving problems.

Today, I'm a full stack guy. While I've struggled to find a title the past 10
year that fits, I'm liking "full-stack", combined with one of system/software
architect/integrator.

If you're trying to make something do something with hardware or software, I
can figure out a proof of concept.

There was no map, or plan to get where I am, or where I'm headed, except
solving problems, and puzzles. It's a wonderful compass, and your relationship
with challenges and puzzles improves every time.

About 'highly paid because it's crappy work':

The work doesn't get any easier. You get better. At everything. Including your
own attitude. If you don't it's easy to say it's boring or unfulfilling. Even
greater challenges will await you in whatever you think is perfect, so you'll
have to learn the same skills of pushing through to find learn and do what you
need. As a byproduct sometimes you end up being that person who took 5 years
to learn to recognize what you need to do in an hour.

Everything is crappy when it's either growing out of control, or it's a
startup about to fail, or a unholy codebase. You will be guaranteed crap.
There is no smooth sailing, ever. The sooner that kind of kool-aid goes out of
circulation, the better. Your ability to deal with realities to make and leave
it better is an important skill to always work on.

My journey so far has taken me through .NET and J2EE at the same time, and
many other languages and frameworks. I am doing a lot of web and mobile stuff
now, but I get to back it up with experience in hardware, networking, sys
admin work, complex datacenter hosting of critical apps. Full cycle ERP (ie.,
SAP) installations. Custom middleware to speak between any combination of
legal, workflow, shipping, accounting, logistics, retail, and beyond. The
common pattern: writing web software to replace desktop software when it
seemed unnatural, kind of how mobile-only apps get that feeling today.

Was it boring? Maybe if I wanted to complain that it was really hard. If it
seemed like it at first, but then it became one big puzzle that no
20-something had any business doing. Now, I want to keep doing things that I
have no business doing.

At a certain point, you can not abstract away the fact that it will take lots
of work no matter how good and amazing the tools are. One thing gets easier,
something new will pop up.

My expertise is being able to be thrown down any well and coming out time and
time again. It attracts more wells. My specialty is pulling together a full-
stack to solve what others can't seem to figure out. Over time you do get
known as someone who can solve things and you get hired for figuring things
out -- not any particular language or technology you know.

The only skill I paid attention to learning was learning to take good care of
my customers in their terms, not my lofty explanations trivializing them and
their feelings. The first business model I was taught by a consultant who
eventually handed most of his customers to me for web/app/IT development was
this: Start with 10 customers who can pay you $1000/month, who are on the
upswing, and grow with them by delivering more value than you're paid (help
them grow and they spend more with you forever).

Sometimes, one or two customers made up way too much of my income and you
learn to adjust it if it's important to you.

~~~
thestoic
this is probably the most worthwhile response in the whole tread. From running
GroupTalent I have seen the most successful freelancers (those pulling in over
$100/hr) do these things: 1- hitch themselves to great growing clients 2- put
their clients feeling much ahead of their own 3- deliver value over and beyond
what is expected clients do not need highly paid (senior, architects, etc.)
devs all the time but when they do, they need a v good one. So whatever rate
they are paying is worth it.

~~~
j45
Thanks for the kind words.

1- About hitching myself to great growing clients -- I think it's important to
help them grow. In a way, either consulting pays for one's learning/growth, or
VC funding can, or bootstrapping can.

2- According to some in my life, sometimes I treat my clients too well, to a
fault. But clients have turned into friends, and a few even mentors..

3- Delivering more value than what you're paid = your cost doesn't matter as
much.

------
tutufan
I'm at mid-200s (NYC), but was at mid-100s (midwest) a year ago. For the last
decade, I've been opting for jobs with stable income, and these jobs will
exist for at least a decade.

As it's happened my recent jobs have been in either scientific research or
HFT. I initially considered that having specific domain knowledge in these
areas would be valuable, but I'm less sure at this point that it really is.
I'm leaning these days towards sharpening and extending my tech skills, which
works well because tech still fascinates me.

After having observed for decades, I'm a big believer in randomness in job
assortment, hiring, compensation, etc. I'm not saying there's no correlation
between merit and success/pay, but it's more like 0.3-0.4 rather than 0.9.
Someone else advised switching jobs every few years. This is probably a good
strategy in that it increases your odds of hitting a highly paid position,
regardless of your qualifications.

Advice: Do more of the stuff you'll wish you'd done more of once you get
older. Go have fun, get laid, travel.

Regarding work, try hard to get onto a team that as a group is happy, gets
along, and is reasonably productive. I've worked in places with lots of
brilliant, high-paid rockstars that hate each other, and (guess what) it makes
the place miserable to work at.

It's probably too much to hope for that you'll be able to find a job that will
allow you to do excellent technical work that is appreciated, compensated, and
profitable. Still working on this myself.

As they say, it may be better to reduce your spending by $10K/y than to
increase your income by that amount.

------
gohrt
Get a "standard" non-junior engineer job at Amazon/Google/Facebook.

------
nilkn
ITT: a lot of people with a salary below $200k responding to a question about
people with salaries above $200k. Also a lot of contractors who barely pull
$200k total with no benefits and extra taxes to pay.

There's a big difference between having a total comp of $200k, including
stocks, bonuses, and golden handcuffs, and having a _base salary_ of $200k. I
assume this thread is wanting the latter, since

* it is common at Google, Facebook, etc., for any senior dev to get $200k total, including all forms of compensation;

* the OP states "$200,000 per year _in salary_ ".

------
TomaszZielinski
One word: value. You earn what you deliver, deliver more and you will earn
more (provided that you can price your work fairly).

I don't get why people start conversations with asking about money - money is
merely a derivative of the value you deliver and your marketing skills in
convincing people that you really deliver that value.

------
alok-g
Mine may be a special case, so I may learn more from the readers here than
advice some!

== Background (Combination of breadth and depth across EE and CS) ==

Electrical engineer by education, I am a full-stack "technologist" covering
everything from semiconductor device physics to analog/digital circuit design
to software (C/C++/Java/Python) to specific application domains (electronic
displays, natural language understanding, MEMS/sensors, digital image
processing and computer vision, augmented reality, thin-film optics, etc.) I
also have experience as a team-lead, project and people manager and lead
technology architect. Thanks to Coursera, I feel comfortable with more domains
including machine learning, databases, etc., though have limited experience
with them.

Needless to say I cannot be an expert with all of the above with just 13 years
of experience, but have generally impressed folks in their respective domains
who see me as an expert in their domain sometimes without realizing that I am
doing the same across several domains. An optics guy with more years of
experience than me once asked me thrice about my background in the very same
meeting as he could not digest the fact that I was barely an optics guy at
all.

== Result ==

Within any given job, it does not take people long to recognize the
combination of breadth and depth that I have. But this is still a few months
for recognition within the team (scale of 5-10 people) and a few years for
within the company/department (scale of 100-300+ people).

Moving to a new job brings its own challenges. While everyone who knows me
tells me that I should be in high demand, most of the jobs do not demand that
broad an expertise, which often means (1) they are not ready to pay :-) for
it, and (2) the job does not excite me enough. There are architect-level jobs
which are an ideal fit but they are not most of the jobs statistically.

My salary levels (including cash bonus/stocks) have gone well above 200K per
year consistently for my last job in the bay area as they recognized me as
indispensable for the project that I was leading (~70 people) due to (1)
inability to find people with the needed breadth (generalization), and (2) my
being on the specific project for several years (specialization). Note that
while I was leading a big team, I was still doing a lot of technical work
including coding on a weekly basis.

== Advice ==

Some comments here have advised on generalizing / specializing. In my opinion
though they are both bets you are place on your career. If you become industry
expert in a specific domain and that domain ends up expanding over the next
decade, you end up expanding too. Like everywhere else, you have to anticipate
the future and be in the game. So generalize to keep your mind open and
prepared for new challenges future can bring, but also specialize in an area
that you expect to be in demand in the future.

Two, in my experience, high salaries do not come by themselves (i.e., just by
you having the skills and experience). You have to create a path for it
consciously by constantly figuring your own potential and (asking for) moving
towards roles of higher responsibility. You need to time job switches
according to your situation -- becoming specialized in skill needed by one
company makes you highly valuable for them (= potential for higher salaries),
but also fall in trouble if your project/company does not do good in the
future.

Specializations that many companies need that also pay highly would not
generally remain specializations for long as more people should pour in --
unless there is some barrier to entry like years of education / experience,
them failing to recognize the value of this specialization, or simply aptitude
or intelligence. The latter does not show up on your CV and so requires using
your network and recommendations, which by itself takes several years to
build.

Next to generalizing across a wide set of domains is gaining mild levels of
familiarity with them just enough for you to become comfortable with the
terminology and trends in several domains. One of the things I have found
helpful is to read the otherwise often ignored first two chapters of books in
multiple domains. I now find MOOCs much better though. My latest has been a
course in human physiology, which turned out to be quite a challenge though I
passed. Phew! :-)

Lastly, you have to constantly strive to keep your brain sharp, challenge
yourself and take risks as others have noted.

------
Maven911
3 options: At this point, with the amount of people here, I dont think we can
trust the community self-reporting as reliable data

Aside from thr poll you would factor in bonuses and stock options to reach
that level.

And then theres the computer programmers who are actually in management

------
coldcode
Don't work in Texas.

~~~
hebleb
As someone who has been interested in relocating to Austin, can you explain
why you say that?

~~~
gyardley
He's saying that because salaries aren't quite as high here.

On the other hand, there's no state income tax and the cost of living is
lower, so you may come out ahead. Depending on your personal tastes, you may
find the lifestyle better as well.

It's not _impossible_ to get paid fairly well down here, of course. I've seen
close to $200K offers, although they were for managerial positions rather than
individual developer roles.

------
suyash
HN: This is not a poll and the person who submitted this post need to edit the
title and replace is with "Ask HN". Please follow the conventions.

------
dschiptsov
This is much less related to IQ or skills that to luck, breeding and catching
the moment, so the question itself is meaningless.

How a person could get an mid-level IT position in, say, oil company or a
finance institution etc? It is mostly about whose son you are, and then -
which elite college degree you hold.

