|
Talking with another developer the other day, we began discussing if software engineering is really a young person's profession (we've both been doing this for a while, have families, and aren't jumping to do the 70-hour weeks of boring features with boring technologies). Given the rapid turnout of new technologies, pressure from out-sourcing, and demanding projects, one might view the software world as incompatible with an older person, especially someone with a family who didn't want to spend 70 hour weeks at work.
I'm an optimist here, and I think that no -software engineering is certainly not just "a young person's profession". There's a lot of advantages that older developers have, they:
Have more experience, so they usually have better intuition and a broader understanding with which to learn new technologies. For example, someone who already knew J2EE would pick up .Net much more quickly than someone with no computer background.
Have more understanding of the purpose of technology. They've seen lots of business applications, so they know what they're trying to do.
Have a wider stash of reusable tools and source code to work with
Can be wiser about what they invest in learning
Have deeper knowledge. New technology is often built on top of old technology. I've seen lots of young "copy and paste" developers become paralyzed when their program does anything abnormal - like throw a COM exception or accidently encode files in an unexpected format - whereas the older devs have been around and know how to handle that.
While new technologies do come out frequently, there are also many older technologies and concepts that still form the backbone of enterprise apps. Html, JavaScript, Xml, CSS, Sql, code generation, automation, and object oriented languages like C++ and Java, have all been around since the 90's. A senior developer who already knows these technologies can focus on learning just the new stuff, whereas a young developer still needs to come up to speed on these basics.
Of course, I wouldn't say that older developers are necessarily better, but rather give everyone their chance. There's a lot to look forward to in software engineering, for both old and young developers.
While I think your article as plenty of merit, I don't see the distinction
in development as "young" and "old", or even beginner and experienced. I
believe it comes down to raw skill and passion. I'd take a young,
inexperienced developer who was passionate about development and learning
rather than some old guy, who's set in his ways and just doesn't care all
that much anymore.
When you say "I'd take a young, inexperienced developer who was passionate
about development and learning rather than some old guy, who's set in his
ways and just doesn't care all that much anymore." -