`

程序员应知道的12件事

 
阅读更多

http://news.csdn.net/a/20110830/303824.html

 

 

程序员应知道的12件事

导读:在当今竞争日益激烈的环境下,程序员们的工作环境与工作状态并不理想。作者Robert Diana就此话题写了一篇文章《12 Things A Programmer Really Needs To Know》,他分享了自己做程序员的12个经验心得,更好的帮助程序员认清自身环境,并更加有效的提升自身价值和解决项目开发过程中的难题。现CSDN对原文进行编译,内容如下:

“怎样才能成为一名优秀的程序员呢?”我曾为此写过一篇博文,文中强调了优秀程序员应该关注的开发语言及要了解的算法和其他技能。除此之外,程序员的生活还包含哪些方面呢?下文将为你展示。

1. 咖啡:你需要找到你钟爱的咖啡种类。我首选的是黑咖啡,也有人会整天喝苏打水,也有人喜欢经典的威士忌和Jolt。

2. 逻辑性:作为一个程序员,你应该用逻辑思维去处理所有事情。在你处理各种用户莫名其妙的需求时,你的逻辑处理能力才能形成。其中的用户包括你的项目经理、业务分析师及真正的用户。对于任何给定的项目,你可以向那些看起来相当疯狂的人寻求帮助。

3.时间:希望有更多的工作时间。程序员的工作,向来不能遵守照朝九晚五的工作时间。尤其当项目临近截止日期时,你每天就要花更多的时间在工作上。有些时候,周末的休息时间也会因加班而被占用。所以程序员需要时刻保持工作的状态。

4. 企业的束缚:在公司中你也许没有任何权利作出决定,但这并不意味着公司不会随时联系你。要与公司时刻保持联系,也许公司会给你配置一个手机,寻呼机或是一些公司自己提供的手机。但肯定不会是iPhone,因为这样做不是为了娱乐,而是工作的需要。

5.责任:作为一个程序员,无论男性或是女性。只需要牢记一点,如果有任何差错,很明显是程序员的错误。

6. 睡眠:很多程序员因为工作经常熬夜加班,缺少睡眠。工作时间的加长,你会发现自己的睡眠时间少的可怜。例如:你不得不在早晨7点与你的团队进行电话会议或是在周六早晨5点开始部署工作。

7.技能:在日益激烈的企业竞争环境下,你一定要提高自己的技术。现在有大量的程序员还未找到工作,如果你表现不好,随时可以让他人替代你的职位。在业务领域中的专业知识并不是最重要的,因为公司内有专业的业务分析师。要谨记你只是公司的一个小角色,随时都可能被替换,所以要有一颗上进的心。

8. 气味:随着办公时间的增长,屋内的空气质量也越发的浑浊。我说的并不是在房间内加热午餐才导致这样的环境。而我想说的是,房间内除了蓬头垢面的程序员还是蓬头垢面的程序员。

9. 7*24天的支持:你会在不同的时间段被拉去工作,有时就像一个客服。这些工作虽然不会对你的工作和生活构成威胁,却是工作中的一大压力。最糟糕是,有时你需要召开一个10人的会议,而参会者对出现问题的解决方案却好无头绪,但从管理的角度又不得不来参加。他们中的任何一个人都给不了你帮助。

10. 压力:项目的的成功与失败都是无法选择的。即便你很不同意项目的完成日期,但却不能有任何推延。当然你更不能为了在限定期限内完成任务,而去删减应用的一些功能。你必须在限定期限内发布一个完整的应用。

11.非技术管理者:大多数程序员认为非技术管理人员是他拉的灾星。他们要管理一个程序员团队,但他并不关注的程序员的生活,只是知道让程序员们一味的“编写代码”。他们会过度承诺,对待程序员就如同对待“牛”或是“资源”一样。

12.政治斗争:这些事情程序员很少参与。但是,你的项目甚至你的团队有可能会成为这种斗争的牺牲品。你没有任何的权利去阻止它的发生,但注定你要被卷入其中。

上面列出的这些并不是所有程序员都会遇到的。如果你在你当前的或未来的公司中看到这些事情,你可以考虑其他发展途径。(张祺/编译)

分享到:
评论

相关推荐

    有理想的程序员必须知道的15件事

    "有理想的程序员必须知道的15件事" 作为一名程序员,想要取得非凡的成就必须知道以下15件事: 1. 走一条不一样的路:在有利于自己的市场中竞争,如果你满足于“泯然众人矣”,那恐怕就得跟那些低工资国家的程序员...

    java程序员应该知道的

    1. **Java基础语法**:Java是一种面向对象的语言,学习者应熟悉基本的数据类型(如整型、浮点型、字符型和布尔型),变量声明,运算符,流程控制语句(如if-else,switch,for,while)以及方法定义。 2. **类与...

    程序员需要知道的16件事

    8. **无Cookie请求**:对于静态内容(如图片、CSS和JavaScript文件),应使用无Cookie的域名来提高加载效率。 9. **CDN使用**:利用内容分发网络(Content Delivery Network, CDN)来加速全球范围内的内容分发。 10....

    想成为嵌入式程序员应知道的16个基本

    以下是你需要知道的16个基本问题,这些问题涵盖了C语言、编程习惯、系统设计和硬件交互等方面: 1. **预处理器(Preprocessor)**: - 预处理器指令`#define`用于声明常量,例如定义一年的秒数。在编写时,应考虑...

    想成为嵌入式程序员应知道的0x10个基本问题.rar

    嵌入式编程是计算机科学的一个重要分支,它涉及到在各种硬件平台上设计和实现软件系统。...文档“想成为嵌入式程序员应知道的0x10个基本问题.doc”会提供更详细的解答和指导,建议仔细阅读并结合实践来巩固知识。

    想成为嵌入式程序员应知道的10个基本问题.doc

    ### 想成为嵌入式程序员应知道的10个基本问题 #### 一、引言 嵌入式系统在当今社会中扮演着至关重要的角色,涵盖了从家用电器到航空航天等多个领域。成为一名优秀的嵌入式程序员不仅需要扎实的编程基础,还需要对...

    程序员七夕告白源码

    精美的网页加上动听的音乐效果是程序员七夕告白的绝佳神器。里面包含了十三个源代码。第一个是计算你和另一半在一起的时间。只需要改动源码里面的起始时间就可以实现你想要的结果。怎么改动起始时间和怎么将音乐改成...

    老鸟程序员才知道的 40 个小技巧

    以下将详细解读这40条“老鸟程序员才知道的小技巧”,并尽可能全面地挖掘其中的知识点。 1. 重构是程序员的主力技能:重构,即对软件代码进行结构上的优化而不改变其外部行为的过程,是程序员提高代码质量的重要...

    嵌入式程序员应知道的0x10个基本问题.rar

    12. **嵌入式系统初始化**:理解系统的启动流程,包括BIOS/Bootloader、初始化硬件、加载操作系统等。 13. **固件更新和安全**:了解如何编写固件更新机制,以及如何保证代码安全,防止未授权访问或篡改。 14. **...

    2011-2018程序员考试题目

    此外,还需要掌握二进制、十六进制与十进制之间的转换。 【知识点二】编程语言理解 初级程序员考试会涵盖至少一种主流编程语言,例如C、C++、Java或Python。考生需要熟悉这些语言的基本语法,包括变量定义、数据...

    作为程序员要取得非凡成就需要记住的15件事

    根据给定的信息,我们可以总结出以下15个关键知识点,这些知识点对于程序员在职业生涯中取得非凡成就至关重要: ### 1. 建立强大的个人品牌 建立强大的个人品牌非常重要,这意味着你需要通过各种方式(如社交媒体、...

    做一个优秀程序员应该知道的15件事

    以上就是做一个优秀程序员应该知道的15件事,涵盖了个人技能、团队合作、工作态度和生活方式等方面。在遵循这些原则的同时,程序员可以不断提升自己的能力和价值,更好地适应快速变化的IT行业。

    老程序员才知道的技巧

    ### 老程序员才知道的技巧 #### 1. 重构:程序员的核心技能 重构是程序员的一项核心技能,它不仅能够帮助提高代码的质量,还能增强软件的可维护性和扩展性。重构涉及修改现有代码而不改变其外部行为的过程,通过...

    c语言程序员面试宝典

    《C语言程序员面试宝典》是一本专门为C语言程序员准备的面试指南,旨在帮助求职者在面试中展现出扎实的编程基础和解决问题的能力。这个压缩包包含两本电子书:《程序员面试宝典.pdf》和《面试宝典.pdf》,都是为了...

    程序员需要知道

    - **未关闭 ResultSet、Statement 和 Connection**:在使用完毕后,应关闭 `ResultSet`、`Statement` 和 `Connection`,否则可能会导致资源泄露。 - **异常处理不完整**:在 `catch` 块中只声明了 `Exception` 对象...

    嵌入式程序员应该知道的16个问题

    【嵌入式程序员应该知道的16个问题】 在嵌入式系统开发中,C语言是常用的基础,因此,对于嵌入式程序员来说,掌握C语言的深入知识至关重要。以下是一些面试中可能会遇到的问题,这些问题能反映出程序员的技能水平和...

    50个程序员必须知道的网站

    ### 50个程序员必须知道的网站:深入解析 #### 1. CSDN (China Software Developer Network) - **简介**:CSDN是中国最大的开发者技术社区之一,提供丰富的技术文章、博客、教程以及问答等内容。 - **核心价值**: ...

Global site tag (gtag.js) - Google Analytics