前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >你想要招聘一个掌握多种语言的开发人员吗?

你想要招聘一个掌握多种语言的开发人员吗?

作者头像
程序你好
发布2018-07-20 16:15:05
5790
发布2018-07-20 16:15:05
举报
文章被收录于专栏:程序你好程序你好

如果你发现你面试的是一个精通多种语言的开发人员,你会怎么做?你会录入他,还是重新考虑一下?

在前不久参加应聘Java职位的面试时,我们有一个应聘者,他的技能主要集中在Java,但他的上一份工作工作是c#开发。作为一个面试官我最初的想法是,“这种语言转换很有趣,但不是很符合我们的招聘要求。”

而且,我是在没有与候选面试者见面的情况下做出的这种下意识的评估,而且最重要的是,我根本没有意识到自己的偏见。这是不幸的,因为大家都认为这位候选人的多语种背景是有优势的。

多种语言的发展是最流行的。公司总是宣传使用 “最佳工具的工作”进行项目开发。而且,作为一个程序员,如果你对JavaScript脚本语言或某一种后端语言都不熟悉,你肯定无法胜任你项目的工作。即使那些只给大型机编写Cobol或RPG的开发人员开始感到压力,准备去掌握更多的现代语言。

但作为一名开发人员,切换开发语言和技术生态系统是否值得?

让我先声明一下我的问题:工作保障是你有能力去更换工作,而不是你老板的无能或不愿取取代你。

如果这句话是真的,而且你已经有了5-8年在一个流行的技术生态系统中的经验,比如Java,。NET,C,PHP等等,那么在未来的几年里,你还需要改变生态系统吗?

我有点怀疑,我对这位多语言的求职者的下意识反应,虽然是出于无知,但并不少见。很少有公司是真正需要精通各种语言的,在理论上,大部分公司真正需要的是那些在该公司所使用的技术生态系统中拥有最相近经验的人。

这让掌握多门语言的开发人员处于尴尬的境地,因为他们的大部分经验是在一个他们多年没有工作的生态系统中,使他们不能了解最前沿的技术方向,而他们在他们的新的技术生态系统中只有有限的经验,使他们比竞争对手的单语言开发人员更缺乏吸引力。即使通晓多种语言的开发人员在更广泛的技术领域拥有更多的经验,他们最终仍可能处于劣势。

还是我错了? 你会招聘一个会多种语言的开发人员吗?

附录:

想要掌握多种编程语言的 9 个理由

能用多种方式来解决同样的问题,掌握不同的编程语言意味着拥有更多的选择。毕竟,当你只有锤子时,一切看起来都像是钉子。

更有竞争力,拥有更多的就业机会。学习第二门编程语言,有时能加倍工作机会的数量。然而,这取决于你学习的语言种类。但无论怎么说,你将会有更多的合适机会,从而增加求职能力。

表明你具备学习新语言的能力。潜在的雇主会认为你并非是死板或者惯守成规的人。

学习是很有趣的。学习新的事物会让你的头脑保持兴奋。这将有助于你在新领域的成长和提高。

紧跟当前的技术发展趋势。了解哪个行业在独领风骚,就可以永远站在潮流的尖端,你的技能便不会过时。

这将提醒你为什么应该热爱你的“主”语言,或者如何将事情做得更好。有时候,只有尝试过新语言,才会知道主语言是何等的优秀。你会更加欣赏自己最爱的语言。与此同时,新语言可能会有一些惊人的特性,让你深觉相见恨晚。

有助于成为一个更加优秀的程序猿。学习新的语言,有助于提高在所有语言之间通用的技能,例如:设计和架构算法,或处理不同的数据结构。

针对工作选择最佳的工具。尺有所短寸有所长 - 有的语言更善于处理某些特定方面的事情。掌握了多种语言,你可以在工作中选用最佳的工具。

表明你的学习能力强。没有任何事情比掌握第二语言更能证明你的学习能力。

不想掌握多种编程语言的 9 个理由

掌握一种语言更容易。通常,集中精力和全心投入才能精通某一事物。如果不断地在多种语言之间进行切换,那么真正精通一门语言的概率就会降低。掌握一种语言也有助于你集中精力。

大多数人只需要一份工作,大部分公司只使用一种语言。在你被录用后,掌握多种语言不一定会有所帮助。有时候,只要掌握项目所用的语言就够了。

总有一些东西值得学习;有时候,这意味着要更深入地学习一种语言。

大多数情况下,专家能提更高的薪资要求,因为人们更愿意为专家支付更多的薪水。John Sonmez 在其视频《 I’m Not Sure I Want To Be A Specialist》中谈到为什么多面手并不总是最好的。

即便仅掌握一种语言,仍然可以被认为是一个伟大的开发者。是否是伟大的开发者与你掌握多少种语言无关。关键在于你创造的是什么。因为只涉及一种语言,所以你可以花更多的时间进行创造。

你只需要学习有限的软件开发工具。大多数语言只有为数不多的一些工具。切换语言往往意味着要切换工具。只掌握一种语言,你就可以更快地掌握相关的工具。这将有助于提高工作效率。

更易于定位自己的市场。因为只掌握一种语言,基本上你只会朝这个方向安顿下来(即使不是出于自己的选择)。

你可以凭借任何一种语言解决大多数软件问题。不管有多少人告诉你,大多数语言可以用于解决任何问题。如果解决问题是你的主要目标(本应当是),掌握更多的语言并不一定有助于实现这个目标。

深入理解一件事比表面了解十件事更好。

是否需要掌握多种语言取决于你的目标

想开始新的业余项目或业务?或许你只需要掌握一种语言。

想换行业或驾驭技术发展趋势?或许你需要掌握不止一种语言。

想在企业环境中工作?或许你只需要掌握一种语言。

想工作在前沿项目?或许你需要掌握不止一种语言,因为潮流总是在变化。

说实话,关于是否需要掌握更多的语言,其实并没有绝对正确或错误的答案,最后的决定取决于你。

你掌握了多少种语言?你擅长的领域是什么?你如何扩展它?欢迎分享。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-06-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序你好 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档