
Ask HN: I'm 26 and would like to make 100k/yearly before I'm 30. How do I do it? - randomnamehere
Like the title says, I am currently 26 and would like to make at least 100k a year by the time I am 30. I am a front-end dev with about three and half years experience but, professionally speaking, I feel like I am stagnating.<p>I have a very deep understanding of html/css and I know enough jQuery/JavaScript to handle DOM manipulation, as well as build out image sliders, tabbed content areas, etc. etc. I am also very knowledgeable about WordPress. As far as locations go, I live in the central US and won't be moving to San Francisco, New York City or any other large coastal city. Taking that into consideration, 100k would be considered more in the central US than somewhere like San Francisco.<p>Basically, I see two options. The first option is to start learning a backend language, something like Ruby/C# and hoping for the best. I seriously doubt I could get enough experience learning a new language part time though. My second option is to really start focusing on MVC JavaScript frameworks and becoming proficient in something like Backbone or Angular.<p>Are those my only two realistic options? If so, are there any recommendations on which route I should go or any general advice?
======
johnmurch
If you are that good with Javascript - jump on the node.js bus rather than
Ruby or C#.

In terms of making more $ the first thing I would work on is salary
negotiation, not necessarily skills. There are a few great salary courses on
udemy that can help with asking/answer the right questions when looking for
something new or even a raise.

In terms of location/salary - I would also recommend looking to freelance for
companies in NY/SF as you can get a higher rate rather than central US.

Lastly - I would say to not just think in terms of $100k but in terms of
products. What products/site could you build that charges $30/month (SAAS) and
can get 500 signups. Just that would get $18k/month in revenue or over
$200k/year. Now $30/month may sound like a lot but take a look at Basecamp
(<http://basecamp.com/pricing>) $20 minium a month or dive into b2b saas and
checkout some of the crazy #'s they charge - <http://www.marketo.com/small-
medium-business/pricing.php>

500 clients sounds like a lot at $30 - but no matter how you do the math (10
clients $1000/each) or (100 clients $100) a product can easily pay over your
$100k/year especially if you spend the next 4 years building it. Focus on
getting your first paying customer within 1 month of today and just keep going
hard.

My 2 cents :) Good Luck!

~~~
iends
Why your node recommendation? Does node pay particularly well?

~~~
Eyes2design
Node.js is a section of services that will be needed now and in the future to
create distributed web services/ sites, so yes node js is important to the
next level of the web resources.

~~~
iends
I don't think you've read my question.

~~~
meekrabR6R
I believe s/he's saying if you invest the effort to learn Node (considering
you already know js), you could find yourself in a significantly more
marketable position in the near future (thus increasing the chances of making
that 100k).

------
benjamincburns
I'm 27. I've crossed the 6-figure barrier twice.

1: Consulting on the side.

Find a company that has you working an actual 40 hours per week (government
contractors are good for this), which doesn't bar you from doing some side
work (bonus points if they have a culture which supports this). Then, find a
client or two. You won't have to charge much in order to cross the six figure
barrier.

2: Work outside of the software industry

Within a year of when I started consulting, I was recruited by a shrinkwrap
products company to work in their intelligent products division. Because I was
already consulting successfully, and because I didn't really feel like I
wanted the job, I threw out some high numbers during salary negotiation. In
the end I wound up with a compensation package North of six figures in an area
with very low cost of living.

General advice:

Quit focusing on what _solutions_ you'd need to learn in order to get to the
next level. Instead focus on what _problems_ pay the most. Never, ever market
yourself in terms of the tools you use. Market yourself in terms of the
problems you solve.

Edit:

One other thing - definitely do learn more. Always. The more you learn, the
more problems you'll be able to solve. Just make sure that you're letting the
problems focus your learning and career development, not trends in solutions.

Edit 2:

Did I really write "done crossed the six-figure barrier" up there? "Well
shewt!"

~~~
randomnamehere
Thanks for the advice, I appreciate it! It seems like a lot of people are
suggesting consulting. Do you know of any good resources on how to start
consulting? I live in an area with a population around 200k and there really
aren't any large business interested in hiring people to do web dev work.
Also, businesses here severely undervalue developers so the chance is finding
a decent paying gig is quite low. Is it possible to do remote consulting or
something along those lines?

~~~
benjamincburns
Remote consulting exists, but it's harder to find work that way -- infinitely
so if you have no reputation.

The only advice I can really offer on how to get started is to network. Talk
to people about their problems at work and take genuine interest, even when
they're not a potential client. Where possible, help people out in meaningful
ways and show (don't tell) them that you're smart and that their problems are
important to you. You'll probably end up doing some free work this way, but
you'll make friends who trust you and that's far, far more valuable. As long
as you're clear that you're looking for consulting work, it'll find you
eventually. Just don't belabor the point.

One trick of mine is to focus on selling the minimum amount of complexity.
Figure out exactly the value that the customer is looking for - often times
they don't know what it is. There's a saying that a person in a hardware store
looking for a quarter inch drill doesn't need a quarter inch drill, they need
a quarter inch hole. But more importantly almost nobody needs a quarter inch
hole -- maybe they need a new shelf. If they need a new shelf, maybe they just
have too much stuff. No matter what it is, get to the bottom of their problem
and sell them the simplest solution with the maximum value, even if it doesn't
make you any money today.

Also consider trying to tackle some stickier problems in well-known open
source projects. PostgreSQL is a favorite example of mine for this as they
make it very easy to contribute. Why hire someone who "knows" PostgreSQL when
you can hire someone who helps _write_ PostgreSQL?

------
lmm
The money's what matters? Go into an investment bank (i.e. Goldman Sachs) and
start doing stuff. It's easier to move teams internally than get hired for
exactly what you want. Demonstrate that you are willing to put in the time and
take the risks and you'll get your 100k, for all the good it will do you.

Learning a new language part time is easy - if you're smart you could
certainly pick up Ruby or C# in a couple of weekends. You don't need
"experience" to get good at something, only to get hired for it. So again, the
secret is to get hired for a position that's nominally doing something on your
CV (web developer), then transition within the company to doing what you want.
If need be, once you have your C#/whatever "experience" from doing it at this
company you can then use that to get a job as a "C# developer" at a second
company (possibly at higher salary). It's insane that this is how things work,
but that's hiring practices for you.

~~~
Rickasaurus
This. They'll treat you like shit, but you'll be making great money.

If you want to be treated well and make money, well you're going to need to be
a high-tier professional. Maybe a software architect or data scientist. Both
require a lot of knowledge and practice.

~~~
_progger_
I know people who work in IBs and are treated well. There is more then one you
know. Sales still make more money then devs in Google but you could think the
opposite based on their marketing. Maybe working in IB is more honest. You are
not trying to "change the world" by working on some small feature in another
smartphone OS or something like that.

------
hardwaresofton
Dive into something that compiles.

And also, what is the job pool like around you? Certain companies just don't
pay as much as others.

If you want to continue web dev, learn the backend. Take some time, and write
a small webapp in Django, Rails, Play Framework, Node, and anything else that
sparks your fancy (and learn their accompanying languages).

Also, one other thing that will get you paid really quickly is databases.
Learn your RBDMS theory, optimizations, normalization, etc. And learn about
some noSQL databases, and you will qualify for a whole different class of
jobs, which will be higher paying, for sure. Much less people are
knowledgeable about databases.

These days, the easiest and quickest way to get a rise in paygrade is to
switch jobs and renegotiate.

[EDIT] - philliphodgen's answer is possibly more right than this one. A
practical application: go look on job sites like glass door, and see how much
money is getting paid on average for which job descriptions, then get those
skills.

~~~
_progger_
"Dive into something that compiles. ... Take some time, and write a small
webapp in Django, Rails, Play Framework, Node, and anything else that sparks
your fancy (and learn their accompanying languages)."

Err... None of that compiles - they get interpreted.

~~~
rco8786
The Play Framework compiles ;) But yea...other than that, wtf.

~~~
danneu
> Dive into something that compiles. > If you want to continue web dev,
> Django, Rails, Play Framework, Node, and anything else...

I imagine they're alternative options.

~~~
hardwaresofton
This is exactly what I meant, congratulations on discerning it haha, I got
confused about what I wrote also.

But the point stands, those things will give him full stack experience while
staying in web land

------
beauzero
Move to Salt Lake or Atlanta...depending upon your social likes/dislikes.
Atlanta has a very large 6-18 month consulting community. Better than anywhere
else in the US vs. cost of living. 100k here is equivalent to 175 in New York
or San Fransisco. Consulting because you can move/learn every 6-18 months.

------
drharris
Advice about Ruby or Python is stupid. Sorry, but it is. You focus on that,
you compete with hundreds of thousands of willing people, which drives salary
down. You have to be truly exceptional to make more than $70k outside of
SF/NYC, and in just a few years of learning you likely won't be that special.
A trendy language or platform is never going to return the highest salary
unless you're in the SV mind-bubble.

If you truly want to make that kind of money, become an expert in one of
these: Fortran, Cobol, mainframes, project management and architecture,
Oracle, SAP/Sage/SAS (or other ERP dialect). They're boring, but that's
precisely why the jobs pay well. These jobs are almost always open, and almost
always pay more than 100k with 5+ years of experience. You pay for it in
stress though.

~~~
noahc
I can verify that $70k outside of SF/NYC is very achievable for less than
exceptional programmers doing Ruby/Python work.

~~~
drharris
Maybe at the moment, but not by the time he's 30. It will go the way of people
turning in a resume with "HTML" experience. It'll be expected as a minimum.

~~~
noahc
A couple things make your scenario less likely than you might believe.

1\. Salaries rarely go down once you've landed the job. So if he can get an
$70k job now and get a $5k raise each year for the next 4 years that puts him
in a pretty good spot to switch jobs and jump to the $100k.

2\. Depending on his desire he could leverage his programming + design skills
in a unique way that allows him to get to $100k from freelancing, building
products, etc. Learning the backend is a stepping stone not the destination,
but combined with #1 above means earning an extra $20k on the side is very
doable.

3\. I doubt that the ability to build enterprise applications out of
ruby/python/js will ever be seen as bottom tier office work. People can't
figure out how to work their own printers at work, I don't think we'll see
these people suddenly learning how to build enterprise applications. Again,
even if that is the case, sit tight and your salary probably won't decline as
long as you don't leave the job.

~~~
drharris
Agreed, if he could somehow get the $70k now. He mentioned no existing backend
experience, so that was my point about getting this future backend ruby job.
One thing in his favor is that people are throwing money at it now, and he
might be able to trick his way into such a job with just a Code School course
or two under his belt. This would be the "job hacking" way to accomplish it,
at least.

------
waterlovinguy
You're aiming way to low. By the time you're 30 you may be married, might have
a child, might like a home. If you drift into Silicon Valley proper, where I
live, your $100,000 will not allow you to buy a house. What were once working
class neighborhoods are now filled with $2.5 million dollar homes. (But the
houses are the same.) Aim higher, or learn to love to commute.

Most importantly, enjoy what you do. No matter how much you make, if you hate
going to work, it won't matter.

~~~
rco8786
He said he does not want to move to the valley or NYC.

------
philiphodgen
You are looking at the problem backwards.

What do people want so badly that they will give you $100,000 to get it?

------
dk8996
I have been struggling with these types of questions in my career as well. For
a while, I was more of a front-end developer doing Swing rich-client desktop
applications and touched on some mobile development with some basic back-end.
The last few years, I spent doing more of the back-end development, "big data"
technology like Hadoop/HBase and worrying more about HA, consistency,
redundancy. What I found is that if your not careful with the type of job,
this applies to everything but more so for back-end, you can be stuck doing
grunt work, data quality, operations and system up keep. Moreover, I think
most of the innovative, creative, and interesting work is moving away from
back-end and into the space of data scientist type positions. So currently I
am stuck in between, I have experience in front and back end -- this makes it
hard to find the right job. I think I might go back to doing mobile
development just because it seems to be more of a greenfields with some hard
problems still to be solved. In terms of pay it's about the same, maybe back-
end developer gets 10% more. That's just my thoughts.

------
terrykohla
Salary may be misleading and not the best indicator of how much you're really
making. For a more accurate number you have to calculate taxes and cost of
living at the location where you're working as well as benefits (if any).

1\. don't stay at a company more than 2 years (unless they give you what you
want) and ask at least 20% more every time you change jobs.

2\. become a contractor and eventually run your own business

------
sharemywin
Options not on coasts: \- Own your own company, sell your as* off. \- Sales,
\- Management at small company then get hired at a bigger company. \- project
management \- consulting preferably at a large firm willing to travel alot. \-
specialized platform like guidewire. \- C# or java at a big company(banking or
insurance) jump around alot.

------
dominic_cocch
Become a full-stack dev and learn to negotiate your skills. If you want to
build skills quickly, you can always become a contractor. That way you learn a
new skill/framework/etc every 3-6 months. Contractors also make good money,
but may not always get the greatest vacation benefits.

I live in Minneapolis, and I've noticed that the bigger companies pay more.
Best Buy, 3M, Pearson, Microsoft and Oracle are notable ones near here. If you
don't mind giant, slow moving corps then an easy way to make more is to work
for one.

100k for a front-end or JS developer is very doable, especially if you know
the MVCs and a backend language. Node.js might be a good path as its growing
quickly and it's done in a language you already know.

And lastly, build cool stuff in your spare time and list it all on a nice
website. Use those projects as proof and reference during salary negotiations.

------
Eyes2design
I'm 27, I do PHP Programming, I moved from Ar. to salt lake ut, There is a
large and growing need here for programmers. I know I need a frontend guy with
skilled in js, and html.

give me us a resume jobs@greenpolkadotbox.com

~~~
gee_totes
What's the culture like in Salt Lake? I visited there once a few years ago,
and there seems to be a nice pocket of liberal open minded people and artist-
types living there.

------
bobfirestone
$100,000 a year works out to be ~$50/hr. Enterprise consulting will get you
into the 6 figure club. It is not as sexy as working for a startup but a
lesson that took me too long to learn is work for the people who have lots of
money to spend.

The company I work for is hiring for front-end developers on the project I am
working on in Denver. It would put you over $100k. If you have strong JS
skills and are willing to come to Denver my work email is in my profile.

~~~
randomnamehere
I wouldn't mind enterprise consulting at all. Do you have any suggestions on
how to start down that road?

I would actually love to move to Denver but my wife is currently working on a
masters degree so moving is out of the question for the next couple of years.

------
garrickvanburen
It's definitely achievable. I'm and independent consultant in Minneapolis,
with a mortgage and kids. I went independent just before I turned 30 and have
passed that threshold every year since. How? through a ever changing mix of
consulting clients (throughout the US) and my own product dev. I agree w/
benjamincburns - focus on solving client problems rather than being a tool
operator. It's both more lucrative and more fulfilling.

~~~
randomnamehere
That is great to hear. Could you go into a little more detail on how you got
started consulting and exactly what type of consulting you do? Thanks!

------
bbayer
If you want to make notable money jump to mobile. You don't even have to know
Objective-C, Java etc. You may hire somebody to code and make decent money
even for basic applications. You can also learn mobile concepts by yourself
which basics are very much same with front-end tech. You can also built apps
with PhoneGap like technologies which I assume you may find yourself more
comfortable with.

------
_pius
I'd look at AngelList jobs, set the slider to $100k minimum, and see what
comes out.

<https://angel.co/jobs>

------
easymovet
It's a free market, always be interviewing so that you have offers to leverage
your current employer. The cost of talent acquisition is high enough that it's
always worth it to bump your salary than loose you to another company.

------
computerslol
Firstly, you are in the wrong industry to make money; however being 29 and
having made over 150% of your goal last year without living on the coasts I
have a few tips that might help you.

Unfortunately, those that make money decisions see you as just a resource. You
are a thing. You have a recurring cost, you produce products, and they don’t
really care about the quality of your work unless it becomes a problem. What
you are worth to them depends on the amount you are willing to take, your
rarity, and what it would cost to replace you. To make more, you should learn
to market yourself as a thing.

If you want to stay a front end guy, learn good design and develop your taste.
Business people in general have a higher respect for designers than front end
coders, as their work visibly and directly impacts the perceived quality of
the end product. Being a designer also gets you more face-time with product
managers, who’s opinions are generally taken seriously by the money people
when deciding your value. Being able to come up with both designs and
implementations for those designs will help you shorten the development cycle
on projects that you are assigned to (as there are fewer required meetings,
and you are not going to push-back on yourself).

In my experience the back-end plan is a better (but more difficult) one. It
will open more doors for you in the long run, and is less vulnerable to shifts
in the market. Your work will have more depth, and it’s an easier place to set
yourself apart from your competition later in your career. It's very important
that you focus on learning OO first, before taking a deep dive into the
language itself.

You CAN get to “senior” level without having a real understanding with OO.
Anyone that does know OO well (likely everyone in development management
depending on the company) will be able to tell you are a hack when they look
over your code, and will be less likely to promote (or trust) you. From a
development management perspective it is common to separate the developers who
work for you into two separate camps: cattle (who build what they’re told),
and problem solvers (who solve problems). At all cost, you want to be in the
latter camp. If you find yourself in the cattle camp, it is easier to swap
jobs than change that perception.

[http://adriancheok.info/post/26835527269/secret-for-
innovati...](http://adriancheok.info/post/26835527269/secret-for-innovation-
the-shokunin-spirit-of-japan)

If you choose c#, the framework is massive. This is daunting at first, but you
will learn to love it. It is very discoverable (you can learn quickly by
poking around). Whichever language you choose, find some heroes in your
company, and talk to them often. Offer your free time to help them with their
projects. Ask them to mentor you. Read their code. Ask them to be rough on you
in code reviews. Never talk back to them, and listen to what they say; however
remember that they are just people like you, and your goal is to get better,
not to become them. These relationships will be important later in your
career, as these people will help you get jobs later if you are good to them.

The language choice depends on what sort of company you want to work for. C#
is not often used in startups, and ruby (as far as I know) is rarely used in
large corporations. There are exceptions to both, but the exceptions are not
what you want to bank your career on.

Whatever path you choose, this industry is difficult if you plan to be a world
class player (where the money is). You should move into something you enjoy
instead of making a decision based on earnings potential.

~~~
randomnamehere
"Firstly, you are in the wrong industry to make money"

Are you talking about the front-end side of things being the wrong industry or
web development in general being the wrong industry?

Also, i'm definitely not making a decision solely based upon monetary reasons.
I really enjoy what I do but I know there is the possibility to make more than
I am now and I would like to advantage of that possibility.

