The Wall Street Journal recently published their 2010 survey findings on the best and worst careers, based around factors like income, outlook, environment, etc. As usual, software engineering ranks near the top of the field, though, for the rest of this post to make sense, you’d have to ignore “Web Developer” at #15 -I’m guessing HTML monkeys – and whatever the hell “Computer Programmer” is down at #34.

Now that I think about it, I’ve been pretty lucky to pick a career that seems to have an insatiable demand for a work force, in a place that not only fosters talented software people but also encourages entrepreneurship. That is, there’s always someone with an idea with a need for an engineer for implementation; the demand drives up wages and perks, with an unfortunate downside in jacking up living costs and, well, Californian taxes. The net result is that a “high-tech” job here in the Bay Area pays 60% more than one elsewhere, with cost of living expenses to match.

As Sui likes to tell me, we’re a fairly spoiled bunch: for myself and most everybody I can think of around here, the recession never truly hit. While other companies had to cut costs and lay people off, software companies mostly only enforced hiring freezes, and engineering camps were usually the final refuge against penny-pinching measures. Hell, at Lolapps, we still had a full stable of recruiters looking for engineers to fill open positions during the economic downturn. And with things getting better in the new year, companies are unleashing the wrath of recruiters onto a dormant engineering population; I’ve gotten more than enough job requests just in the last week to toil for another decade.

I don’t mean to take away the difficulty of computer science and software engineering, though. Most of us who have made it out of school saw classmates flame out after one or two classes (1), and the accessibility to CS researchers and tech companies at UC Berkeley and Stanford made it easy to land that first job or, even now, get noticed in a sea of resumes.

Nor does computer science/engineering translate directly to software engineering: a bunch of CS grads are happy to remain in the science and research side of computing; some don’t want to deal with the rigors of coding and go either product/project management or quality assurance; a surprising number of programmers pursue lateral higher degrees (e.g., a Masters in Financial Engineering) after just a few years in the software industry.

We’re one of a few professions that make job interviews the equivalent of a college course final. Expect to go through 4+ hours of grueling questions and riddles in the name of divining intelligence, coding competency, drive, and fit.

And there’s an unwritten expiration date on coders. Much like how 22-year-old Starcraft players are unable to compete with teenagers from sheer reflexes and endurance, the best years of a software engineer are anywhere from three to ten years out of school: new grads spend their first years just learning about the actual engineering involved in building commercial and enterprise software, and after a decade it’s no longer fun or advisable to fight sleep with code.

By that count, I’ve still got a good year or two of solid engineering juice in the tank.

  1. I started college in 2000 – the height of the dotcom bubble – when everybody strived to somehow attach themselves to the magical money-printing internets ()
 
  1. Sigh after reading this, I realize not everybody is Kanna Shimizu.

    woodland local at on