做开源项目的都是什么样的人?

开源 系统运维
面试快结束的时候,我会有个习惯,问问这位同学是否有主持或者参与开源项目,如果有就告诉我项目地址。我会认真看这个项目的质量,只要不是临时抱佛脚给自己贴金或者文末列出的例外情况,我都会在之前谈好的待遇基础上酌情再增加一些。

面试快结束的时候,我会有个习惯,问问这位同学是否有主持或者参与开源项目,如果有就告诉我项目地址。我会认真看这个项目的质量,只要不是临时抱佛脚给自己贴金或者文末列出的例外情况,我都会在之前谈好的待遇基础上酌情再增加一些。

  有些朋友可能会有相反的意见,觉得这个人做开源项目会耽误正常的工作。恰恰相反,于公于私,都是好事。这不是情怀,这是出于最现实的考虑。

  首先,参与开源项目代表了技术能力。

  在当前中国互联网公司激烈的竞争环境下,普遍加班严重。但他竟然在这种情况下还能有时间参与开源项目,说明能力的确强。把代码结构化、模块化做得好,把产品经理频繁修改需求造成的时间浪费降到最低,而且自己会用单元测试,把时间都省下来了。“懒”,是工程师的美德。

不是谁都敢把自己的代码放到 Github 这个“全球最大的同性交友社区”的。

  烂项目没人关注,烂代码会一堆人骂,只会 Ctrl+C/Ctrl+V的码农不敢贴。贴到这里的项目,所有人都会看到,会经受全球工程师的“考核”。自己写的代码会被拿来和各种同类项目比较,他就 会被催着逐步优化,越做越好。Github 已经成了技术能力的某种过滤器。

  其次,主导开源项目代表了产品能力。

  实际工作中,由于屁股坐的位置不同,产品和研发互掐是太正常不过的事情了。如果研发能从产品视角考虑一下某个功能,真正了解这个功能的目的并且一起讨论出更好的实现方法,那绝对能让产品小哥(或小妹)感动得痛哭流涕。功能更完善,而且还大大加快了项目进度。

  这种产品能力从哪来呢?主导开源项目是其中之一。他自己做开源的时候,会分析大家可能需求什么,然后评估这个需求到底有多少人真正需要,然后动 手开发,并与关注该项目的人互动持续优化功能排除 bug。这不就是产品方法三段论么。他要是天然就有这能力,公司真的能节省大量沟通成本。

  再次,参与开源项目代表了生活态度。

  可能会有一种情况,工作实在是太清闲,无事可做才做了开源项目,就像“当年明月”写《明朝那些事儿》。工作清闲的人那么多,为什么只出了一个“当年明月”?你在工作之余除了打游戏、刷微博、微信、调侃、网上闲逛之外,有主动提升自己能力的意愿么?

  这个“主动”其实就是生活的态度。或对未知事物充满好奇,或对将来生活水平有自己的期许,他无需外部压力,自我驱动提升自己,参与开源项目就是 为了提高自己的能力。这样的人,技术不会太差,而且愿意分享,对任何公司而言都是块宝,他能够带动整个小团队的氛围。俗点说就是“正能量”。

  很遗憾,我自己都没能 100% 做到。这个期许有点儿高了。

  例外情况

  凡事都有例外情况,尤其是这两种:

  • 在未征得领导同意的情况下,私自把公司的保密代码拿出来贴到开源项目里的;
  • 把别人的开源代码删除 copyright 信息据为己有的。

  这是个人品行问题,一旦发现就走好不送了。

责任编辑:火凤凰 来源: 雷锋网
相关推荐

2013-01-31 11:51:37

开源KVM

2013-02-27 10:53:16

开源KVM

2013-06-07 09:59:40

Google实习面试

2022-10-30 15:03:25

人工智能仓库管理机器人

2022-03-01 07:00:00

AI架构师人工智能

2017-12-11 17:22:32

智能人才制造

2011-06-08 11:02:31

项目

2019-08-20 08:37:25

裁员赔偿员工

2017-07-27 16:25:54

云管理公共云合并

2017-12-17 16:53:27

云计算亚马逊云端

2013-11-29 10:17:49

5G4G网络融合

2012-10-09 09:45:43

数据库实时大数据云计算

2013-08-20 10:31:16

云计算2.0云计算

2020-12-03 06:34:34

分支策略SIT

2015-04-08 10:40:09

2018-06-22 08:51:05

人工智能创业人才

2023-01-09 11:54:13

物联网IOT

2021-03-27 22:13:48

6G系统设备

2018-10-16 14:30:22

Python微信朋友圈

2015-09-02 10:18:45

游戏开发开发团队
点赞
收藏

51CTO技术栈公众号