聘用Node.js开发者的六个建议

导读:假设你正想聘用一名Node.js程序员或者外包项目给独立职业者,你将寻找怎样的人呢? 好的应聘者需具备哪些能力呢?这个简短的指南将为了你筛选Node人才提供一些建议。

1)为什么选择Node?

Node的logo酷毙了

你必须询问自己的第一个问题便是:为什么选择Node?现在许多公司聘用Node开发者,但是他们都是必要的么?我看不见得。

毫无疑问,Node是一个有力的工具,但是它像一头难以驯服的猛兽。它可能并不适合于你的应用。当你雇用一名开发人员之前,停下来想一想,为什么我会选择Node?如果你仅仅只是需要开发一款CRUD (增删查改) 应用,那么你最好是选择聘用一名Django或者Rails开发者,因为他们具有更大的社区和更详细的文档。

2)应聘者的开源项目背景

一旦你确定Node是适合你的,那你会寻找什么样的开发者呢?

评估应聘者最好的地方就是他们的开源作品(open source portfolio)。也就是说浏览他们的GitHub资料或者其他类似的信息。很有可能,应聘者拥有大量的开源Node项目,更好的是,这些项目被细心的维护着。

比拥有自己的Node项目的应聘者更好的,就是那些同时对其他node或Javascript项目提供bugfixes(Bug补漏)和patches(补丁)的应聘者,因为这意味着他们具备良好的交流技能和团队精神,这些是杰出员工必备的。但是如果他们仅仅是对Node项目本身有贡献只能说明他们能够很好的理解Node的内部结构而已。

3)数据库经验

最后,数据是关键。

Node.js应用有很多可选的数据库,你应该确定你的应聘者熟悉这些数据库。你是需要关系数据库还是NoSQL呢?为什么?你想使用哪种实现?

这些都没有标准答案,但是可能会有大量的错误答案。确定你的应聘者精通相关的数据库,并对他们有自己的看法,以及具有相应的技能来支持这些观点。

4)非HTTP协议项目经验

虽然Socket.io的logo不炫,但它仍然势不可挡

Node的许多隐藏功能——除了常见的HTTP应用外,它可以事件驱动的方式为任何应用服务。

应聘者具有为非HTTP应用使用Node的经验么? 一些不错的例子可能就是XMPP server/client协议,或者某一点对点协议,像BitTorrent。

即使你的应聘者没有非HTTP协议的开发经验,但他们至少需要有Socket.io的经验。Socket.io是Node上的一款了不起的WebSocket包,它使得交互式的、多用户Web应用成为可能。

5)Node部署和DevOps

Node的部署是很棘手的。没有关于如何部署Node的规范文档,因为大部分的Node部署具有不同的需求。

每个Node开发者也必须是一名DevOps,一名涉足运营的开发者。应聘者知道系统奔溃的时候应该做些什么吗?他们知道如何将他们的应用扩展到多个数据库服务器上么?他们如何能实现负载均衡?你将期望你的应聘者解决所有这些问题。

一些部署Node.js的相关难点,请查阅Node.js Deploy Guide,这其中包含很多部署Node的相关问题。

6)安全性

Node.js领域显而易见的就是安全性问题。

大部分撰写和部署Node应用的资源指南都忽视了安全性。近年来有很多关于Node安全性的大灾难,如果你不想遇到麻烦,那么就确保你的应聘者具有应对安全性问题的能力。

应聘者了解SSJSi(server side javascript injection)攻击是什么吗?如何避免或减轻攻击的影响?如果应聘者不了解这些,请他们回家吧。

结论

读完本文,关于如何寻找你的下一个项目的NodeJS程序员,你应该有一些较好的认识了。

原文链接:gun.io

译文出自:webapptrend

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值