Hacker News new | ask | show | jobs
by portman 5742 days ago
I'm in the Washington DC area, in which salaries are typically lower than NYC but higher than most other metropolitan areas in the US.

The highest-paid non-management developer that I know of had a base salary of $185k. That may or may not be the ceiling, but there certainly is some salary ceiling.

Ways to break through that salary ceiling:

1. Direct reports. If you manage even one person, then base salaries quickly go into the $200 and $300 thousands.

2. Highly specialized technical knowledge. For example, I know SAP implementers with base salaries in the $200s. They're not really "developers" anymore however.

3. Highly specialized domain knowledge. For example, a developer with enough knowledge of organic chemistry can make a $200k+ base at a pharmaceutical company.

4. Work for yourself. A fully-loaded consultant will easily make mid-$200k and I know several people who are consistently grossing in the low $300ks.

Note the importance of base salary. Bonuses and profit sharing can easily add 50% or more to your earnings. For example, the $100k developer at CoStar is probably taking home more than the $175k developer at AOL.

3 comments

4. Work for yourself. A fully-loaded consultant will easily make mid-$200k and I know several people who are consistently grossing in the low $300ks.

I will second that one. This seems to be about the norm for a developer turn consultant (at least in my group of freelancers) with a decade under their belt.

I don't think you are at your upper bound of your career level, but you are not far off, 150k seems to be the ceiling where you are going to start bouncing up and down.

A recruiter called me the other day to see if I had a flash developer in my network looking for a long term gig. They where offering 90k + 15% bonus for a flash developer with 3 years experience. So you are not that much higher than a mid level flash developer, I would not worry too much.

I'm sorry, but I never understood: What does "consultant" entail, exactly? Is it writing code for other companies, telling their devs how to write code, telling them how to engineer their systems, or what exactly?
Here's what I do:

(1) Write code that in house devs could not write. Usually integrations for multiple technology sets, including things that I can teach myself that others would need training for, and otherwise complicated pieces that might otherwise be neglected. Usually after I deliver an "app" (I usually try to stick to a self-contained deliverable), I participate in training the in house devs to maintain it (assuming that it needs to be changed).

(2) In my limited experience very few companies that have "bad" code in house recognize that their code is bad, so refactoring / optimizing / architecting is usually neglected. That said, I try to get in on the architecting side -- make sure good design principles are adhered to. I try never to re-write other people's code.

I'm flush with work and us. bill out approximately 25-30k per month and am always looking for subs to handle things that I can't (contact me if interested).

There are, of course, taxes that hit me then and I don't particularly like the work that I do so try to take longish vacations to work on projects of interest, but still I'm easily making upwards of 200k as a developer.

But then again, hackers might think of me (quite legitimately) as the trash collector of developers, mucking about in enterprise frameworks that no legit hacker would want to write code in. I guess that's why I'm paid so much...

Basically the trick is getting out w/ one big customer, letting that take up 70% of your time, working in subs on things that you can't handle yourself (but this may be difficult, none of my subs make less than $100 / hr), pursuing other projects that get you recognition (open source is good), actively contributing to the community, and then, unfortunately for many developers, networking.

But mostly I try to let my code network for me...

That was very informative, thank you. Is $100/hr typical for the US? Maybe I've been undercharging at $55...
I don't know what's typical but the best way to see if you're charging too little is to put in some bids for $60, then $65, and so on and see what happens.

I have worked for a guy that was able to increase his prices nearly 25% (for new customers at least, he understandably didn't want to raise rates for the longtime customers who got him started) just by slowly raising his bids until he found what enough people would pay.

Disclaimer: This was for a construction company that got new customers by word-of-mouth YMMV

This.

I vividly remember the day that I woke up and decided that from now on, I would charge $175/hr instead of $125/hr. Bookings actually increased.

Just keep raising your rates until

(a) You can't get any more gigs, or

(b) You feel too guilty to raise them anymore.

I will, thanks. Currently I'm way more busy than I'd like, which tells me I need to raise my rates. I might even end up making more...
You have definitely been undercharging.

$75/hr is the low end, and $200/hr is the high end.

As one data point: when I ran an independent consulting practice from 2002 - 2006, my prices started at $125/hr and grew to $225/hr.

Yep, it looks like it... Prices go down the larger the project is, but I have a tendency to cut them 30% for more than a few hours... Maybe I should keep them high and see what happens, thanks...

Do you mind if I ask what you did, roughly? I mean, what was the object of your work?

That's about my experience, although under a shorter time frame (6 months instead of 4 years).
How would one go about contacting you? Do you do mostly SalesForce implementations?
I do development in the Salesforce world but I wouldn't call most of what I do implementations. My blog, linked in my profile, has a link to my Linked in profile.
Yes.

But also performance tuning and administration and interviewing new employees and understanding their business and suggesting new software for them and telling them not to buy new software.

It's whatever you are better than them at and they will pay money for.

Thanks, I suspected it was a catch-all term, then. It also turns out that my side-business is consulting, but I wasn't aware of the term. Now that you've explained it to me, I can better market my skills, thank you.
Consulting = contracting, but you make more money. You basically sell yourself as someone who adds value, not just someone who fills in the blanks.
i agree working for yourself is a way to break through the ceiling... but it's largely irrelevant to what he should expect as "simply a developer." being a consultant involves more risk and requires more skills than being an employee. you have more risk and uncertainty about work. you have to sell yourself. you have more difficult access to health insurance. you usually get paid later than you would as an employee. you have more risk of not getting paid. you are responsible for collecting the money. you don't get any paid vacation. holidays means a lighter invoice. it's different. more risk = more potential reward
Agreed - while it seems to be a nice lifestyle for some, the stress of not having a steady paycheck, the constant seeking for new work and the obvious role of being a debt collector makes it something that I'm not sure if I personally can do (I am dealing with a client who owes me money from March and I am still having a hard time getting them to pay up at this point).
I guess maybe I am lucky or it may be a case of the worst experiences seem to have the highest volume setting in our brain and people focus on the horror stories. But I have only had one non-payment in the entirety of my freelancing experience. All of my clients pay on time (net 30) and I always require 50% payment for the first invoice before I start work. I do this to ensure that I have a paying customer and if they are not willing to front 50% for operation costs associated with the development then they are most likely not a customer that I would want.

The chasing of debt has never been more than a friendly reminder email and my paycheck has always been steady to the extent that I can decide how much I want to earn that week with a pretty handsome upper-bound. It may be the type of consulting that I do (it is not a saturated market) but my experience has been pretty good and I have been at this off and on for a while.

I have had some great experiences as well; but there have been a slight handful that just are very slow to pay. The person I am hunting down for payment now has agreed to pay me as well as paid over half of their money owed - it's just they are taking a lot longer than is acceptable.

If I knew I could have a more reliable flow of income, freelancing/contracting would be amazing.

You could always factor your receivables and let them chase in the event of non-payment. This takes you out of the accounting and finance game, but you do give up a percentage of the amount of the receivable. I know as few people who do it as they have no interest in running their accounting operations. The factor acts as an accounts payable department with the added benefit that you get your money up front and don't take the risk of non-payment. Now if the client is a high risk client it is usually reflected in the discount on the receivable that you must provide. Many non paying customers, become good paying customers when a factor is involved because they don't play games. Best part is you don't have to play bad guy, because you "sold" the receivable so it is not the actions or the responsibility of your company to enforce payment.

http://en.wikipedia.org/wiki/Factoring_(finance)

Another Washington DC / Baltimore guy here. The highest base salary for a software developer I've heard of is in the same ballpark (195k).

I've also noticed that the high salaries seem to go to the people who are the most ambitious.

I'm assuming these are specialists rather than typical web developer positions, yes? Otherwise I might be underpaying.
The tech market in general is experiencing a depression of technical talent. Three things caused this issue:

#1 was the .com bust it drove a lot of talented people out of the market as well as most of the "gold rushers" (aka people who learned flash in a week and where commanding 90k for crap). A good deal of those people moved on to other careers in other fields. Probably in the area of 40% of my associates of that era are now in business or pure science related fields.

#2 Again .com bust but this time educational. The university tech programs experienced the same issue. The money went and so the students that where in it for the money jumped off the ship. I was going back to school at this time and it was literally 1 day full class, next day, me and two other guys in the class.

#3 "we'll outsource it all" did not work. Companies terminated entire development teams to move them off shore only to have to bring them back after the fact. Each time you do this, it is the breaking point for some of the individuals who decide that this one is the last one and leave the industry.

So yes, if you think you are underpaid then you are underpaid especial for "typical web developer" which is one of the hottest fields in tech. This industry has the peculiar way of chewing people up and spitting them out. If you go by the numbers chances are you wont last in it. You need to charge a rate that reflects that reality. The funny part is once you do your resilience in putting up with the grind becomes higher. I have lasted a long time in this industry and I can tell you there where two times that I tried to get out. It can and will burn you out, it is just a matter of whether or not you can survive the burnouts without leaving the industry. A fare wage for the work has a lot to do with being able to survive it until it passes.

i have to disagree.

The only thing i see degrading the market is that a good developer have a hard time to find a job for 200/yr. while a manager can easily earn that 200/yr and manage half a dozen incompetents developers for 75/yr.

that makes the good developer behave like a incompetent because of the low pay or move to management (and then the half a dozen incompetents will be doing the work anyway)

I didn't inquire too much, but I assume the job required a specialist.
Who's hiring programmers that know organic chemistry? It would be nice to put my chemistry degree to work.
Here's one example:

Senior Scientific Software Developer

http://www.eyesopen.com/careers#sssd

Not sure what level of O-Chem you studied, but from the limited salary data that I am privy to, it seems that you need a graduate degree in Chemistry before this starts to add significantly to your base salary.