【观点】如果你不是程序员 该如何雇佣程序员呢

简介: 导读:原文来自37signals.com,作者Matt发表的一篇《How to hire a programmer when you're not a programmer》。译文由国内整理编译为《如果你不是程序员,你怎么雇佣程序员呢》。

导读:原文来自37signals.com,作者Matt发表的一篇《How to hire a programmer when you're not a programmer》。译文由国内整理编译为《如果你不是程序员,你怎么雇佣程序员呢》。以下是文章内容:

如果你自己不是一位程序员,该如何雇用程序员呢?你需要注意一下几点:

1.他们有多坚持己见(固执)呢?

询问他们有趣的编程主题(如Ruby或Python?)。从他们回答的语调和推理中,可以得到很多信息。在我们最近一期节目中 ,杰夫说:“当人们对事情有强烈的见解,当他们可以大篇幅地谈论一些事情时,这就是一个很好的迹象,表明他们对这件事很有热情。”

2.他们为开源项目做了多少贡献?

看看他们的贡献。虽然你可能不是一个程序员,你仍可以知道他们是否写过一些代码。而事实上,一个人有所贡献,是一个良好的开端。“事实上,一直在贡献意味着他们正在使用这种工具,”Jamis说。“这就好比抓痒,就像他们接触到一些他们认为应该加以改进的程序,或接触到一个错误并且自己修复了那个错误。参与程度对程序员是一个很好的鉴别标准。”

3.他们有多享受编程?

他们不需要在自由时间的分分秒秒都去敲代码,但是你确实想看到一定程度的热情。Jamis说,“与其说在业余时间编码本身是最重要的事情,不如说它展示了你热情的态度和有自己的见解。”

4.他们真的掌控工作?(Do they actually ship?)

了解他们如何管理自己的工作。软件通常出小错误——了解他们如何避免这种情况。了解他们什么时候按时地完成了项目,并询问为什么这个项目是成功的。或从延迟项目中吸取了什么经验教训。“控制软件运行的能力是关键的,”据杰瑞米说。“他们是如何管理实际需要的任务并在一定的时间内完成,这是很重要的。”

5.他们掌握了什么?

皮克斯(Pixar)公司的兰迪·纳尔逊认为,能够掌控任何一件事意味着也能够掌控其他事。所以寻找那些掌控着一些事的人。候选人是一个优秀的厨师吗?或山地车选手?还是其他什么人物?”这是一个迹象表明他们也可以做您项目的主导者。“那是一种即使其他登山者几乎马上就要到达山顶,仍感觉我将要先到达山顶的感觉,”尼尔森说。“如果一个人在来到你工作场所之前都没有涉足,那么他成为工作的主导者的可能性也是很小的。”

6.他们的沟通能力如何?

你对编程了解的越少,你越需要依靠一个人去解释程序进度。这就是无论什么职位都要聘请大作家的原因,这是个好主意。例如,这儿有杰夫解释的在计划方案内Basecamp API人员更新到其他项目的例子:

我只是对Basecamp 和Companies APIs的人员进行更新调整。

我们现在允许客户和公司员工去接触通过项目认识的人和公司。在此调整之前,公司员工和客户只能看到对方使用的特定的项目ID。没有办法让他们看到在项目过程中参与的所有人(例如,同事)。

例如,如果API用户发出的请求,一个是鲍勃,另一个是吉尔,那么/ people.xml文件将返回给鲍勃和吉尔。如果请求的用户是管理员, 那么帐户中的所有的人都能收到。

这同样适用于公司管理。

如果一个程序员既能够编码,又能讲非程序员能听懂的的话,那么很多事情是不太可能出问题的。(编注:上面这6点,是招聘官需要知道的注意事项。关于在聘用程序员或开发人员的时候,需要问哪些问题,可以参见《如何面试程序员?》这篇文章。)

试用(Test drive )

如果可以,摈弃“全要或无用”的决策模式。雇用一个全职员工是一个很大很困难的决定。为小项目聘请员工,让他们在空闲时间完成这些项目,这种方式更容易为双方所接受。《Getting Real》 中的“浅尝辄止” 一文中谈到:

在雇佣任何人之前,先给他们一个小项目来考虑。我们就会了解他们对待这个项目是如何沟通,工作的,等等。当他们设计或者编写的时候,就会给你带来很多发现。你会相当快的学习,无论氛围是否恰当。

可以用日程安排来坚持这种方式,即使只需要20或40小时,也比什么都没有要好。适合或者不适合,都会显现出来。如果没有,那就是双方想要先测试工作而隐藏了自己的问题与风险。

仔细考虑一下,你能提供什么,并且如何才能让你的职位尽可能的吸引人,这也是个不错的主意。壶里的蜜越多,才会有越多的蜜蜂飞进去。(恩,不管怎样,可以肯定这不像一个东西放在那一样)在《Great Hackers / 伟大的黑客》中保罗点格雷厄姆提供了一份列表,关于如果吸引最优秀的程序员:优秀的开发工具、开源软件、带门的房间、一个感兴趣的问题和聪明的同事。如果你有其中的任何一项或者全部,确保让潜在的雇员能够了解到。

自己动手?

所有这些都会有所帮助,但是很显然,雇佣程序员最好的方法是你自己能至少了解一点编程。雇佣一份你从来没有做过的工作,真的是件很困难的事。因此,要在雇佣了那些人之后管理他们,格雷厄姆在他的《伟大的黑客》一书中有过如下讨论:

我看过关于如何管理程序员的一些文章。事实上有两种:一个是如果你是程序员,你该做什么,另一个是,如果你不是程序员,你该做什么。而第二种可以总结为两个字:放弃。

问题不在于日常管理。实际上,真正优秀的黑客(hacker)是自我管理的。问题是,如果你不是黑客(hacker),你就不会知道谁才是真正优秀的黑客(hacker)。

确定自己是否能在招聘员工之前了解一些编程技术。事实上,杰森在与DHH合作之前就已经开始学习PHP了。同样的,在我们当中有人学会如何配置服务器之前,37signals不会雇佣系统管理员。如此做来,你就会对寻找应聘者以及你想解决的问题有更深入的理解。

至于你在这过程中犯的错误,要记住,这就是“真正的”程序员的工作方式。“运行迭代感觉就像永远反复的错误校正”杰瑞米解释到。“这听起来很令人泄气,但这却是允许的。该死,甚至测试驱动开发也是反复的错误校正。所以,建议你应该先从自己做起。”

原文链接:How to hire a programmer when you're not a programmer

译文链接:如果你不是程序员,你怎么雇佣程序员呢

目录
相关文章
|
前端开发 程序员 pouch
程序员最重要的八种软技能
笔者在带团队的六年中发现,程序员们在职场都有一个共同的困扰:“好像写代码都没什么问题了,日常工作基本上都是应付业务需求的开发,好像找不到其他的更大的附加价值了,我应该找一些什么样的发力点才能让我的价值更突出呢?” 。笔者以为,这就是典型的硬技能当下「看似」没有什么问题了,瓶颈卡在了软技能上。所以开篇做个小分享,聊聊程序员的软技能。
41582 18
程序员最重要的八种软技能
|
存储 缓存 前端开发
我想转行程序员,请鼓励一下我
不会游泳,换个水池是没用的。
125 0
我想转行程序员,请鼓励一下我
|
分布式计算 算法 NoSQL
如果说程序员的硬通货是技术,那么软技能是什么?
程序员往往一心扑在编程技术上面,学习编程语言,算法,网络,自己子领域相关的知识等等。这非常正确,也是作为coder的核心竞争力所在,姑且称之为“硬技能”吧。 对于有一个程序员来说除了日常码代码之外,其实也需要很多编程之外的软件能,非专业上面的技能可以更好的展现你的情商,与人合作的能力等。
|
程序员 开发工具 IDE
对程序员非常重要的24个软技能
英文原文:Soft Skills are so important to Software Engineers   软技能通常是被低估的。几乎所有的软件工程师都知道要关注技术的提高,但你忽视的软技能很可能会影响你的职业生涯。
1098 1
|
架构师 Java 程序员
程序员职业危机,到底是什么使得同是程序员差距这么大?
程序员的30岁现象 在官场上,曾经有一个59岁现象,就是官员们会在59岁时,会使劲捞上一把。很明显嘛,权力过期作废,再不捞就要退休了,没有机会了。
1565 0
|
前端开发 程序员
招聘本科程序员好,还是专科有经验的程序员?网友答案很现实!
大家可能已经发现,最近几年来的各种招聘,很多岗位都要求本科以上学历,小型的创业互联网公司艰苦的工作岗位,才有部分专科岗位 。这对于专科生来说,看下面这位HR的经历着实郁闷,怎么破? 网友评论: 也...
1220 0
|
程序员
程序员加班那么多,公司为什么就不多招几个程序员呢?
绝大部分的程序员都会存在经常加班的情况,至于为什么程序员加班这么多?
4985 0

相关实验场景

更多