I often get mails from recruitment people (I seem to be on everyone’s databases), urging me to get in touch because they’ve got lots of exciting jobs that I’d be just right for.
Then it turns out that the job involves something I know nothing about, would never want to do anyway, pays less than half of my current salary, and/or involves working for a company that I’d rather not touch with a barge pole. A very long barge pole. Operated remotely. From a different planet.
Frustrating though this inevitably becomes, it does occasionally prompt me to wonder what I would actually like my next job to be. Ok, not occasionally… all the time.
Not that you should read this as me saying “I want a new job” or “I’m leaving SI” (don’t forget, I left SI once already, and they still managed to drag me back! If you count freelance contracts, I’m actually on my fourth stint at SI).
What I’m describing below probably won’t happen for another ten years if at all, but just for the record all you recruitment types, this is what you’ll have to do to get me even vaguely interested:
1) Find me a way to work for myself, to my own deadlines, and sell my own software. This is most likely to be the next move I make anyway, but if someone can help me do it, then fine.
2) Find me a Mac or iPhone job. I still work on a Mac every day, but I don’t write proper Mac software any more, and I miss it. Failing that, funky technology is good. Funky languages are good. Yet more tedious legacy C++ is bad.
3) Find me a job on a very small team. I’m talking less than 10 people. All of my most enjoyable jobs have involved working closely with 2-5 people.
4) Find me a research focussed job where I don’t have to work to unrealistic deadlines. I don’t mind deadlines at all (despite what some people think!). The right deadlines are essential if anything is ever to get finished. I do mind it though when I can see what needs to be done, but don’t get given the chance to do it. Ever. Year on year. Job satisfaction does matter, and too many years spent making too many compromises inevitably lead to a loss of morale and motivation.
5) Find me a job with people I can learn from. There are some amazing people out there, but only a few of us are ever lucky enough to actually work day to day alongside great coders like Kent Beck, Scott Meyers, et al, or great managers like Fred Brooks or DeMarco and Lister. I’ve been programming for nearly thirty years but I’d gladly halve my salary and give up all responsibility or kudos to be apprenticed to one of those guys for a while.
6) Find me the right money/quality-of-life trade off. As I mentioned in (5), I’ve been doing this a while now, and consequently I earn a decent wage. I think I’m a good coder, but I also think I’m an ideas person, and sometimes these days I feel trapped in a world that doesn’t give me the chance to express any of those ideas. To a large extent that’s just the human condition, I know. That said, I have no children and no mortgage (but no house, mind you) - I’d be very happy to trade some of my salary for intellectual freedom.
So there you go. I don’t want much, do I?
And finally, if there is anyone from SI reading this who is determined to interpret what I’ve just said in a negative fashion or get all insecure about it (which is really not how its intended), then all I can say is this: I’ve just given you a great list for how to keep me happy! What you do with it is entirely up to you :)