Software Career Paths.

For people who are at all decent, the typical career path evolves from junior to intermediate to senior developer, through team lead, architect level stuff, then up into management and director level positions, all the way usually working on larger, more complex projects that are harder and have larger teams involved. You tend to get dragged along that way without thinking too much about it.

The higher you get, the less you're doing low-level stuff, which is probably good, because the higher-level lessons about how to really make software successful seem to only come from real extensive experience. And let's be honest, the kids get off on the newest whizzy language features more than us old farts, who usually have learned that work really isn't everything, and also that cool language features really don't matter that much, and that you can accomplish lots of things with lots of different tools. So better to keep hiring the kids as coding monkeys, and make sure they have adult supervision.

The traditional career path wasn't working for me; I've been thinking about why and I think its just that I find the larger systems boring, and given a choice, I don't like working with schmucks - and you're going to find more and more schmucks the larger the team. Some of it really is an ego thing though; an individual on a larger team isn't that special, and anyone can be replaced. Absolutely a good thing from an organizational perspective, but it doesn't do much for me personally (and I'm not supposed to be selfish about my career choices?).

I like doing small projects, and I like doing more creative things. I like the idea of software as a creative medium. I like new concepts. I like being able to approach problems in unconventional ways (that's risky, but without risk you're not going to innovate), doing things that other people aren't. I like things that have an impact on people, and potentially a large impact on even a small number of people (not as much the your-accounting-system-is-now-5%-more-efficient). I'm more drawn to software that benefits individual users, rather than IT-type stuff, and software that supports more independent thinkers (including small business types for example).

The lure of steady money going the conventional path is tempting; I was making good cash at my last job and that was a bit hard to give up, but not worth dreading what you're doing. I'm lucky that long term the money isn't a hugely deciding factor (being married to a soon-to-be-out-of-residency-doctor certainly doesn't hurt). But it's still not entirely a non-issue (ahh, that ego thing again).

More to say on this thread at a later time; comments appreciated as always.