本文转载自公众号“读芯术”(ID:AI_Discovery)。
软件工程师是一个奇怪的物种。在写文章、评论和点赞别人社交账号的时候,我们都非常活跃,但与其他人不同的是,我们玩Stackoverflow比Facebook要多得多。在我们看来,bug不是昆虫。我们对“还有一件事”这个短语非常害怕。
这就是我们看待事物的方式。
今天我起床后就一直在构思做一个计算器。到晚上时,我已经开发出了一个不错的版本,只是不知道用它来做什么。这就是我们在外界看来的疯狂之举。但是,即使在软件开发人员的群体中,也有一些特别的人群会让其他程序员也觉得很奇怪。来看看其中的一些人吧!
电脑狂
特朗普认为移民将抢走美国人的工作。我不是特朗普,但我敢肯定,这类工程师将取代许多其他工程师的工作。一名普通工程师每天工作8个小时,但是这类工程师可以轻松工作18个小时。这至少相当于两名普通工程师的工作量了。
你的老板总是拿这些人做比较:
- 看看X,他还在工作。
- 看看Y,她来这么早。
他们不担心工作和生活的平衡、健康等小问题。他们的口头禅是:
- 别担心,我会处理的。
- 我会在周末做的。
- 我今晚就做。
当你的周末忙于远足时或者浪漫约会时,他们会忙于将测试用例添加到代码中,或者优化程序包中的特定代码块,甚至在你的报告中添加注释。
真正的问题是,从来没有人要求他们这样工作。他们甚至会试图让团队的其他成员感到内疚,比如:是啊,回家好好享受晚餐吧。明天之前我就会完成接下来三周的代码编写。
理论家
图源:unsplash
他们是行走的百科全书,无论是编程、软件开发、项目管理、相对论还是51区,他们都无所不知。任何一个理论,他们都一清二楚。他们不仅知道这些理论,而且会花上几个小时给你解释清楚,即使你并不想知道。
他们为自己设定了一个非常高的标准:一天内就能完成开发、测试和部署的代码,他们往往需要花费15天。但是他们的代码就像梵高的杰作。世界上有一半的人都无法从中破译出任何东西,但这也是一种美感。
如果你能让理论家专注于项目本身,而不再花时间在究极排序算法上,那么他们将会变成一笔宝贵的财富。
情报员
他们从来不坐在自己的座位上。你很少在他们的设备上看到IntelliJ是打开的。他们不相信自己擅长这些工作,但是他们有一个技能——搜寻和收集信息。
他们很少单独去咖啡馆,也许他们并不抽烟,但你可能会在吸烟区看到他们,他们唯一的目的就是与别人交流以获取其他团队的信息。他们就像一个前往不同国家获取重要情报的特工。他们通常这样说:
- 你知道A先生在领导一个重组计划吗。
- 我有可靠的消息说Y先生要被解雇了。
- 我知道他们私下关系不太好。
他们也喜欢传播消息,也许是错的,但那就不是他们的问题了。
图源:Google
走捷径者
他们是一股无法阻止的自然力量。他们的工作速度比其他人快两到三倍。他们是谷歌搜索的专家,只要能奏效,他们就不会费心去理解他们复制的东西。
问题在于,他们至少有一半的速度来自于偷工减料。他们的代码和理论家的代码一样难以理解,但这是因为他们的代码质量太差了。他们没有测试用例或注释。他们的代码没有优化。他们的代码是编程教科书中“不要这样做”示例的一部分,但是,这些代码竟然可以神奇地奏效。
如果同一个项目中有两个这样的人,那这个项目一定会失败,因为一个总是被另一个人对代码做的修改而干扰,他们总是拼命的在开枪射击自己搭档的脚。
如果项目不能按时交付,给他们打个电话,首要任务就是让项目运行起来。你可能需要创建一个单独的项目来优化和重构它,但这是以后要解决的另一个问题。
游戏者
他们喜欢游戏。任何关于游戏的问题,无论游戏最新与否,他们都能对答如流。他们知道FIFA20的新特点。他们知道解决所有游戏问题的方法,从我卡在《最后生还者2》第四关了或者是我的PS4开不了机了。
如果你的问题与软件工程有关,那就去问问别人吧。因为他们可能不知道答案,但更重要的是,他们根本不关心开发故障。他们工作得很快,这样他们就可以回家玩《塞尔达传说:荒野之息》的下一关了。
乐观主义者
这些人对你给他们的任何工作都非常有信心。与他们的一般互动如下所示:
- 给他们一个任务
- 保证在第二天完成
- 一整周都不见了
- 收到提醒
- 再次保证第二天完成
- 一个月后终于完成了任务
他们是团队错过任务交付期限的原因。但这不会改变他们对未来的态度。每当分配给他们一项任务时,他们的大脑里就会嘀咕——明天就能完成。
他们所做的工作大多超出了他们的能力范围。他们总是在尽力同时兼顾多项任务,但最后把所有任务的截止期限都搞砸了。
普通人
图源:unsplash
最后一种是平庸的普通人。所有的软件行业都有这样的人。他们介于理论家和走捷径者之间,他们的工作很普通。“足够好了”是你能从普通人那里得到的最好的东西。
他们的代码不是模范,但也不至于很烂。如果你问他们一个非常有技术性的问题,他们很可能会保持沉默,或者避免目光接触。
他们在项目中做了大部分的工作,但却最不受尊重。他们在会议上不怎么说话。他们同时和自己的组员一起闲逛,主要讨论程序故障、任务和截止日期。大多数时候,他们沉浸在IntelliJ(或Eclipse)窗口上。
他们大多对上述人群感到敬畏。
那么,你是哪种类型的软件工程师呢?