程序员应知道的12件事
英文原文:12 Things A Programmer Really Needs To Know
“怎样才能成为一名优秀的程序员呢?”我曾为此写过一篇博文,文中强调了优秀程序员应该关注的开发语言及要了解的算法和其他技能。除此之外,程序员的生活还包含哪些方面呢?下文将为你展示。
1. 咖啡(Caffeine)
你需要找到你钟爱的咖啡种类。我首选的是黑咖啡,也有人会整天喝苏打水,也有人喜欢经典的威士忌和Jolt。
2. 逻辑性(Logic)
作为一个程序员,你应该用逻辑思维去处理所有事情。在你处理各种用户莫名其妙的需求时,你的逻辑处理能力才能形成。其中的用户包括你的项目经理、业务分析师及真正的用户。对于任何给定的项目,你可以向那些看起来相当疯狂的人寻求帮助。
3.时间(Hours)
希望有更多的工作时间。程序员的工作,向来不能遵守照朝九晚五的工作时间。尤其当项目临近截止日期时,你每天就要花更多的时间在工作上。有些时候,周末的休息时间也会因加班而被占用。所以程序员需要时刻保持工作的状态。
4. 企业的束缚(Corporate Leash)
在公司中你也许没有任何权利作出决定,但这并不意味着公司不会随时联系你。要与公司时刻保持联系,也许公司会给你配置一个手机,寻呼机或是一些公司自己提供的手机。但肯定不会是iPhone,因为这样做不是为了娱乐,而是工作的需要。
5. 责任(blame)
作为一名程序员,无论男性或是女性。只需要牢记一点,如果有任何差错,很明显是程序员的错误。
6. 睡眠(Sleep)
很多程序员因为工作经常熬夜加班,缺少睡眠。工作时间的加长,你会发现自己的睡眠时间少的可怜。例如:你不得不在早晨7点与你的团队进行电话会议或是在周六早晨5点开始部署工作。
7. 技能(Skills)
在日益激烈的企业竞争环境下,你一定要提高自己的技术。现在有大量的程序员还未找到工作,如果你表现不好,随时可以让他人替代你的职位。在业务领域中的专业知识并不是最重要的,因为公司内有专业的业务分析师。要谨记你只是公司的一个小角色,随时都可能被替换,所以要有一颗上进的心。
8. 气味(Odors)
随着办公时间的增长,屋内的空气质量也越发的浑浊。我说的并不是在房间内加热午餐才导致这样的环境。而我想说的是,房间内除了蓬头垢面的程序员还是蓬头垢面的程序员。
9. 7*24天的支持(24/7 support)
你会在不同的时间段被拉去工作,有时就像一个客服。这些工作虽然不会对你的工作和生活构成威胁,却是工作中的一大压力。最糟糕是,有时你需要召开一个10人的会议,而参会者对出现问题的解决方案却好无头绪,但从管理的角度又不得不来参加。他们中的任何一个人都给不了你帮助。
10. 压力(Stress)
项目的的成功与失败都是无法选择的。即便你很不同意项目的完成日期,但却不能有任何推延。当然你更不能为了在限定期限内完成任务,而去删减应用的一些功能。你必须在限定期限内发布一个完整的应用。
11. 非技术管理者(Non technical managers)
大多数程序员认为非技术管理人员是他拉的灾星。他们要管理一个程序员团队,但他并不关注程序员的生活,只是知道让程序员们一味的“编写代码”。他们会过度承诺,对待程序员就如同对待“牛”或是“资源”一样。
12. 政治斗争(Political battles)
这些事情程序员很少参与。但是,你的项目甚至你的团队有可能会成为这种斗争的牺牲品。你没有任何的权利去阻止它的发生,但注定你要被卷入其中。
上面列出的这些并不是所有程序员都会遇到的。如果你在你当前的或未来的公司中看到这些事情,你可以考虑其他发展途径。(张祺/编译)