Is Computer Programming a Good Job for Retirees?
braindrainbahrain asks: "Ask Slashdot has been rife with career advice lately, so maybe I can get some too. I hit a milestone recently, the big five oh, and the realization of retirement is starting to settle in. The trouble is, I don't want to sit around, play golf, or even travel that much. I work in a technical field, but I have always enjoyed programming. Indeed, I do it as a hobby. I wonder what you readers would think about programming as a post retirement job. It seems well suited for a retiree, one could do contract work for a few months of the year, in some cases work from home even. By way of background, I have worked in hardware engineering for a very long time, and have pursued graduate study almost regularly (two Masters degrees so far). Should I begin preparing for a post-retirement career in computer science?"
I don't know, are you willing to relocate to India?
John
And in dog years, you are 350, which is very very very old.
Good luck getting a response to your resume with that background. Companies will see your credentials, assume they'd have to pay too much since you're "overqualified" and instantly send you a flush letter.
As everyone knows, those of us who are trying to make a living and save for retirement just love to have retired folks enter our field and offer their services at "hobbiest" rates. Yeah, top of our list for things that make our day. You know, keeps us on our toes - makes us more competitive.
There's nothing like having to compete with someone who (a) doesn't have a family to support (b) a mortgage to pay (c) has a pention/retirement income and - this is the one that gets us all warm and fuzzy - is getting paid the same Social Security check that we spend 15% of our paycheck supporting, and will not exist by the time we retire.
I just want to be the first to say - "thanks".
Is it just my observation, or are there way too many stupid people in the world?
and sit though meetings all the time read Dilbert for more info about this type of work.
its my chosen field of study, i dont want you to go taking up the jobs before i graduate :(
Ask me again in 20 years. I'm going to retire from my first 25-year career in 2008. After that, I plan to spend a lot of my time programming for fun and (meager) profit. If I never accomplish anything more than contributing to open source software, I'll still have a good time. If I actually make a career of it, so much the better.
It's bad enough with college kids and qualified immigrants working for peanuts, now we're going to have people who don't need the money at all? (PS - I'm 100% in favour of college kids and immigrants - I think immigrants are exactly what USA and Canada need - just puh-leeese charge a competitive wage and stop fucking this profession over!)
Even more competition in the workplace? Oh hell no....
While we're pondering cre-azy ideas, how about we revive that euthanasia debate?
The Political Programmer
I have a rule.
Anything that you enjoy doing instantly becomes much less fun the moment you are doing it because you are required to, for whatever reason.
If you enjoy programming as a hobby, why not just continue to do it as a hobby? There are plenty of open source projects that would benefit tremendously from having an extra hand, especially one that doesn't have many other commitments. There are so many projects I wish I had time to work on, but other obligations get in that way. The time you have is such a luxury.
If moderation could change anything, it would be illegal.
I would highly recommend open source. An open source tool that I use regularly has a retired contributor whos input is highly valued, appreciated and eventually incorporated into the product. Compare that to $CORPORATION which will axe you at the first chance. There is no other option.
s oftware_packages
Indeed I wish I could contribute to my favourite open source projects when I retire.
For a list of open source projects, see: http://en.wikipedia.org/wiki/List_of_open_source_
I bet there would be a bunch of stuff to make a hardware geek like you giddy!
Best of luck and congratulations!
Depends on which country you are located in.
If you are retiring at 50 you have serious financial security. So I suggest you treat it as a hobbie instead of job. Do it for yourself, not somebody else. Maybe it will turn into something that makes money for you. But if you do it for some company then they own your work. Give yourself more freedom.
Of course, if you manage to find a company that you mesh with and the projects you work on are the same thing you would do by yourself, then by all means, go for it. The team envrionment can be rewarding.
Just try to get out of the cubicle as much as possible. You'll be dead in ten years if you don't. Or close anyway.
TLF
I do not respond to cowards. Especially anonymous ones.
If you like problem solving, like to learn new things, enjoy working with computers, then definitely go for it.
You didn't mention if you can survive off your current retirement savings, but if you can that I think there's even more reason to do it. You'll have the flexibility to offer your services to groups that usually can't afford to hire expensive programmers (think non-profit national science organizations, smaller mom and pop shops, etc...) or you can contribute to open source projects.
I think the best part of it, though, is that if you try out a certain technology (say web programming) and hate it, then you can jump to something else. There's nothing forcing you to have one speciality and you can figure out the skills required once you have a solid enough foundation (there is so much information available online and it's usually free).
Only you know if this type of thing fits you. But I will say that if anyone tells you that you're too old, or that your brain isn't flexible enough, pay attention to what they say and the prove them wrong.
That being said, if you love code, then delve into open source, find something that you want to fix and fix it. It will feel great. If you really enjoy programming you can just keep going. If you need to find some spare cash, then you can point to your hobby work that is in the current distro of Centos or Ubuntu. And wind up with a survivable paycheck, or you can marry the feilds you know and wind up with a big ole paycheck. It is relativly hard to find a programmer with masters level domain knowlege in two fields. Ok its not that hard, if flash more than $50/hour
Good luck
Storm
I'd say it's an excellent occupation for retirees. After all, anything that fills your time that doesn't involving driving around at 45 miles per hour in your Nissan Micra on the public highway, or taking all lunch-hour to cash your pension at the post office, is surely a benefit to society.
Stick Men
Some of the worst code I've seen has been written by old guys who really approach their job as "hobbyists" as opposed to professionals.
If you're willing to start out as a total junior, getting paid next to nothing (because next to nothing will be expected), and you're will to LEARN and do it the way you're ASKED to do it, then sure.
Otherwise, forget it, I wouldn't recommend it.
That's the first point I would make. If you like hardware then a CS AI pursuit might be robotics. You would probaby need a phd to pursue it seriously. If you just want to do some programming I would say find an OSS project, or create one, and do it as a hobby. Do not, however, get caught up in commercial software develoment as that would make your retirement very unpleasent.
putting the 'B' in LGBTQ+
-- In the beginning was the WORD, and the WORD was UNSIGNED, and the main(){} was without form and void...
If you're over 50 it's tough enough to find a programming job even when you are highly qualified. I don't think very many companies would be interested in hiring you unless they make a practice of hiring retirees for other jobs in the company.
I know you mentioned that you have two Masters. Assuming that they are in a technical field, have you considered teaching? Many community colleges hire part time people who have come out of industry and have the proper degrees. It is tough work, but can be rewarding with a good group of students. I wouldn't suggest High School work (the Certification process is lengthy and it isn't part time work), but teaching programming at a local school could be an alternative to a job in programming.
Live Long and Prosper
I should have completed my thought. This would be a wonderful thing to get involved in on a personal level. Do some OSS stuff, go help the local charity that doesn't have the cash to pay for a support person. Get involved in the community.
But please don't take your pension and my social security and offer services which are priced lower than normal wholesale costs. In the international arena it's called dumping and it's illegal. Remember - this guy is being supported on SS (or will be in a few years - by the time he's worth anything) - so it's not exactly apples to apples.
And I'm not really worried that one guy is going to topple the system. It's more a suggestion to the retired community as a whole - please don't go competing with the working folk for "real" work. Get out, enjoy yourself, channel your efferts into making the community better. Who knows, maybe if the baby boomers tried a little harder to work on their communities, there might not be quite the need for all the taxes we pay to keep those things going on the public dole. (Now I am waxing theoretical!)
Is it just my observation, or are there way too many stupid people in the world?
A resounding NO! You see, some of us are finishing up school, and about to enter the workplace, and um... yea just don't do it! The following code snippet might explain: //please set the following flags:
if (this.getAge() 23) {
this.jobSecurity(true);
this.jobCompetition(false);
}
start: 2012
start 117 MB update @: 10.17
cumulative: 678 KB / sec.
Professional programming usually isn't part-time work, at least if you're working for a company that's producing a product to sell as opposed to doing in-house projects to support other activities. It's typically feast-or-famine schedule, with the usual deadline crunches. Now that the 90s boom is over, there may be less of the 80-hour-week-deathmarch kind of thing going on, and programmers may be more likely to have lives rather than being 25-year-olds with an infinite tolerance for caffeine, but that still tends to be the environment.
So if you want to work part-time, you'll need to look a bit longer for a gig than if you want to be full-time. On the other hand, if you want to work occasional full-time gigs, then contract/temp work does fine for that. Or if you want to do sysadmin work, that's often flexible about schedule.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
The enterprise IT world *needs* people with mature attitudes.
I'm a sysadmin, not a programmer so this may come across off-topic, but there is a lesson to be learned with respect to mature vs *cough*immature*cough* people in the world of IT.
Most of the people working in this area at the moment are very young and enthusiastic. Thats not a bad thing in itself; its bad when they start 'playing' with systems on which other peoples livelyhoods depend.
They are often people who think its ok to introduce fascinating new technologies into the enterprise machine room because they *love* to tinker with shiny new stuff "ooooh Linux iscsi on all our servers! Wheeeee!!!".
Its bad when you have IT professionals who so love fixing computer problems that they don't mind being woken up by a pager at 3am; for them its a wonderful opportunity to wrestle with a computer problem.
The mature attitude says that computers should not wake people with a 3am pager call; they should not go wrong in the first place. It says that you should not introduce bleeding-edge technologies into important systems. It says that stability and reliability are very important.
Same sort of thing applies to coding I guess, but not being a coder, take no notice of me.
In the free world the media isn't government run; the government is media run.
It is working for me. I started programming after working in chemical R&D for 25 years partly because I felt it was a less demanding career, and one that has more flexibility when I got to retirement. I started programming in early 2000 as a Perl web developer for a small boutique consultancy, learned Java, PHP and a few other things on the job, and for the past year or so have been working as an architect for a mid-sized company. I am 57 years old now. One thing that has been a big factor in my success is simply being able to communicate in English. There are a lot of good programmers out there who for one reason or another can't translate what they do into a coherent sentence. Another thing that has been helpful is a strong educational background - when you are in the job market it really opens a lot of doors even if you are an older person.
Start contributing to Open Source/Free Software projects that interest you as a way to do good while developing your programming skills. Making minor fixes or enhancements to other people's code is a great way to learn.
Leverage your hardware engineering background to contribute to open source device drivers for useful devices. When you've mastered that, continue on into the Linux/BSD/whatever kernel(s), where your background will continue to be an advantage. Your maturity would be valuable (and maybe even valued :/ ).
After a while, you'll have a reputation and an honest-to-goodness portfolio of code you can point to on your resume. If you want, you can leverage that for consulting gigs - just the sort of short-term commitment that's perfect for your situation, I'd say.
I'm about your age, but not in a position to retire (as in: I'll probably be greeting you at WalMart in 20 years :), but this sounds like a nice way to go, to me at least.
Here's the problem with programming and IT jobs in general. The people actually doing the work tend to be young. I'm 31, and I'm already starting to see the shift in opinions of my work as a sysadmin. (You know you're old when people out of school have never seen a command prompt before...)
I'm guessing this will change as the profession matures. However, today is not a good day for older workers in the tech field. Too many people don't realize the value of life experience. Also, employers don't want to hire older workers because they're afraid they won't be able to keep up with younger peers. Older workers also demand higher salaries, which IT is not willing to pay in most companies.
I agree that retirement is going to be a lot different for our generation. I really can't see myself on a golf course every day or working as a greeter at Wal-Mart. Hopefully the tide will shift a little. I already see businesses less willing to put up with IT failures caused by "new, cool" systems. Maybe a little standardization and movement towards a "information systems engineering" profession will help.
What do you mean too old? Half your luck if you're thinking about retiring at 50. Some people keep working all their lives. Not that 50 is too old to be a programmer, or at least I hope it isn't, because I'm 50. I now telecommute from a rural/coastal setting, working as a consultant/programmer to a few firms, and make a very decent living. Highly recommended.
I would suggest you take an academic programming job -- it'll probably be more intellectual and better paced for your interests. Academia tends to be better for people who have broad job interests/skills than the private sector, and the retirement benefits will be better as well.
For every problem, there is at least one solution that is simple, neat, and wrong.
Additionally, given that your background is hardware engineering one idea would be to pick up a PS3 and try developing via the linux distro. Probably, for programmers with a traditional background this would just be an unnecessary pain, but Cell is definitely an interesting hardware architecture if you are a little crazy (eg. hardware guys)
And, just what natural laws is compute "science based on?
Yup, computer science isn't a science: it's really logic and language.
"Anything that you enjoy doing instantly becomes much less fun the moment you are doing it because you are required to, for whatever reason."
In other words don't get married.
I have a masters in CS, 30+ years programming experience, lots of business knowledge. You name it, I pretty much have it. I was laid off on my 49th birthday. That was 5 years ago. I can not buy a paid programming job. The only serious contact I have had in the last 3 years was with a company in India that was desperate for experienced people. Moving to Bangalore is not an option for me right now. The contract market has dried up.
I work on open source projects. I do some writing. I took the courses and passed the tests so that I can teach in the public schools. I haven't been able to find a job there yet. There are a lot of people like me chasing too few teaching jobs. I do teach part time at the local community college. But, very few people in the US are interested in learning programming right now. I have only had 6 students in the last 3 semesters. I teach and code when I can. I was thinking about going to law school. But I do not have the money and I would have to move which is not an option right now.
So, all I can say is good luck with that.
Stonewolf
are made up.
I think I'll add yours to the list.
The competition from Sudoku-playing denture-suckers should reduce the wages for this essentially clerical job down to a realistic level. Their maturity will ensure that they need less admin than the whippersnappers, so wages for IT managers should drop as well.
Sadly, since they will tend to drop dead during a project, the lost art of commenting code will need to be reintroduced. In order to make sure that this gets done each senior citizen/coder will be assigned an unemployed baby-face, who will make cups of tea, issue pills, and remind them not to dribble on the keyboard. Every hour the baby-face will insist that the old codger comments the previous hour's work, and archives it.
One day the fossil will collapse across the desk, at which point the baby-face will push the body to one side, and take over the programming job. She, in her turn will be assigned a baby-face.
"I'm not trolling, or kidding for that matter. Find ways to deliver value that only you can bring."
In other words, "I am an unique and beautiful snowflake, you're a replaceable part." Well, hon, short of selling your spunk, there's nothing you can provide that is of truly "unique" value...and what quantifiable uniqueness there is for your, uhm, "genetic material," I highly doubt there is a premium in the market that could replace a salary even if you were able to produce it like water from a fire-hose.
Perhaps it's an American language thing, but I've never understood how someone can be retired and still have a job - to me retirement means stopping work and getting a pension, if you start working again then you're no longer retired.
Yes, more experienced workers need less training. But, they are also less likely to be willing to learn new styles. I've worked with quite the random group of people for a while, I've seen and worked with all types. Yes, you sometimes have to fight to get a young technician to learn something new. But, even after fighting and convincing an experienced person they need to do something differently, they often will not. Are you willing to listen to criticism? Do you have a lot of baggage? I don't care if you are young or old, if you can't deal with a job you should gracefully exit.
Also, health is very important to intellectually demanding jobs. I've seen people become diabetic and become worthless in technical jobs, even if they are taking care of themselves. If your mental capabilities are random because of sugar high/lows, you will struggle to do any long tasks. And, what about your vision? I've seen very capable technical people who stuggle at a job, after they go far sighted. It get's hard to keep track of windows and read code, if you can only focus on one small part of the screen at a time. It's incredibly frustrating to deal with someone to can't read the computer screen or follow what is in front of them. What about carpal tunnel?
In the end, any career change means a serious period of self introspection. Are you really capable of change? Of accepting styles which may run counter to your own? Are you up to the task, health and personality wise? This is true of young and old, and you only know yourself. I'm sure everyone here as been burned by both unhealthy or stodgy young or old co-workers. In the end, it is best to talk to your friends. You are more likely to get a job, and get real feedback, if you have a decent group of friends and contacts.
Good luck.
I'm 51 now, I've been programming for twenty-two years. I expect to keep programming till the day I drop, because I don't have a pension (my own choice). But the industry thinks it wants young people, and doesn't value experience. And it particularly won't value experience which you have gathered as a hobbyist. Having said that I don't think it's impossible. Experience genuinely is valuable.
I'm old enough to remember when discussions on Slashdot were well informed.
You could always devote your time to programming open source software. Maybe get involved with sourceforge, or helping with bug patches, rather then programming for a company.
Klingon Software is not released, it escapes, inflicting terrible damage onto the enemy as it does
Give a hand, not a hand-out.
Retire for chrissakes! Jesus! You people are already bankrupting Social Security, now young programmers can't find a freaking job because of you old codgers...
I hear WalMart is looking for greeters...
It's not clear whether or not the original poster will be needing to work for the money, or whether the income will be just a nice retirement bonus.
If you don't need the extra income, then there are no shortage of outlets where you can "scratch" your programming "itch". Contribute to an open-source project (or start your own), write some useful piece of shareware, write some business applications for your local non-profit organization, teach programming at a community school, etc. None of these avenues will provide much income (if any), but it does allow you to take your hobby to the next level.
If you are looking to actually make money out of your hobby in retirement, my advice would be to leverage your pre-retirement vocation. There is a branch of software development known as "embedded programming", which is writing software for special-purpose hardware devices. As a hardware engineer, you probably have a lot of knowledge that would be very attractive to a potential employer. Also, you probably have contacts from your hardware days who might be able to help you land a job in this area.
------
www.moneybythenumbers.com
Like me, you sound like you won't be happy at all not working. I really can't think of myself as being out of a job, not even when I am 60+. So I plan on teaching.
You have the required education, and just so much more real world knowledge than 80% of the instructors out there today. PASS IT ON. I have taught part time in the past on and off for 5/6 years. It is a lot of fun, it keeps you sharp and the students love you because, you are for real and not just from a book.
If you code after you retire, it will get to be another full time job and who wants to deal with dead lines, time lines, requirements, and boneheads that don't know what they are talking about etc... Doesn't sound like retirement to me... If you go the teaching route, maybe a few bad ass kids in the bunch here and there, but everything else is set up, its not that hard and can be a blast.
You won't make a lot of money, but pick a good open source project and code for it as a hobby, and go teach to make a little cash and really feel good about helping all the young geeks out there ;)
duke
FreeBSD: Nothing runs like a daemon with a pitch fork.
If you have a passion, follow it. You will find others with your passion, and with their help find a way to continue with your passion. It does not hurt to just show up someplace that has an interest for you, offer them your services, probably as 'part-time' since you are retired you are very flexible with pay and hours.
As an employer, I do prized a good skill set, although, I must say skill set is nothing if a person has no passion to work.
Ha! I used to drop off resumés at various biz's untill I found a place with an 'atmosphere' that I liked. I would then get the phone number of the person who's job it was to hire, and make it a point to phone them back asking, "What time do I start work tomorrow?"
As a retiree the ball is in your court, you have the upperhand, because you have something employers want. Passion. Just remember that.
In Korea, computer programming is for old people!
I want to play Free Market with a drowning Libertarian.
In the real world, software development is frequently boring.
Sure, solving problems is fun. But 70-80% of the time, the things you're working on are something like:
But please don't take your pension and my social security and offer services which are priced lower than normal wholesale costs. In the international arena it's called dumping and it's illegal. Remember - this guy is being supported on SS (or will be in a few years - by the time he's worth anything) - so it's not exactly apples to apples.
First if someone's retiring and is going to collect Social Security then they paid into it. Next, if they had instead of paying SS tax, they had invested the same amount of money throughout their working life they actually be ahead of someone would paid SS tax. If a person saves and invests just $2000 a year from the age of 18 to 25 when they reach 65 they have almost a million dollars invested with an ROI of 10%.
FalconShould there be a Law?
Sure. Provided you can get past the rampant ageism among employers who dislike hiring anyone with grey hair - partly because they don't want their insurance premiums to go up, partly because older programmers get paid more for their experience, and finally because they prefer college-hires with more "up to date" "skill sets". As if.
What's important to understand is that there is room in programming for both big ticket senior programmers, and low cost junior programmers. A company that tries to staff up with only one or the other does so at their own peril. Senior programmers are needed to architect things, to understand the whole system, and to solve the big, nasty, mind-bending problems. Junior programmers are needed to do the less intensive tasks that would be a waste of a senior programmer. Going without senior programmers could result in a lower quality product, more time spent, or possibly worse. Going without junior programmers will both increase your costs, and wreck your programmer morale.
So, he should price himself according his skills and experience. Just being cheap isn't inherently bad, unless he's trying to get senior-level work.
Now, he did mention possibly contracting, and that's a bit different. If he wants to try to undercut the entire population of Bangalore, then more power to him. At this point, undercutting will only take jobs from undercutters.
Answer: No!
blindingly bright green type, never got past that!
Since retirement is more about working because you want to and not because you have to, I'd encourage you to follow your ambitions. You have nothing to loose & everything to gain from attempting to get into the programming field.
I would suggest freelance programming as a route to take. It offers you the chance to cherry pick the jobs you think you can do, and the flexibility to work from home/the beach/golf course as you please, and at your own pace. It may not pay stellar wages, but it does give you a little cash in your pocket to augment your retirement fund.
If you find your skills in programming are not up to snuff for the stuff available, you can take programming classes at your leisure to augment your skills, and work the freelance stuff as time allows. The really big bonus is that if you find that you don't want to continue this course of action, you can stop at anytime, not inconvenience anyone and follow whatever new itch you have.
Steve Jobs is 52. There's a world of opportunities out there.
Don't close your mind to a "retirement" mindset.
I say as long as you have the desire to do it then whats really to stop you ? Like you said you can basically work from home and while you're waiting for reitrement you can start by writing small apps on the side, give snippits of code to tutirial websites, things like that. Overall I say just go for it because reallym 50 is the new 30 man !!!
You wouldn't happen to be in the US on an H1b would you?
He sells french fries made from unpeeled potatoes in a paper cup for a $1.50, pop for $1.25 and looking to buy another trailer or two. Makes over a $100K (much of it tax free) in about 4 months a year, traveling to county fairs. Goofs off the rest of the year in Florida.
Its a dogs life for that 4 months, but you if your could put up with, hiring a couple of kids to do the grunt work, it might be OK.
While (open){
Put potato on slicer;
Push slicer handle down;
Fry potatoes;
Fill cup;
Give change;
}
I'm going to bid on the route when he "retires". Funnel cakes and elephant ears sell well too, but are more work.
Beats working for some pointey haired boss. FTM!
My first computer was an IBM/370 with OS/VS2. Back then, code was scarce and even fair programmers such as myself could get a great job. Today, code is as plentiful as bad air and, often, even lower quality. The problem is that code is like news or natural gas -- it is considered a commodity. And commodities that are necessities only demand a premium if there is a supply shortage.
If you want to code, write applications that people want (not just need). Real time apps are a good idea but might not pay that well and can be a rat hole. Killer apps are those things that take the mundane and make it amazing. A good example is Smokey City Design's Panorama Factory. Better than anything Adobe has, this app can sew shots together like a Seville Row tailor.
Of course, if you are going to sell apps, you need to be a businessman too. Lastly, code is like news in that it gets old and loses its value quickly. If you are thinking of being a contractor, be sure to get a separate agreement for maintenance and make sure it is hourly with no caps.
Contribute to a OSS software project, or start one of your own. Think of it as an on-line resume, if you ever want to get a real job. Meanwhile, hone your skills, join a community and contribute to society.
I realize the g-gp was a joke, but since the parent wasn't, I'm responding to it.
Right now there are US tax BENEFITS to outsourcing. That simply shouldn't be true; I've never heard any justification for it except to line the pockets of the companies large enough to do it a lot.
Companies with US employees pay a tremendous amount for healthcare, in great disproportion to the quality of care we get. a) I'm not saying we need national healthcare, but we at least need enough regulation of this critical industry to prevent by the insurance companies the anticompetitive practices that today rule the industry. b) To keep good jobs here, a greater proportion of this burden needs to be borne nationally. (That also doesn't mean the system has to be nationalized; tax revisions would be sufficient for part b.)
Fixing these things isn't a tariff per se, but it has the tariff effects the gp was looking for compared to today's status quo.
Of course, there are other important changes that could be made - a fair fraction of outsourcing fails, not because somewhere like India doesn't have quality people, but because the lowest bidding contractors aren't the highest-quality people available. So better corporate responsibility for these failures - both a) responsibility to consumers for inferior products, services and especially privacy violations and b) responsibility of officers to shareholders for the failed outsourcing projects, where "everyone else was doing it" isn't a good defense.
Looking for freelance Actionscript (Flash/Flex) or ColdFusion work and/or freelance developers. Email me, put Slashdot
Are you kidding? The 25-year-old Masters of the Universe won't hire you. Period.
E Proelio Veritas.
I think it's great that you want to start a new career. There are two basic ways to go about it. Working for a company or working on your own. Working on your own is not always that easy because it's sometimes hard to find work. You can always advertise in the local paper, perhaps building websites or creating databases for local small businesses. There are also websites I've seen that let you bid on development jobs, although I have no experience with this. Bottom line you'll have to keep at it and have patience.
As for companies hiring developers, it's unfortunate that you'll hear a lot of people complain that there is no work because of outsourcing and that the Indians are doing everything for 10 bucks and hour. I'm not saying outsourcing isn't a problem but lets face it, today's companies have smartened up quite a bit. What I mean is, they're not willing to hire programmers who've just learned to code last last year by buying a Microsoft Visual Studio book and following examples. That was the 1990's when every schmuck started a company and paid programmers six figures hoping to make millions on Java applets. The days of VB programmers getting 100k/year are long over. Today you gotta be good, you gotta be flexible and you gotta be your own best salesman. Also understanding the company you work for and how your efforts will fit into their business, in my view, is very important to getting ahead. Oh, I almost forgot. Stay away from recruiters if you can help it. Recruiters are mostly a bunch of phony dick heads that exist to make money by wasting your time. Trust me, try to meet the potential employer on your own if possible. Good luck!
There are two problems with the programming market today. Number one is management. Any sort of IT work, including programming is immediately considered an expense, to which it must be managed. Management will usually put some very strict time frames on projects, with no breathing room. Next, you probably will have difficulty getting any of your questions answered, as most projects have shifting goals. Management will also be expecting you to immediately know what you need to do and how to do, as to save time and money. You probably envision it as a learning adventure, where you will be able to pick up things as you go. Management isn't going to be interested in hiring someone who can "come up to speed." They are going to want someone who hits the ground running. Maybe you know everything you need to, maybe you don't, I don't know. All I can tell you, is that most of the time, "I can learn" is not a valid response.
Number two is co-workers. Most of the IT professionals out there are very competent nice individuals. However it is the bad apples that ruin the industry. You basically have two types. The guy who knows his stuff backwards and forwards, but doesn't have the time or patience to even talk to anyone who doesn't know as much as himself. He puts himself above the "peons" and will regard everything you do and say as prime examples of how stupid you really are. The other bad apple is the employee who may or may not know what he is doing, but uses a combination of buzz words and posturing to give his bosses the impression that he is a great employee. These are the guys who will scrutinize everything you do for flaws and wait until the next team meeting to elaborate on how "Jim" is an awful programmer. Not to mention that as a contractor, the company will have someone on their staff review your code. Guess how many times they will find nothing wrong with it?
Of course, your experience may vary. On the whole, I have found the industry rife with very aggressive people. I understand most career fields have their stresses, but I believe the IT has more than its fair share. From bosses who are going to mistrust you from day one, to co-workers who are usually more interested in getting you labeled as a failure than in getting work done; the IT industry is just in a very poor shape. Did you see the post about old people drooling on keyboards? That is the maturity/attitude that most of your co-workers will have.
Perhaps you are envisioning a situation where fellow IT professionals work in a spirit of cooperation to help each other learn and become better through the mutual sharing of knowledge. Well, that just isn't going to happen. So unless you are very confident in your abilities, don't mind putting up with the daily drama and are willing to fight back against false allegations, I would pick something more relaxing and fun. Teaching was thrown out; and I think that would be a good choice. Or if you really want to expand your programming prowess, find a small open source project. Most of the time, the people working on that project are more than willing to help; you won't find much in-fighting there.