, and similar topics, some people have described their "burn-out" from programming or dead western tech economy
and a subsequent search for a more enjoyable way to live their lives.
I am a RecoveringProgrammer
myself. But my technical skills are the only marketable skills that I have (or at least that I know of), and there are some aspects of programming I enjoy. I'm sure others are in the same boat.
So, can anyone suggest some jobs that might be attractive to someone who doesn't want to be a programmer any more, but who still wants to employ related talents and pursue related interests? Any off-the-wall idea is fine, but to keep this topic coherent, please limit the ideas to jobs that actually are related to programming in some way, rather than advice to go and do something completely different or to embark on some sort of spiritual quest (both of which are attractive choices, but are already discussed elsewhere).
Here's a short list of alternatives. Feel free to add or to discuss:
- ChiefArchitect / TechnicalLead
- development team coach
- TechnicalWriter or TechnicalEditor?
- marketing (of software or development tools)
- test engineer
- system/network/web/database administration
- CTO/technologist/IT manager
- hardware designer
- technical recruiter
- technical/sales support
- web site design
- Alien abduction prevention devices (See "Menkin" discussion under ExtraordinaryClaimsRequireExtraordinaryEvidence)
- A generalization of this is "BS-ware hawker". There is money to be made in alleged statistic, analytical, and/or AI "pattern finder" and similar tools that promise to help catch terrorists, burglars, sales leads, etc. Just check your conscience at the door, though.
- Ad-hoc report and/or query writer - This is difficult to offshore because it usually requires tight knowledge of the domain. Half the work is figuring out what the requester really wants via samples and questions. I did this for a while, but for some reason they limited the tools I could use, making otherwise simple stuff into monsters.
- insurance adjuster
- business owner
- Create anti-offshoring websites and sell T-shirts with anti-globalization slogans.
- Pooper-Scooper: http://economistsview.typepad.com/economistsview/2005/05/_the_opportunit.html - "Computer programmer Steve Relles has the poop on what to do when your job is outsourced to India. Relles … has spent the past year making his living scooping up dog droppings as the 'Delmar Dog Butler.'..."
trades seem to be having a renaissance of late, perhaps because they are difficult to offshore. Examples include:
Blue-collar may not be as "brainy" in the academic sense, but it can keep one busy and pay well if you get into a union and keep your nose clean. They are currently more immune from offshoring than programming. Educated brains may be a cheap global commodity now, but skilled hands with a wrench is still something requiring a local human being on site.
With the big list above, you may be a qualified counsellor :)
Well, you could serve coffee. It gives you all the great feeling which you would get as a programmer of working for a faceless multinational corporation, without the tedium of having to use your mind all day long. Plus, as everybody knows, the only reason to be a programmer is the salary, so if you're looking for "something besides programming" it must be the high pay which has turned you off, and you'll certainly get none of that this way. This might not be for everybody, but it works for me... (Okay, more seriously: If you haven't been laid off from your real job yet, I can't think why on Earth you would want to deliberately screw yourself over by quitting. Definitely don't do it without at least $20,000 in the bank...)
I've got plenty of money in the bank, no debts or dependents to worry about, and there will be no problem with spending several months looking for something new. And I'll gladly work for half of what I'm making now if the work doesn't suck. Staying with my current job would be "screwing myself over"--it's making me miserable. I'm not going to hang on to it out of fear of the unknown.
Kris, I've considered once or twice that if the ideal ProjectManager
role existed at a company somewhere, I might take that. Not for the money as much as the chance to interact with more people on a day-to-day basis. You'd be able to use your technical experience as a springboard into the career, and once you evinced a genuine understanding of how programming worked you'd probably have plenty of the technical folks on your side .... The only thing is, you'd have to find a company where ProjectManager
s are given a little control along with all the culpability, and I'm not sure if such a company exists.
I might go for that "ideal ProjectManager role". Right now, I'm forced to be a programmer/architect/manager, and trying to fulfill all those roles at the same time is preventing me from doing any of them well. I do enjoy working with people, and meeting with customers, so maybe ditching the technical work for a while and going for a "people job" might work. But as you mention, finding a company where project managers are allowed to do more than generate and analyze financial reports for their projects may be difficult. --KrisJohnson
I fetched up with a jolt when I read the above, about a working programmer idly speculating about taking up project management! I'm a programmer, 25 years' worth; I'm married to a project manager -- PMI certification, the whole nine yards. Apart from organizational proximity, the two jobs have little in common, either in terms of required skills or, perhaps more important, temperament. Either of us would walk ten miles barefoot over broken glass to avoid doing what the other does for a living, and we cheerfully admit it; that may be one of the reasons why we made it to our 33rd anniversary, yesterday. (That said, I'm writing from northern California, late 2002: we're both out of work.)
Two unusual cases I know of is a programmer who left to become a priest, and one who left to become a mountain guide. The latter was someone who had enough money not to work altogether, which I think was necessary because 90% of the mountain guide work was during June-September, and the rate of pay pretty low even then.
I also know someone who left to become a teacher, but returned after 6 months. Evidently it was just as stressful, almost as much work and a 30% pay cut.
Right now, I'm forced to be a programmer/architect/manager, and trying to fulfill all those roles at the same time is preventing me from doing any of them well.
Glad to hear I'm not the only one. ;-) --MikeSmith
I see a few people in the wiki describing themselves as "coaches". I think that's the ideal job for me: I enjoy working with other developers, I have all sorts of development-related trivia in my head that others are amazed by, and I enjoy teaching others what I know. But how does one get such a job? Is this job disguised as "development team manager" or "project manager"? --KrisJohnson
For me, that's been "development team manager". Often combined with project manager. One lesson one needs to learn to do that well is not to try to pull a full load as a programmer - giving work to other people in the full knowledge that won't do as good a job as you would, if you had the time, was, for me, one of the hardest management lessons to learn
My programming has, for some time, largely been filling in around the edges, letting the team do most of it. Making the team maximally productive is important - and doing the less interesting bits is often a good way of doing this (as is coaching, of course)
Based on what you've said on the Wiki, I think you sound like a pretty good candidate for this. Programming background + appreciation for people + knowledge of (and interest in) what the company needs to get done are good things
How about getting a job being a programmer for a group or organization you care passionately about. I would frankly hate it if I were forced to program something I didn't care about (like payroll at Chrysler -- ilch! ). I do chemical emergency planning and I find I stay up late at night -- off the clock -- working on programs which will help me and my co-workers during my day job. -- SeanOleary
I've been working in the transportation engineering industry for the past ten years. Knowing that people might get stuck somewhere or die if I screw up is one of the stresses I'd like to eliminate. --KrisJohnson
I've just quit my current programming job. I don't have 20,000$ in the bank. I'm moving 3000 miles. I don't have another place to live lined up. I don't care: these things are not problems for me, since money is not of a great deal of importance to me.
I've decided to start my own company. I think this will make me more happy, but I'm not sure, so I'll just try it. If it doesn't work out, I'll try something else.
I guess what I'm getting at is: stop worrying about your money, responsibilities, etc. Just think of something that might make you happy, and just try it. I don't think this is a revolutionary idea, but for some strange reason (which I'm working on theories for) you don't see a lot of people taking charge of their lives in this way. WhyDoYouPermitThisToBeDoneToYou
may have something to do with this.
Good luck. Can you give us any details about your new company, and why you decided upon that route? I'd be interested in hearing how things work out for you. (FWIW, I'm still on vacation...) --KrisJohnson
It's a game development studio. We intend to apply Extreme development practices. It will be located in Canada. That's all I can say for now, we're still at the research phase. If anyone is interested in contacting me, let me know: it would certainly be an 'alternative' job...
Matt, how do I contact you?
It's been over two months Matt, how's it going? Is this development studio going to happen in BC by any chance?
Some of us, after years of programming, finally realize a product or service, that people need and will pay for, is absent and waiting for someone to step up and fill the void. Those with the courage and resources can start their own gig.
Matt (above) mentions one way to do this (let go of the anchor and swim). Others may want to set it up differently. I've done it twice, both times under-capitalized and poorly managed. When the time and ideas are right, I'll do it again.
It's been some time since I wrote the above comment. It's still true. However, it doesn't address the original question.
Programmers that are any good have accrued skills in process flow and debugging. They have had to learn how to recognize the signs of software misbehavior from subtle discrepancies as well as the obvious stuff.
These skills are rare. They can be applied to other things than programming. Any activity has process flows leading to the creation and distribution of some product or service.
The ability to grasp the actual purpose of an enterprise, follow its flows through the various stages that create what it sells, and know how to spot the "broken" stuff in the processes and/or participants, and further to be able to point the way to improved production is a rare talent which has much in common with the analytical skills used by (good) programmers.
In my youth I went through specialized training for this kind of thing, and found that the skills mapped readily onto programming. Programming was (for me, at that time) the lower stress path, as it involved projects somewhat more finite in scope than those endeavors involving people interacting with people.
The original name for the organizationally oriented "debugging" activity was "data evaluation" and people who did it were called "evaluators" or "data analysis specialists" which, in today's environment, would be ambiguous.
I cringe at the idea of calling such a person "consultant" but that seems to be the only popularly recognized term for it. It very much involves knowing how to think, though "ThinkingSpecialist
" is probably not a marketable term. TroubleShooter?
would miss, since nobody wants to admit their company is in trouble. I gotta work on this.
This kind of expertise is badly needed in the business world. The business world may need TwoByFour
tuning to appreciate this, as it has been seduced by the "MBA" culture.
The PointyHairedBoss announces that the company has decided to outsource all of the functions that they're not any good at. The engineers cheer wildly, expecting that the management will be first to go, until one notices, "Wait a minute -- they don't know what they're not any good at."
But wow! Imagine being able to take a struggling organization and nail its most significant problems. If you were good, and your compensation was some portion of the revenue increase over some period of time, you could get along quite handsomely.
, but it's a bigger game than writing software.
It may be logical, but those are not the things that companies typically measure as part of performance. They will pay more attention to the number of CrudScreen
s you produce or the number of bugs you fix per day. They don't want their domain reingineered or refactored for long-term maintainability. That is not what they pay you for at most companies. They strive toward PlugCompatibleInterchangeableEngineers
. See also WhyIsDomainKnowledgeNotValued
"Don't ask yourself what the world needs. Ask yourself what makes you come alive, and go do that, because what the world needs is people who have come alive" - unknown
I love to create things. This is why i am a programmer. It is probably why many people here are programmers. But when programming one often finds oneself bogged down by one thing or another, losing sight of the creation and getting stuck in CodeBog?
- one possibility is to do something else for awhile, OnTheSide?
or altogether that makes you come alive. I am trying to take up blacksmithing. It will allow me to create things and see results so much faster than programming. This will stave off my passion for creation while stuck in CodeBog?
, which i will eventually extricate myself from and again enjoy my programming.
What exactly does a blacksmith do these days? They used to create parts in the days before mass manufacturing. Is there still a need for custom one-off parts? For what example purposes?
There is still a need for custom one-off parts. I'm not sure who buys them, but I could make some guesses. There must be thousands of machines in the world that are both irreplacable and unique enough that replacements parts must be custom fabricated. Also, you have to consider that even mass-produced products need machines to produce them, and prototypes for testing. I think these people, or at least the ones who work with metal, are called "machinists".
"Any off-the-wall idea is fine, but to keep this topic coherent, please limit the ideas to jobs that actually are related to programming in some way, rather than advice to go and do something completely different or to embark on some sort of spiritual quest (both of which are attractive choices, but are already discussed elsewhere)."
Well in all seriousness, in a way a "spiritual" practice is quite technical and has a lot of things in common with programming;
- Challenging problems
- Lots of debugging (You assume we had lots of bugs before? :-)
- Creative solutions to out witting ones Operating System (e.g. like getting MS Word to stop munging your text)
- You can make "tools" to help solve problems
- Larger problems need to be broken down into smaller ones
- Pattern recognition
- Solutions have a remarkable elegance and "perfectness" (i.e. no dirty kluges)
- Lots of fun
- Rewrite your own kernel
- Constant improvements, by v20.0 you're having quite a ball
- [add to this list]
In any event, thought it might be worth mentioning...
Here's an excellent article about an alternative job: freelance computer support
and here's a two-part discussion of the article over at SlashDot
As a somewhat burnt out developer, I'm currently looking at jobs teaching English in foriegn countries, specifically Asia. All you need to qualify for some of these jobs is a four year Bachelors degree which I have. The pay is quite a bit less but the cost of living in the countries is also less. Plus, you get to live in another country! That's pretty cool. --BrianRobinson
Brian, you might consider getting a certificate or an MA from a Teaching English as a Second Language (TESL) program. It will get you into the job network as well as yield useful skills and grant a credential that is, I am told by my friends in such programs, quite well respected around the world. Some of my friends have ended up in Japan, Spain, Thailand, and China. Check out http://www.nau.edu/english/ling/index.html
for examples of each. --DonOlson
Is one of the alternatives doing what you do so well i.e. programming? Except doing it for your own profit. By writing programs of use to the average homeowner, small businessman, door to door salesman, student, teachers, etc.
By starting your own business to do this, you may be able to make a small profit while keeping skills and familiarity with the latest development tools all the while keeping current with developing technology. You may even be such a success you wouldn't consider returning to working for someone else ever
I have tried that before. If you do it, be realistic about not winning the lottery. In other words, keep your day job. Entrepreneurship is high risk and it is hard to spell for a reason.
I sincerely believe that in order to turn the page on programming, you first need to know thyself. Getting a skills
assessment done is one part of that process. I don't feel that the answer is to be found in related vocational sectors as much as it is in who you really are behind the mask you wear to work. This remark is not spiritual. It simply pertains to your basic personality traits and what motivates you to undertake ANY professional activity beyond survival. I am currently moving out of systems administration because of the stress related to management's complete misunderstanding of what IT is about.
You sound like a people-person needing more meaningful interpersonal involvement in the workplace than what programming provides. When one's only interaction with coworkers revolves around the use of technology, the technology, not people, are at the heart of the matter.
Any job that requires analytical skills, rigor and perserverance would probably suit you as long as the job enables you to apply these skills to people in a meaningful business environment.
As for TESL in a foreign country, I would like everybody to know that expatting is not for all and requires extreme adaptability. I'm bilingual french, live in France (15 yrs), and am considering either an MBA or bilingual telecom/IT authoring. I did teach English for several years here, but the pay is gruesome and the vocation considered to be somewhat menial. Been there, done that, never again.
Just to help you put things in perspective, the French have an expression used whilst contemplating job moves which roughly translates to "been there, done that", but actually stems from the notion of "having come full circle" in a particular job or vocation. So here it is: "J'en ai fait le tour".
Good luck on your future endeavors: you will succeed if they reflect who you are.
- Eric M.
Another idea is just to outsource yourself to an environment and living conditions which meet your personal needs and by this keep away from burn outs. We just start doing this by establishing a software company in Ko Samui, Thailand where the beach is minutes walk away from the office and the djungle or mountain rocks too. We experienced a very good mix of lifestyle, tranquility, friendly people together with online work! If you consider to leave a stressy city environment and society just have a look at http://www.unit202.com
. We need people with good PHP / MySQL / XML / Linux experience to join our new project.
Personally, I'm still interested in remaining a programmer for now, but I've given some thought to what else I might do with the skill I've developed. I've now done enough music engineering form my wife to realize that would -not- be it. Anyone who thinks audio engineering just requires a good technical mind needs a good lesson in hard knocks.
Anyway, what I -do- think might be fun to be is an ErgonomicsEngineer?
(assuming that's a real title). I got the idea from listening to my Dad complain about his new cordless phone (not cell phone). He tried several brands, and never did find one that just works simply without having to memorize sections of the manual to do things like flash to an incoming call. I'd probably really like being a person who helps make figure out how to engineer consumer products that are truly simple and pleasant to operate.
My escape route is to become really good at brewing beer and opening a brew pub...plus the beer assists in the RecoveringProgrammer
stage of my life ;)
I left IT & started a grounds maintenance and landscaping business. Big, big money. Dumb ass employees (when you could find them). Expensive equipment breaks down constantly. After 2.5 years of having fun outdoors & working 80-120 hrs/wk, hurt my back, had to sell the business. Now, starting IT firm specializing in BI (business intelligence). Shit...
Instead of taking on a complete new career, have you thought about a position that demands a smaller percentage of programming hours? I used to work in Silicon Alley (back in the .com days) as a developer and now on Wall Street as a C++ Quant. For people who's not familiar with the Street, it's a securities analyst role that requires strong programming and numerical skills. (If this C++ Quant role sounds at all interesting, one resource worth checking out is http://cppquant.blogspot.com/2005/01/q-what-is-quant.html
Anyway, it helps my recovery as my day is now about 60% programming and 40% Finance. The best part is I still love programming and I get to learn Finance at the same time. I'm hoping one day to make it 60% Finance, 40% programming.
To put it another way, change your career the XP way
(ie. incrementally). Or hedge your move
, as they say it on the Street.
A good idea for an alternative job for programmers is rice picking. China and India might soon be looking for such skills!
There might be an indirect truth in that statement because local governments of developing nations may not be able to pay enough for technical staff compared to what techies can get from multinational corporations. Thus, they may be willing to take in visa workers from the industrialized world. It might be a good place for new graduates to get experience.
Perhaps its not the job that is actually making you miserable, since you yourself admit that you like some aspects of it. Perhaps its the environment/company/people/processes etc that need to change. Ie. If you work in a different place (even if you're doing the same thing) you might enjoy it because of the culture. :) I used to work for a really happy company and had to leave coz I migrated. I joined this company because the recruiter said 'great place to work' but sadly I find that's not quite accurate :) Hope you're happy in your job now... Good luck!
I had a great boss early in my career, and he spoiled me. He retired. When later faced with an average boss, I wasn't prepared for it and that set me back. I generally advise young people to get about 4 or so years of experience at a wide variety of companies and try to stick it out for at least 4 even if the place sucks, assuming good pay. One has to learn to live with difficult people. Then when you get fairly close to retirement, spoil yourself and find or return to the best places, keeping your pay under the radar of the bean-counters' chopping block. In other words, sucky companies are great experience because tolerating assholes is a useful skill for life. Later on in life you can start to pamper yourself, if you save up a little.