您将如何处理不再有效的程序员?

发布于 2024-07-19 14:29:50 字数 73 浏览 7 评论 0原文

您团队中的一名程序员非常擅长维护旧的遗留系统。 但该公司已转向新技术/平台。

您如何处理不再有效的开发人员?

A programmer on your team is great at maintaining the old legacy system. But the company has switched to a new technology/platform.

What do you do with the no-longer-effective developer?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(12

淡笑忘祈一世凡恋 2024-07-26 14:29:50

尝试顺利地将他转移到新技术/平台 - 首先给他小任务,然后更大的任务,然后完全转移他。

如果他是一名优秀的程序员,他会学习和适应,如果不是,则向他解释说他将不得不考虑另一个职位 - 要么在同一家公司,要么在另一家公司。 这是生意,不是他的游乐场。

Try to smoothly move him to the new technology/platform - first give him small assignments, then bigger ones, then move him completely.

If he's a good programmer he will learn and adapt, if not, explain to him that he will have to think of another position - either in the same company or in another one. It's business, not his playground.

清风无影 2024-07-26 14:29:50

据推测,该公司仍在从事同一业务,因此这个人将拥有多年来之不易的领域知识,这些知识可以在技术/项目管理或 BA 角色中得到利用。 此外,如果您的现有客户不愿意迁移到新平台,那么他在支持角色中的作用将是非常宝贵的,因为没有一个新人会理解遗留的东西。

Presumably the company is still in the same business so this guy would have years of hard earned domain knowledge which could be leveraged in a technical/project management or BA role. Also, if you have existing clients that are reluctant to move to the new platform he'll be invaluable in a support role as none of the new guys will understand the legacy stuff.

江心雾 2024-07-26 14:29:50

人们可能会因为各种原因变得“不再有效”,包括失去热情、个人问题、对公司或管理层的幻灭、对技术变革的恐惧或厌倦、不恰当地使用娱乐性药物等。

大概他们曾经是受重视且高效的员工。 人道的回应是找出问题所在,然后找到一种方法让那个人再次对自己和工作感到满意,这样他们就能再次帮助企业提高生产力。 处于您所描述的职位的人显然对现在生产力低下或被其他更幸运或更有才华的同事视为“不再有效”感到不高兴。

所以我不喜欢你的问题的提出方式,好像那个人已经成为一个问题和一个负担:它缺乏人性。 如果你这样表达,答案可能会更快地变得清晰。

“我发现我不再是一名高效的开发人员,我担心自己很快就会失业。我周围的世界已经发生了变化。我该怎么做才能让我的雇主帮助我渡过难关,让我找回理智呢?”的价值和自尊?”

PS 我今年 52 岁,主要通过承包和始终使用新技术,设法保持领先地位,但我看到很多人处于您所描述的位置。 在成为程序员或员工之前,他们首先是人。

People can become 'no-longer-effective' for a variety of reasons ranging from loss of enthusiasm, personal problems, disillusion with the company or management, fear or weariness of technological change, inappropriate use of recreational drugs, etc, etc.

Presumably they were once valued and effective employees. A humane response is to find out what the problem is and then find a way to make that person feel good about themself and their job again, so that they can once again help the enterprise become productive. A person in the position that you describe is obviously not happy about now being unproductive or being seen by other, luckier or more talented colleagues as 'no-longer-effective'.

So I don't like the way your question is framed, as if that person has become a problem and a burden: it lacks humanity. If you phrased it this way, the answer might become clearer to you more quickly.

"I find that I'm no longer an effective developer and I'm scared that I'll soon be unemployable. The world has changed around me. What can I do to get my employer to help me through this and bring back my sense of worth and self-esteem?"

PS I'm 52 and have managed to keep at the cutting edge, mainly through contracting and always using new technology, but I see a lot of people in the position you describe. They're human beings before they are programmers or employees.

夏尔 2024-07-26 14:29:50

告诉他学习新技术,并提供合理的时间和帮助。

Tell him to learn the new technology, and provide a reasonable amount of time and help to do so.

最近可好 2024-07-26 14:29:50

如果你不能在新系统上训练他,你就必须让他走。 或者你可以把他提升为“项目经理”,等到他搞砸了,然后解雇他。

If you can't train him on the new system, you will have to let him go. Or you could promote him to "project manager" and wait until he screws up, then fire him.

心的位置 2024-07-26 14:29:50

我认为,在生产旧软件之前,你总是需要了解旧平台的人员。 想象一下,如果所有可以为您 20 年的 cobol 程序工作的人都离开了,有一天客户打电话告诉您出了问题......我以前已经见过这种情况;)

与成员交谈团队,向他解释公司正在转向不同的技术/语言/平台等,并为他提供课程或培训材料的可能性,以跟上公司业务的最新情况。

如果他不想花时间去学习新东西,你可以随时尝试在不同的领域使用他。 经验总是很重要,即使是在您不使用的技术中。

假设您在一家使用 Visual Basic .net 的公司工作,您有两名程序员可供选择,第一个拥有 1 年 Visual Basic .net 经验,另一个拥有 15 年低级 C++/汇编编程经验。 我可能会雇用第二个,即使他对视觉基础一无所知,他肯定有大量的经验可以分享。

碱性。

I think that until you have old software in production, you always need guys with knowledge of the old platform. Imagine if all people that can work on your 20 year old cobol program are gone away, and one day the customer call you telling that something is wrong..... I've already seen this situation before ;)

Speak with the member of the team, explain to him that the company is moving towards different tec/language/platform etc, and offer him the possibility to have courses or training material to keep up to date with company business.

If he do not want to spent time to learn new stuff, you can always try to use him in different areas. Experience is always important, even in technologies you do not use.

Suppose you work for a company that work in visual basic .net, you have two programmers to choose from, the first has 1 year of experience with visual basic .net, the other has 15 years of experience in low level C++/assembly programming. I probably will hire the second one, even if he does not know anything about visual basic, he surely have great amount of experience to share.

alk.

谷夏 2024-07-26 14:29:50

留住他,至少有两个原因:

  • 如果旧的遗留系统仍在生产中,他仍然有能力维护它。

  • 他肯定比任何人都更清楚,不仅旧系统如何运作,而且它在最隐藏的部分做什么。 在指定和设计新系统时,这些知识非常有价值。 即使你的人没有参与新技术,他也可以在构建新系统的过程中发挥作用。

Keep him, for at least two reasons:

  • If the old legacy system is still in production, he is still competent for maintaining it.

  • He surely knows better than anybody not only how the old system works but also what it does in its most hidden parts. This knowledge is greatly valuable when specifying and designing the new system. Your guy has a role to play in building the new system, even if he is not involved in new technology.

毁梦 2024-07-26 14:29:50

最好的方法是积极主动:确保为遗留系统编程的员工提供一定比例的涉及新技术的任务。 这使他们对组织更有价值,并提高了他们的工作满意度。 有什么理由不喜欢这个呢? ;-)

如果您是参与遗留代码的人,请务必花时间学习新技术,如果有必要的话,可以用自己的时间。

如果您无法直接将学到的知识应用到遗留代码中,那么您始终可以利用更新的技术来完成外围软件工程任务,例如源代码控制、配置管理、错误跟踪、项目管理(例如,敏捷项目管理的 Scrum 方法) )、文档、支持等等。

The best approach is proactive: make sure to give employees programming legacy systems some percentage of tasks that involve new technologies. This makes them more valuable to the organization, and increases their job satisfaction. What's not to like about that? ;-)

And if you are the person involved in legacy code, do spend time learning new technologies, on your own time if you have to.

If you can't directly apply what you learn to your legacy code, you can always leverage newer technologies for peripheral software engineering tasks such as source code control, configuration management, bug tracking, project management (eg, the Scrum approach to agile project management), documentation, support, and so on.

遗忘曾经 2024-07-26 14:29:50

除了已经说过的之外,我认为您还应该考虑遗留系统是否具有备份价值。 特别是如果您刚刚采取行动。

考虑下面的假设场景:

步骤 1. 实施全新的闪亮技术。

步骤 2. 将遗留技术程序员转移到其他地方(或解雇)

步骤 3. 发现新技术中的关键错误,或遗留系统支持但新系统不支持的重要数据/流程。

步骤 4. 哦...

如果这个人“很棒”,那么他很有可能能够学习新系统。 他可能不知道所涉及的技术,但他确实知道其目的和用途。 系统的特点。 他知道系统做什么以及为什么,你只需向他展示如何操作即可。

当然,如果他真的无法得到它,并且您确定遗留系统已准备好捐赠给博物馆......

Aside of what has been said, I think you should also consider whether or not the legacy system has back up value. Especially if you have just made the move.

Consider the hypothetical scenario below:

Step 1. Implement brand new shinny tech.

Step 2. Move legacy tech programmer to whatever else (or fire)

Step 3. Discover a critical bug in new tech, or vital data/processes supported in legacy system but not by the new one.

Step 4. Oups...

If the guy has been "great" there are very reasonable chances he will be able to learn the new system. He may not know the technology involved, but he does know the purposes & features of the system. He knows what the system does and why, you just have to show him how.

Now of course, if he really can't get it and that you are sure that the legacy system is ready to be donated to a museum...

゛清羽墨安 2024-07-26 14:29:50

你问了这个问题,意味着你陷入了困境,意味着你喜欢这个人的工作,并且你确实说过他擅长遗留代码。

擅长一件事的人也可以擅长其他事情(我相信是这样)

告诉你的程序员,改变是不可避免的,并告诉他开始改变他的技术,设定一个现实且互利的目标,并严格执行时间表。

如果他能领养孩子,他就能生存下来,否则他就会学会寻找新工作。
[注:我的意见和建议是我希望对您有所帮助,但并不保证100%成功。]

You have asked this question, means you are in a dilemma, means you like this guy's work and you did say that he is good with the legacy code.

One who is good at one thing can be good at others too (I believe so)

Tell your programmer that CHANGE is inevitable and tell him to start change his technology and set a realistic and mutually beneficial goal and enforce the schedule stringently.

If he can adopt he will survive else he will learn to find a new job.
[Note: My comments and suggestions are what I though would help you but it does not guarantee 100% success.]

薄情伤 2024-07-26 14:29:50

显而易见但并不搞笑的答案是给他训练。 不是给他一本书并告诉他学习新系统,而是给他适当的培训,送他参加课程,让他向当前使用该系统的人学习该系统,跟随他们工作一段时间,提出问题并很快。

The obvious, non-funny answer, is to give him training. Not give him a book and tell him to learn the new system, but give him proper training, send him on a course, have him learn the system from the people currently using it, shadow them at their work for a while, ask questions and so on.

故事和酒 2024-07-26 14:29:50

这里有几个因素:

  1. 公司规模
  2. 返回旧技术
  3. 的可能性 员工转向新技术的意愿。
  4. 公司对员工价值的看法

如果你谈论的是一家小公司(<10 人); 放弃诱饵并寻找新人才可能比花时间对员工进行再培训要好得多; 对于公司和那个人来说。 小公司无法承受长期雇用低效员工的后果。

对于较大的公司,其他 3 项优先。 如果有哪怕一丝回头的迹象,那么留住那个人就纯粹是保险了。 同样,如果员工热衷于转向新技术(以及做事方式),那么他们就可以利用过去的所有经验来不断前进。

最后,如果公司真正重视员工,他们就会尝试鼓励员工适应新环境。 但要小心,鼓励对变革不感兴趣的员工对任何人都没有效果。


我看到这个问题是双向的。 在一个案例中,一名员工对这一转变感到很高兴,并花费了大量自己的时间来加快速度。 他们最终能够提供很多见解和价值。

我还看到那些跟随技术变革的人又踢又尖叫:他们应该比他们更早被解雇。 然而,公司觉得有义务继续与他们一起尝试。 在他们最终解雇他一年后,我遇到了这样一个人:他对自己的新工作感到高兴得多。

There are several factors here:

  1. Size of the company
  2. Likelihood of returning to the old tech
  3. Willingness of the employee to switch to the new tech.
  4. Company's perspective on the value of employees

If you are talking about a small company (<10 people); it is probably far better to cut bait and search for new talent than to spend time retraining that employee; both for the company and that person. Companies that small can't afford having unproductive people on payroll for very long.

For a larger company, the other 3 items take precedence. If there is even a hint of going back, then keeping that person is pure insurance. Likewise, if the employee is enthusiastic about moving to the new tech (and ways of doing things) then they can bring all of their past experience to bear on forging ahead.

Finally, if the company actually values their employees they will attempt to encourage that person to mold themselves into the new environment. Be careful here though, encouraging an employee who has no interest in change doesn't work out for anyone.


I've seen this issue go both ways. In one case an employee was happy about the switch and spent vast amounts of their own time getting up to speed; they were ultimately able to provide a lot of insight and value.

I've also seen those who went along with the tech change kicking and screaming: they should have been let go much earlier than they were. However, the company felt an obligation to keep trying with them. I ran into one such person a year after they finally cut him: he was far happier in his new job.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文