Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: I'm 26 and would like to make 100k/yearly before I'm 30. How do I do it?
33 points by randomnamehere on June 4, 2013 | hide | past | favorite | 49 comments
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.

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.

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.

Are those my only two realistic options? If so, are there any recommendations on which route I should go or any general advice?




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!


"What products/site could you build that charges $30/month (SAAS) and can get 500 signups. Just that would get $18k/month in revenue [...]"

Well if that's the process then why not just up the ante and figure out how to make some absurd amount of money?

The reality is you're not going to be able to answer that question with any degree of accuracy as to make the exercise meaningful.

All you can do is put something out there that you believe has potential and gauge how profitable it is and consider the growth potential in the future.


>> If you are that good with Javascript - jump on the node.js bus rather than Ruby or C#.

Everyone knows JS - it will be much harder to compete in future. Better learn an old ERP system that gets updated and has a decent market :).


Why your node recommendation? Does node pay particularly well?


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.


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


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).


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!"


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?


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?


>>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.

This sounds great, but will it work in the current job market? If I have large experience say in Rails and want to join a company working on interesting problems, but they use Django. What are my chances to sell myself to them?


Thanks for asking this - it raises a point that I forgot to make.

You're not going to do as well at a company which hires based on the solution as one which hires based on the problem. Ideally you want to be in a position where you're being held accountable by people for which the specific technical details of the solution are mostly out of their scope.


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.


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.


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.


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.


"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.


Ah I probably should have written that clearer --

I started off answering his question but then stopped going in that direction when I figured he could get full-stack experience (which was more what he seemed to be looking for), instead of writing C kernel code somewhere.

This... was not my clearest post


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


> 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.


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


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.


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.


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


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.


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.


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.


Yes, in 3 to 4 years, programming in Ruby or Python will be considered a skill that entry-level positions should have. In fact, I envision a future in which even the doormen of a building hook into hackernews APIs to verify the account standing of visitors.


Now, now... I can accept snark for snark. Entry level programmers, not entry level people. I already expect any resume for a direct-from-university applicant to have at least "HTML, Ruby, Java, Python". It's basically a bare minimum for a programmer these days. You don't have to know Ruby specifically, but it's a red flag if you only have one or two languages. If they don't have a lot of depth, they at least need plenty of breadth.


Entry level programmers will continue to have things taught in university - seemingly more Java than anything. Changing the scope of your comment to mean "entry level programmers" and not just "entry level people:" the kind of person with very cursory HTML knowledge is different than the kind of person with a little knowledge of Ruby. HTML is a mundane system of syntax, approachable by even a marketing major at a party school. Being able to write a little Ruby is a far different beast as it requires some ability to handle logic and referential extrapolation - even if most Ruby coders can't seem to 'hello world' without installing a few gems.


This will not happen, especially with the recent surge in python.


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.


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


You are looking at the problem backwards.

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


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.


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


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.


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.


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


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.


$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.


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.


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.


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!


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.


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

https://angel.co/jobs


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.


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...

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.


"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.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: