在两个程序员之间进行选择:经验还是热情?


82

我的职位是必须雇用一名程序员,并可以选择2名候选人,第一个有经验,但是他对编码没有热情,他说,第二个没有经验,但是他有出于热情,他在面试中表现出色,并获得了认证。

我们有资源来培训某个人,但是我真的不想浪费这个过程并雇用一个会让您失望的人。有人可以帮助我解决这种情况吗?


6
我希望它是“熟练vs热情”
iamgopal 2011年

32
-1表示对被访者没有热情的被访者。
2011年

1
请详细说明。在这种用法中,激情是一个很重要的词。同样不清楚的是对编码的热情是严格地指开发的编码阶段,还是指软件开发的速记。你需要什么?达到短期目标是最重要的事情吗?
mctylr 2011年

4
如果他对激情撒谎或者只是在演戏怎么办?
Lukasz Madon

8
向接受采访的人+1,他承认自己对所面试的工作没有热情,至少他很诚实。
砂拉越Positwinyu 2011年

Answers:


156

以对工艺的热情雇用经验不足的程序员。一个热情的程序员会很快学习,关心他的工作并乐于完成。我曾经和这两种类型的程序员一起工作过,我总是会聘用热情的类型来代替经验丰富的程序员。

不在乎工作的人最终会导致质量以及按时完成任务。

由于您明确声明自己拥有培训某人的资源,因此这是毫无疑问的。雇用热情的程序员。


6
+1 ...至少热情的人没有理由离开...除非他/她太热情。
乔布斯

10
+1俗话说:“那个人有1年7次工作经验”。一个明确的案例,其中的经验(某种形式的)并不能真正为您服务。
quick_now 2011年

14
最重要的是,许多“经验丰富”的程序员只是生活了很长时间的人,而不是他们是好人:p
Philippe

3
每次+1。这是一个很多更容易获得经验比它要恢复的激情和你不需要任何球队“激情池”。
约翰·帕克

5
没错,请注意。一个热情的程序员可能会很快学习。有时,不幸的是,有些人“只是不明白”。
2011年

117

虽然这里没有人能告诉您要雇用的人,但我还是要对诉讼程序提出一些反对意见。

我们最新的入门者之一是专业经验的绝对形象。

在9点进5点,午餐一个小时。没有深夜,没有周末。

到目前为止,这对大多数已回答的人来说似乎是可怕的。

然而,不仅是他的代码更好的(干净,简洁,构图,易懂,易维护,测试时间!)比大多数其他团队成员,他也是一个外观极好反射板激情开发者时,他们认为他们是即将解决我们所有的麻烦是一个单一的部署,知识的源泉和健全的声音,这使我们摆脱了自己。

他知道如何反抗强力管理。他可以看到瞄准镜沿路行驶一英里。他编写的单元测试比其他任何人都多。当他沉迷于一项无聊的任务时,他不会b吟和抱怨,他可能会在5年后仍在这里。

添加到我的第一个答案

除了他告诉你的事实之外,你怎么知道热情的家伙热情的?

他可能正在做他最好的敏锐的脸,因为他非常需要这份工作,现在人们会说什么要找工作

他可能认为自己对编码充满热情,但是当他意识到我们中99%的人都不写性感的代码时,光泽会开始失去光泽。

经验是可以量化和证明的。

经验表明,我们大多数人每天都在非性感系统和肮脏的旧代码上工作。经验表明,他们仍然可以在早上将自己拖下床来解决。

我想重申,我没有告诉任何人雇用。我认为经验并不比激情好,反之亦然。对于那些热衷于编码的人,我并没有因此而感到沮丧,但是看到这里缺乏平衡,我感到有些担心。在这里,所有其他获得最高投票的答案都是很好的有效论据(Matthew Kubicina,User 9094,OtávioDécio,Bernard Dy),即使我对他们的某些观点有所保留,我也将其投票赞成。


7
+1也就是说,这听起来像是该死的人非常热衷于编码。(从这个意义上说,我认为没有专业/热情的鸿沟。)
John Parker

9
他不会将自己的空闲时间花在编写代码上。他没有加入有关博客作者对最新编码时尚的不同观点的争论。他总是告诉人们不要试图使它变得如此复杂。他不是书呆子,工作也不是他人生中的第一贵。那么,您如何发现一个 "somewhat" passionate programmer?在编程中选择学位和职业不会暗示一些热情吗?仅仅因为候选人没有认定自己是一个狂热的忍者超级书呆子,而他不擅长于StackOverflow,这不就意味着他不是一个不在办公室工作的极客吗?...
gingerbreadboy

4
我确实提到了渔获物In at 9, out at 5, one hour for lunch. No lates, no weekends.。另外,写clean, concise, patterned, understandable, maintainable, testable, on time代码的人真的好得难以置信吗?还是只是经验丰富且专业?
gingerbreadboy

15
9-5可能也会有说话的经验。通过制定法律,它迫使管理层做出相应的计划,而不是试图浪费时间。加班有一种习惯。
MIA

32
为9-5的人+1!不要小看那些刚刚从事这项工作并能产生出色结果的程序员。不幸的是,管理层倾向于忽略那些大声喊叫的人。在我们的地方,会过期一周,然后宣布如何艰苦,你一直在努力完成它往往会得到注意的不仅仅是得到它的时间在首位做得更多。
2011年

50

我会说这取决于团队的其他成员

  • 如果您已经有很多经验丰富的程序员,那么请选择有激情的人

  • 另一方面,如果您只有一个或两个经验丰富的程序员,再加上许多学生 /便宜的劳动力,但经验很少,却又不花太多钱,那么经验丰富的程序员会更有用。


13
除非经验丰富的先生感到无聊,束手无策或具有破坏​​性。在这种情况下,您将面临灾难。我见过许多经验丰富的人,他们的经验是唯一正确的方法,因此他们拒绝按照公司的标准工作,不同意战略,抱怨管理……并且变得腐蚀性。激情可以被摧毁,但也可以(如果被利用)成为一种热情和冲破垃圾的强大力量。
quick_now 2011年

2
我完全同意。我实际上是要写一篇有关经验的重要性的文章。一堆即时培训不能替代5-10年(或更多)的经验。这就取决于经验丰富的程序员开始能够立即看到所有陷阱。另外,我看到没有经验的程序员倾向于创建更复杂的解决方案。因此,如果您尚未在开发团队中拥有这样的经验,那就掌握它吧!
皮特

1
+1。从其他答案中可以看出,有理由选择任何一种方式。因此,选择一个最能与您现有团队互补并提供您所没有的东西的团队。
BlairHippo

20

“经验丰富”并不一定意味着“陷入困境”

作为我自己的一名中级经验丰富的开发人员(我不到40岁),我有点震惊,这里的绝大多数答案似乎都暗示着某个“去过那里就这样做”的人不知道该怎么做。跟上年轻人。这是一个不公平和危险的假设。

我想知道这个有经验的家伙实际上在说什么。如果他说“我对编码没有热情”,那么是的,我可能不会考虑他,就像我可能不会将素食者视为屠夫一样。但是,如果他对“您在空闲时间做什么”的答案与编码无关,而面试官暗示这意味着他对编码没有热情,那就完全是另一回事了。

请注意,我并不是说他应该雇用有经验的人或热情的人。 我没有面试任何人,也不了解他的公司文化。

来自Dictionary.com:ex·pe·ri·enced
/ ɪkˈspɪəriənst / Show Spelled [ik-speer-ee-uhnst] –形容词

  1. 通过经验在某个特定领域明智或熟练的人:经验丰富的老师。
  2. 通过经验学习;经验教训:经历逆境。
  3. 忍受 经历 受苦:经历过的不幸。
    起源:1560–70;经验+ -ed2

—非形式的,形容词拟形的,形容词的形式,形容词,形容词的形式,形容词

—同义词1.熟练,专家,实践,经验丰富,经验丰富,精通,熟练,合格。


7
作为一名将近40岁的行业兽医,除非他有一个非常具体的问题要解决,否则他很少在业余时间到处乱搞代码,谢谢。您无需随身携带这份工作就可以做到。
BlairHippo

平衡工作和家庭生活与冷漠,低能量和窒息之间有区别。我认为没有人会暗示体验不好,只是没有驾驶的体验基本上就像没有加油站的超级快速肌肉车。
jmort253 2011年


11

您应该聘用您认为最能满足公司需求的人。我见过一些案例,其中有一个非常优秀而热情的开发人员被雇用,只是为了快速完成他为付费雇主所做的一切,并急于照顾自己的生意。


请详细说明-“照顾自己的生意”是什么意思?
工作

1
@工作:我想他会按照自己的议程去做,并且做“灰色地带”的工作,即没有明确建议也没有禁止。对于一个有很多漏洞和烂掉零件的项目来说,这可能是一个很好的福音,但至少在短期内,它通常会破坏进度表/路线图。
Macke

9

IT管​​理顾问Paul Glen在《Computerworld》的这篇文章中谈到了工作场所的激情概念。您可能会发现这是一个有趣的观点,尽管我不同意Glen隐含的断言,即激情与稳定是相互排斥的。我想你们可以两者兼得。我建议您也浏览本文后面的评论。有些人有其他见解。

也就是说,就您而言,这似乎是两者之间的选择。但是,让我们确定您说“激情”时的意思。

当有经验的人说他不热衷时,是他不在乎工作质量,还是编程不是他的初恋(也许他有家庭?对汽车,音乐或音乐的终生兴趣)家庭酿造?)。的确,如果一个有经验的人对学习三种新语言并没有热情,但仍能跟上他的主要语言,工具等以及自家酿造的啤酒,我想我可以接受。

但是,如果有经验的人是一个糟糕的开发人员,并且不关心改进,那么我就不会这么无情,我会称之为不专业。在这种情况下请竖起大拇指。


编辑:阅读更多答案后,我想我要补充一点。我认为困难在于OP的问题参数:我们不知道两个开发人员中哪一个胜任。我们专注于评估看似不一致的两个特征,尽管如上所述,我相信您可以既有经验也有热情。但是,两者也可能是坏事。

我曾经与一个经验丰富的人合作,他曾经很聪明,但他一生的大部分时间都是在真空中发展。我花了很多时间与他争论,因为我没有完成任何工作。他既有经验又充满激情,但都没有真正帮助我的团队。


3
是的,我热爱自己的工作,但我还不够热情,无法吸引反复的通宵达旦,只是因为有些经理人的行为还不够。
Benjol 2011年

1
优点,尤其是(IMO)的编辑。要继续走同样的路,当然有可能对编码充满热情,但仍然会感到恶心。我也和那些家伙一起工作过。
2011年

5

如果阅读“代码完成”,您将知道:

经验并不像您想的那么重要

这是因为即使软件领域的基础知识也在不断变化,这意味着有经验的人会固守旧时的习惯,对年复一年地学习新事物不感兴趣。

充满激情的家伙几乎可以肯定会做到这一点-即使在他自己的时间。我每次都会对经验充满激情


答对了。我对许多“经验丰富”的开发人员知道,他们知道一种语言,一种他们现在正在使用的语言,一种技术用于这种语言,另一种技术用于……他们正在使用的语言。没有其他的。他们没有其他兴趣。
于尔根A.艾哈德

2
真? 自1980年以来,SO社区就无法提出一项重要的发明,该发明至少影响了IMHO的软件基础。 艾伦·凯Alan Kay)对此有一个引述。
justkt 2011年

1
@Jae表面上,我理解并同意你的看法。但是我也知道一些开发人员知道几种语言,并且所有语言都以相同的方式进行编码:非常糟糕。我认为关键是能力,因为经验和激情可以有好有坏。如果团队的开发人员胜任,那么经验和热情是仅次于团队的组成部分的次要特征。
Bernard Dy

20年前的学术界并不了解主流编程。有了适当的教育,人们就不必在业余时间尝试一些事情。
Sjoerd

@Sjoerd LINQ-20年前?他们可能了解理论上的知识,但我们都知道实践有很大不同
billy.bob 2011年

3

都没有

除非这是一项艰巨的任务,而且也许直到那时,我都不会雇用任何对他们的工作不热衷的人。通常没有激情意味着他们

1)不喜欢自己的工作:

2)如果需要时间,他们会花费最少的金额,也就是“这只是一个对象”

3)远离团队/公司的气氛,而不是增加气氛

另一方面,经验对于程序员而言至关重要,一个热情的菜鸟也许可以牺牲牺牲自己的“生活”和其他爱好,从而花费1万小时的经验来更快地成为专家,但是这仍然需要花费一些时间。年份

由于经验是非常有价值的,因此在经济上几乎不会因工资略低而被抵消。所以我不会说,和一个经验丰富,至少热情的人一起去。年纪较小(因为他们没有讨厌的孩子和妻子),而且越热情,他们所需要的经验就越少:)


3
那是个警察。
dan_waterworth 2011年

基于该论点,将不会雇用任何初学者。除非有工作,否则您将无法获得经验。
康拉德·鲁道夫

仅当您不赞成糟糕的雇用做法时,这是一个很大的选择;)在某些项目中,您确实确实需要很多程序员(即使他们后来陷入布鲁克斯法则),在这里您也可以招募新手。初学者/新毕业生还有一个很大的好处,那就是您可以在他们成长,了解并继续前进之前,在小公司的泡沫中日夜经营他们。在早期,这似乎是微软的战略。
霍姆德2011年

1
那么,如何成为一个愤世嫉俗的混蛋?;-)
于尔根A.艾哈德

嘿,这不是我要做的那样:P但是了解这样的业务“惯例”以避免落入他们真是太好了。希望大多数人有足够的意识不雇用他们。此外,我个人认为,雇用较少但技能更强的程序员和丰厚的报酬,会使他们从商业角度出发,并且对每个人都更加愉快。
霍姆德2011年


1

它很容易将对代码的热情与对工作的热情(或对获得每月支票的热情)混合在一起。

另外,它易于与多年使用隔间混合使用。

无论如何,一个真正有经验的程序员可以比新手做2到10的工作,无论新手是否有激情。

相反,新手可以花很多时间做愚蠢的问题,请记住,大多数程序员是根据他们的工作而不是教别人来评估的。


1

听起来您可能需要更多信息才能做出决定。在面试过程中,您是否让应聘者实际设计或编写任何代码?如果没有,那也许就是您的下一步。考虑一个简单的问题,让他们继续工作并让他们在短时间内完成该任务。

在面试的后期,与他们一起回顾他们的工作。看看他们能很好地解释他们的解决方案。探究他们,看看他们是否可以想到改善已交付产品的方法。

以我的经验,对开发人员进行这样的“审核”是确定真正值得招聘的候选人的最佳方法。


1

热情并不总是转化为技能。有时激情==傲慢和僵硬。

经验并不总是转化为技能。有时经验==傲慢和僵硬。

底线:为给定的工作雇用最合适的人。这包括热情,经验,技能,个性,可靠性和不要忘记坚韧。


0

归根结底,没有激情就没有经验。一个没有激情的经验丰富的人永远不会发挥自己的全部潜力,也不会提高自己的技能。所见即所得,故事的结局。

热情是一种炽热燃烧的燃料,可以将经验转化为经验。热情可以帮助解决有经验的人说不了的问题。充满热情的人们将一直在寻求进步。热情的人不会放弃。

放弃的经验丰富的人就像吉恩·怀尔德(Gene Wilder)在《炽热的马鞍》中的角色。他被公认为是西方最快的枪支,但是所有的经历绝对没有意义,因为他再也无法握稳武器直射了。

一个有经验的人如果不能在比赛中胜出要保持稳定,那只会成为一种责任。

与充满热情的人一起走,或者继续面试更多的候选人,直到找到正确的头脑和智慧。


0

我觉得,如果您发现在面试中经验不足的候选人在技术上表现出色,并且他也喜欢编码。因此,如果他与受过培训的人相比得到了适当的培训,那么一段时间后他将对您的组织更有生产力。

如果您想吃的话,请故意减少别人烹制的食物。最后的选择是您的。


0

哇,这最终激起了很多争论,我最终决定给菜鸟一个机会,到目前为止,他有很大的希望,以至于我很担心也许他正在努力工作,以至于会筋疲力尽。

最后,我给了他们一个简单的10分钟编程任务,并讨论了他们是如何实现自己的解决方案和其他可能的解决方案的,利弊,我只是觉得菜鸟似乎已经有了很好的理解。所以最后我读了很多文章,但我觉得这个年轻人是个不错的选择。

经验没有错,但是很多程序员去上班并花时间做白日梦。您不必在业余时间进行编码,我们很多人都这样做,但这不是必须的。一个有能力的程序员应该每周花40个小时在工作上,以解决问题并及时更新其工具。事实是,伟大的程序员与普通的程序员之间存在着鸿沟,因为在这个职业中,一个人只能滑行而成为一名建筑宇航员。

非常感谢大家


4
我喜欢您如何回答自己的问题(或实际上没有回答)然后接受它。
Pemdas 2011年

0

IMO取决于为什么不热情的人会失去激情。他们有吗?他们宁愿做架构,也不愿摆弄API和循环?他们是否只是因为看到不良的代码/管理不善而使他们停止关心而感到烦恼?不要轻描淡写地说“我对自己的工艺不热衷”的人,因为可能有正当的理由。即使是最热情的人,每次尝试表现出热情时,也会碰壁而很快失火。就像震惊的仓鼠一样,最终他们将学会拖延派对路线,而失去激情。


-1

我认为,对于程序员来说,激情是高估的选择点。雇用您认为可以在工作中停留时间最长的人。


我认为恰恰相反-根据我的经验,不热情的开发人员往往是懒惰的开发人员。他们不关心正确完成工作,而只是关心完成工作。
sevenseacat 2011年

@ leed25d-不确定我是否同意。我要在团队中做的最后一件事是一堆肥猫坐在附近,吸吮所有氧气并浪费空间。
jmort253 2011年

在我看来,你们俩都在谈论能量而不是激情。我坚持我的声明,即“激情”是当今的流行语。
leed25d 2011年

3
切勿雇用不关心自己工作的人。它将显示在您的产品中。
妮可

1
编程是技术能力和创造力的结合-没有激情的程序员会错过一半的结合。在极端情况下,即使他们的技能开始不错,他们也会迅速退化。
FinnNk 2011年

-1

我会和那个热情的人一起去学习,因为他愿意学习,如果给他适当的指导和动力,他会带来很多的成就。

编程总是2 + 2 =4。它永远不会改变,充满激情的家伙会用更多产生相同结果的方式为它添加更多结果4。


除非你的老板叫奥布莱恩。
chiurox 2011年

@chiurox:如果我是老板,我总是会喜欢热情的家伙。
Thalaivar 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.