Wednesday, February 28, 2007
Kevin Barnes has an intersting article that talks about Why great coders get paid far too little.  My new career goal is to strive for greatness and land a $3M contract, I probably shouldn't hold me breath :)

Wednesday, February 28, 2007 2:12:32 PM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [0]  |  Trackback
 Sunday, February 04, 2007
DomXml has a nice post that breaks down consulting rates in the IT industry. Prior to joining my current company I worked at a consulting company. During my time there I learned a lot about how consulting companies work. In general, as Don points out, they try and get "more affordable" consultants and employees so that the markup that they receive is higher. I must say that the place I worked was probably much much better than most, however, I was often amazed at the rates that we'd end up charging clients knowing who was going to be working on the projects. For some reason everyone always seem to think that having cheaper, more inexperienced, developers is the way to go since they result in higher margins. While in theory that sounds reasonable it always seemed very shortsighted in my mind. Sure you pay less for a more inexperienced developer, but it also takes that inexperienced developer longer to get things done. Often times much longer. The solution developed is also more likely to be "sub-optimal". What often happens in these situations is the senior developers end up cleaning things up, and making sure "shit" doesn't get shipped.

It's my opinion that having a small, experienced team is the way to go. Unfortunately, in the consulting world this often doesn't work. The way consulting companies make money is by increasing head count. As you increase head count it becomes more and more difficult to find good people. As you hire more and more people, who are no longer as good as you probably would like, you end up putting yourself in situations that are destined for failure. I think most people realize that it's important to hire great people but everyone seems to fall into similar traps. All the sudden a big project falls in your lap. Since you don't have the resources to staff it, you hire a bunch of people. Since you need your resources quick, you drop your quality bar and hire whoever you can. Since you've hired more people, you start making more money. You chase more money, and hire more people. Eventually you have a bunch of people, most of which you have no clue if are any good. You do Ok, ship some stuff and have decent success. You get blinded and all the sudden make the same mistake you originally made and hire more people. Afterall, more people means more money. The majority of big consulting companies have a large pool of resources who are inexperienced, inefficient, yet quite good at making your projects going longer than you'd like. It just so happens that longer projects means more money, and potentially more people. We all know what more people means don't we?

Anyway, I've gone off on a bit of a tangent that I didn't intend. The original point of this post was supposed to be to remember that you get what you pay for. While it might seem strange to pay twice as much for something, whether it be a consultant, a product, or a bag of groceries, you most often times get what you pay for. Or do you?
Monday, February 05, 2007 4:19:03 AM (Eastern Standard Time, UTC-05:00)  #    Disclaimer  |  Comments [4]  |  Trackback