Ask Slashdot: How Do You Deal With Programmers Who Have Not Stayed Current? 509
skaffen42 writes "The recent Ask Slashdot about becoming a programmer later in life got me thinking about a related question. How do you deal with programmers who have not stayed current with new technologies? In the hiring process, this is easy; you simply don't hire them. However, at most companies where I've worked, there are usually a few programmers who have been employed long enough that the skill-set they were originally hired for has become irrelevant. At the same time, they have not bothered to stay current with newer technologies. They usually have enough business knowledge that they provide some value to the company, but from a technical perspective they are a slowly-increasing liability. As an example: I work with a developer who is 10 years my senior, but still doesn't understand how to write concurrent code and cannot be trusted to use a revision control system without causing a mess that somebody else will have to clean up. On top of that, he is really resistant to the idea of code reviews; I suspect he dislikes people he considers junior to him making suggestions about how to improve his code. So, how do my fellow Slashdotters handle situations like this? How do you help somebody like this to improve their skill-sets? And, most importantly, how do you do so without stepping on anybody's feelings?"
Re:Can't offer much (Score:4, Informative)
That's fine and I fully agree that's a legitimate reason as to why many older developers do struggle to stay current.
But said older developers must also recognise that that's also why they're having problems staying employed and finding jobs, they then blame ageism when in reality the problem is a life choice they have made which they do not wish to suffer the consequences of.
The fact is you cannot give up staying current and remain a developer, the field moves too fast so you either need to jump into something like management, or accept that the inevitable result of unemployment has nothing to do with ageism and everything to do with the fact that refusing to stay current in the software development field, whilst also refusing to change career.
It's like the underskilled Westerner who threw away all the benefits and advantages the Western education system offered him only to then blame harder working immigrants that are superior employees to him because they actually want to succeed when he can't get a job. It's a blame game, but you make your choices and have to live with them, you can't blame ageism, immigrants, or whatever for the inevitable consequences of your own choices.
There's nothing wrong with raising a family instead of staying current as a developer, it's a perfectly fair choice, just don't then be surprised when the real world will let you no longer be a developer as a result of you opting to do other things than stay current. The world doesn't owe you the job you want to do in the way you want to do it, it's up to you to figure out what the world wants and what you feel you can and are willing to offer it that it needs.
Re:Are universities teaching concurrency? (Score:4, Informative)
Re:Not current... (Score:4, Informative)
Well, to be fair, SVN branching is a big pile of Canis Merda
Re:Can't offer much (Score:4, Informative)
Spoken like someone who doesn't have much of a fucking clue... Seriously, son, you don't think ageism is a big problem? Let me assure you that it is - and it applies to far more occupations than programmers.
Also, your thoughts on immigration and "underskilled Westerner" are not very developed... I have North Americans and foreigners working for me, both in North America and outside of it. Sometimes, it's about western workers being incompetent - but just as often, it's about companies simply cheaping out.
Re:It doesn't sound like you're current. (Score:2, Informative)
Objective-C & MAC/iOS experience, C#/WPF, Android 4.1, SQL/SQLite/Oracle, C/C#/C++, Java, Python, Javascript, HTML, .NET and everything else the Microsoft has. If you don't known all of those things then you need to catch up.
... or you don't work in the same field. There are plenty of specific programming areas and industries that need programmers where one, or even none, of those would be relevant. Yet at the same time, they have their own new techs, laws, practices, and other tools that need to be kept up on. I work in computational modeling, and have plenty of places I have previously worked and could apply for a job at that would at most need the C background, and maybe Python. Although where I am now, it is all Fortran and C, and whatever scripting language you want to use to handle small things (Python in my case, but not for many of my coworkers). In my case, I need to keep current instead on papers for various new numeric techniques and optimizations for different platforms. And for friends that do more hardware related stuff, about the only thin on there they need to know is C.