Is Programming a Dead End Job?
Embedded Geek asks: "There's an interesting opinion piece at Embedded Systems Magazine about [embedded] programming being a dead end job. The author cites burnout ('Pushing ones and zeroes around doesn't sound like a lot of work, but getting each and every one of a hundred million perfect is tremendously difficult.'), prestige, and skill obsolescence as big reasons for programmers to quit or to go 'over to the dark side' and join management or marketing positions. While the piece primarily addresses embedded programmers, the issue is rising for IT workers and other tech workers. When the age issue is combined with the export of jobs offshore, it makes me nervous just to be pushing 35..." Even though the market is going thru a rough patch, and the number of detrimental aspects to programming are increasing (ageism and so forth), I still do not feel that programming is a dead end job. Computers are going nowhere folks, and as long as they are around, programmers will be necessary. People who are in this career for the money or the prestige may not like it after a while, but the people who are in this for something else will tolerate quite a bit before deciding to opt out. The simple measure here: "as long as you love doing it, you'll keep doing it." Isn't this true for any career?
I think that programming is by NO means a dead end. Sure there is a bit of a tough time right now with the economy in its current state. But, we are just now seeing an emergence of whole new computational fields. These mainly being in the life sciences arena. Genomic sequencng projects are quickly overloading scientists with raw data that someone needs to turn into usefull information. The area of developing these tools is vast. Possibly more important will be people who come up with better algorythms for predicting protein structre and interactions based on sequences. This is an amazing field that has the promise of keeping computre scientists, biologists, and bioinformatics people busy for decades to come. I think the field is ready to make leaps and bounds.... and most definitly not a dead end.
You get into you because you like it, the pay is better than McDonalds, and your social skills are such that you can't interact with customers.
The things that make a person a good programmer are the same ones that stop you from being a good manager. So you can't move up and you're too valuable to the company to move down.
D
The first, last, and only tech news site on the net
You have to keep learning and changing, othewise you burn out, get stuck in a rut and turn over to the dark side
I originally got into programming because I really love to do it. I can sit in front of a computer and hack away for hours (days) on end and never tire of it. However, at work, I often start to feel what the "burn out" effect that the poster was talking about. I've come to realize that programming is just half of the equasion. It matters what you are programming as well.
On my own personal projects, I get to choose something I'm interested in. At work, I don't. It amazed me when I realized that when I was feeling most "burnt out" was when I was concentrating more on my work projects and less on my personal projects.
So, now my #1 concern when looking for a new job is, "am I interested in what I will be programming?" If the answer is no, then no amount of "cool technology" or "cool workplace environment" can make it worthwhile.
"Don't blame me, I voted for Kodos!"
I wouldn't know, I don't get to see his code.
Excessive forking causes un-wanted children.
What? I know for a fact that managers can make less than technical people under them (including programmers). In bigger companies, you either choose the technical route or the managerial route. That is the way it should be - managers manage people and projects. It shouldn't be about the money. Many times it is about the power. I have heard from managers that they want to have highly paid technical people working for them. Those are the people they can rely on. Just because someone chooses not to go down the managerial path does not mean that their salaries are limited.
My beliefs do not require that you agree with them.
This makes the assumption that the reason to stay in a job is because of the money you make.
Some people, believe it or not, are quite happy making less money than somebody else who may even apparently be doing less work, simply because he or she doesn't want to be doing anything else. This isn't a rut or a dead end. It's just job satisfaction. The only reason for discontent to arise in such a situation is if the employer is actually not paying fairly for the work that is being done. This can usually be rectified with nothing more than a modest annual cost-of-living increase in pay. And my view is that if the employee doesn't deserve even that, then he probably should be let go.
File under 'M' for 'Manic ranting'
And I am not talking about prestige, either. You know what? I LIKE being able to wear jeans and Tshirts every day. I like having flex time. I like working with technology. I like talking to the IT guys about PCs and stuff, and having them give me old equipment that they are going to throw out. I like that stuff. And I am not a programmer, I am in QA. But the atmosphere is the same for the programmers. It seems like those who aspire to be managers either are told, or feel the need, to "clean up their act" and hang out with other managers, dress up a bit, and shmooze. I am glad I don't have to do that. We have a pretty sweet work environment, which means a lot. Not everyone can say that. And in reality, pretty much EVERY job is a dead-end job. Where do you want to go, anyway?
My beliefs do not require that you agree with them.
The notion of "promotion" is seriously overrated anyway. Do you really want to spend your days talking to whiny investment bankers, composing meaningless vision statements, having half your company snicker about you behind your back, having all stress and no free time, and managing people problems? If you do, go right ahead and aspire to that management position. But there is a reason those positions are paid highly: it's hazard pay for dirty work most people don't want to do.
Seriously, people do what they like, what they get paid for, and what they are good at. Many people who aren't qualified as programmers would love to have a $80k/year "dead-end job" with full benefits.
As for the supposed age limit, jobs going off-shore, and all that, in my opinion, Matloff is a loony. His claims are poorly supported by data and contradict what people who actually try to hire programmers experience. Sure, occasionally, you'll see age discrimination, and occasionally you'll see companies taking advantage of immigration issues. But the former is already covered by non-discrimination statutes, and the latter has been addressed with H1B portability and faster green-card approvals. Jobs will probably continue to go off-shore, but the best way of stemming that is to bring the qualified programmers from those other countries to the US; if you force them to go back to their countries of origin, they won't become farmers, they'll create a thriving and competitive software industry there.
IT programming jobs are fairly horrible - you know, database work.
i did a database job for 3 years, and drove me absolutely bonkers - a decently smart CompSci guy should pick up everything you need to know about databases in about 6 months.
everything. and then for the next N years of your life, you spew reports that you could care less about.
now... true "systems engineering" type jobs... or lower level, more technical stuff - there is definite value in having more experienced people, and the burnout isnt a bad.
IT programmers have a useful life of 12 years. thats it. you will drive yourslef insane shortly after that.
... hi bingo
In my opinion (which is not so humble today) - the MORE ex-programmers move into marketing and managerial positions, the better place the world will be.
We've seen what happens when you put MBA's into marketing and managerial positions in tech companies. Hell on Earth.
The world needs MORE engineering-driven tech companies, and less lawyer-driven tech companies.
These are my friends, See how they glisten. See this one shine, how he smiles in the light.
I think you are right. A person with a degree in a particular field (such as medicine, geology) and knows how to code will do better in the long run than a person who just studied coding. You will then get to work on the interesting intellectual challenges in your field.
The fact that a phrase like "the dark side" is used, however tongue in cheek, indicates just how little some geeks get it.
In the commercial world, software isn't developed in a vacuum. In order to build a successful business you need to understand: who are your customers? what problems do they have? what software should you build to solve those problems?
People pay money for your software because it has value for them: it solves their problems. If enough people pay you enough money you will build a business.
Management and marketing aren't impediments to the "good guys" doing their jobs. They are essential parts of the overall job of building a successful business. The world doesn't owe you a living, no matter how skilled you are. It pays you for doing something that is valuable.
If your company is well run and you disagree with your management its because you aren't seeing the bigger picture. It may be cool to build technology X, but if no-one wants that and everyone wants technology Y, then you are wasting your time and skills working on X.
Of course there are bad companies with bozo managers. But that is a function of particular people, not of the role of the manager or leader.
Sailing over the event horizon
My boss (our VP and I think CTO) is the developer of utmost Deep Magic. But of course, we're a relatively small company.
But to take the other side of the coin up, I know of developers who made more than their managers (as one of my classmates ascended to management, I know several of the lead developers were making significantly more than he was).
There are two or three GOOD reasons why managers make the big bucks. In theory, they are the RESPONSIBLE ones. The buck stops there. Programmers can often excuse problems as being the result of other people's work, their deadlines, etc. But a manager has no such refuge. That responsibility should be commensurately rewarded.[1]
Also note that some highly paid programmers who make more than their management treat their management like inferiors. I've seen this. At the end of the day, some of the geek community only respect salary or other raw displays of power and authority. Sad but true.
Lastly, good managers are worth their weight in gold and do significantly benefit a project. They coordinate people, resources, and customers. They manage customer expectations, attend to the wellbeing of their managed, and ensure that all required resources are forseen and in place when required.[1].
So even though the comment about programmers not getting paid more than managers has exceptions, there are some good reasons for things to be as they are.
[1] - I know very damn well that the theory often doesn't match practice. For some reason, many companies keep inept management in place, I suspect because the next management level up is equally inept. I've had precisely three fair to okay managers, 1 really great manager, and several of the nightmarishly inept variety. But why companies keep incompetent managers in positions of power despite all the damage this causes is an utterly separate issue from the reasons why managers are paid more than programmers. Valid, but different.
-- Mal: "Well they tell you: never hit a man with a closed fist. But it is, on occasion, hilarious."
B-school types asked Conrail: "What do you do?"
Conrail answered: "We run a train system."
The "correct" answer really was "We provide a service to move goods from one location to another." They doomed themselves by competing with train systems when they were competing with trucks and air freight as well.
What business are you in? Is it "programming", is it "collecting and codifying business rules", I don't know what the answer is but I'm pretty sure the bulk of the business of "conversion of business ideas into source code" is going overseas.
It's one of those "seeing the forest for the trees" problems. My point is that next year you'll have a job, the year after that you will, probably for the next 10 years you will.
But the Indians and Chinese are getting better and better at outsourced work. There's a huge information/cultural/communication gap now but don't think that will stand in the way 20 years from now.
"Programming" as a job is as dead as being a cobbler (that's a shoemaker for the verbally challenged).
On the other hand, there are a lot of idiots in business-land with a lack of analytic skills. Transitivity is where Dracula comes from to most pointy-heads. There are jobs utilizing the same analytic and logical skills -- your business is not "programming", it's "analysis" or "rule-based business structuring."
Change now or become a cobbler.
Yes, and dentist's have the ADA, accountants have the AICPA, and lawyer's have the ABA. What professional association of the magnitude of the ABA or AMA represents modern IT engineers? The answer is, there is no professional association with any weight behind it that represents engineers.
We do have a well-financed association or lobbying group financed by the employers of the IT profession (Microsoft, IBM etc.) called the ITAA, which has been making war on our profession for years. Their sole purpose is to flood the IT labor market in order to drive up IT unemployment and drive down wages. They also despise worker independence which is why they love H1-B restrictions (forcing H1-Bs to stick with rotten companies during green card applications) and support section 1706 in the tax code (which forces independent consultants into body shops).
The first high-rated post said "we can all become managers!" Um, no, we can not all become managers, most of the IT departments I've worked at have had anywhere from 10-30 people under a manager, so when one of them goes on to be a manager, what becomes of everyone else. Also, good programmers don't necessarily mean good managers, and mediocre programmers can be good managers. I could go on, but the article is true that 24/7 oncall for years on end, constantly working weekends and 60 hour weeks can lead to burnout, and that many companies don't like hiring people over a certain age.
From a personal standpoint, I believe the failure of engineers to form an association that can counter the ITAA's war on our profession in Washington, as well as the failure to form consulting companies which are geared more towards worker-ownership and worker-control (although there are some, like RMPCP) is due to the fact that many of the people in this profession are the stereotypical socially retarted dorks, who are unable to socialize normally with other human beings, and who place their entire self-worth in the idea that they are the smartest programming super-genius whose skills are better than everyone else, who works harder than anyone else and so forth, so why would he have to have an association like the ABA or AMA with other engineers like every other god-damn profession does? Believe me, doctors are not stupid, cutting someone open and operating on their beating heart is a lot more complicated than opening up a computer and adding more RAM to it. They're not stupid, many of them are very smart actually, and we should follow their example and form a professional association.
For my preference, I like the Programmer's Guild, if you don't like them you can form your own or join a different one, although I'd hope if there were several associations they'd work together in fighting the ITAA's attempts to steal our intellectual property and drive us out of work in Washington. There are engineers working on this and have been for years, but our numbers are small and we need more engineers to just cursorily educate themselves about these things, and then spread the word and educate others about these things, just a few more people on board and it will reach critical mass and we can get the word out more. To me, it's not just about fighting for my profession, it's a principle thing, I'm sick of being kicked around by Microsoft (and IBM, Oracle etc.) via their ITAA yap dog, and I'm glad that I'm actually doing something about it.
My web page that deals with all of this is the Oncall Guild web page. We're not a group that seeks paying membership, anyone can be a member, just educate yourself about this, spread the word and join organizations like the Programmer's Guild or similar good organizations to do something about it. Some of the older engineering organizations are discussed on the web page, both the problems (corporate-financed to the point that they have killed campaigns that oppose the ITAA with threats, too academically focused, created decades ago and not focused on the modern IT profession and so forth) and good things (surveys about salary and other matters, allowing engineers to network with each other).
Every job has a burnout rate. I would wager that 80% of the people in North America do their job because they can stand it and they need the money. 15% do it because they love it, and 5% don't need to because they're financially independant. 80% of the population looks forwards to Friday. That's 80% of about 280 million people (I'm discounting teenagers and youngins). Programming doesn't burn you out, your job does.
"It's here, but no one wants it." - The Sugar Speaker