Been into software development since I got out of college in '83. What a long, strange trip it's been...
First job I could find (12% unemployment in 83) was developing document management and typesetting applications on a multiuser CP/M system. (any other dinosaurs out there) Replaced that creaky setup with an AS/400.
Got laid off in 91, got to watch the first gulf war start to finish, and then found a job working on a 3D CAD application in C/Win16, converted to C++/Win32. Now, that was interesting.
Left that for a cozy corporate job in the restaurant industry, where I've worked largely on field systems, from C++/Win32 to C/C++ Linux, to the latest - C#/Win32. I'm not really a political animal, so I didn't move up, but the pay is good and the work steady, so I'm not complaining. Decided to ride out the dot com boom in the late 90's, how could something with a P/E ratio that bad keep on? Glad I did, and work with a terrific gang these days.
Here's a tip for those of you seeing your jobs being outsourced overseas - we just closed down a disasterous outsourcing project. Job was to convert a large legacy SCO app to Linux. The results were a mess - translation problems, term emulation problems, problem problems, we were spending as much time auditing their work (code looked like the devil) as we would have doing it ourselves, and for once, management did something sensible.
The outsourcing thing is a fad. Companies will eventually learn why that doesn't work well, and bring it back in house, after they lose enough money. Those things tend to run in cycles, and the cycle is about to swing the other direction.