本文是从Thoughts On Developer Longevity
http://davybrion.com/blog/2011/03/thoughts-on-developer-longevity/这篇文章翻译而来。
你知道有几个开发人员是超过40的?对你们当中不少人而言,这个数是0。对你们当中知道一两个超过40开发者的人,我有个问题:他们中有几个人能称得上优秀?如果你知道任何一个超过40的优秀的开发人员,请做一件对你有益的事:向他请教。看看他掌握的那些技术是否还跟得上时代。一旦你做了这些,请为大家做一件事,就是找个地方把他公布出来,因为实际上,在这个行业里并没有多少优秀的老的开发人员(对那些读这篇文章的旧时代过来的人:我尽量表示尊敬和爱戴 )。
出现这种情况有两个原因。第一:绝大多数的开发人员在工作了几年后都转向了管理岗位,一方面是因为他们原本的职业生涯规划就是这样(不管你喜欢与否,很多开发人员仍然认为,作为一个开发人员就该朝着这个方向奋斗),要么是他们因为偶然的原因进入了管理层。对于后一种情况,我们只讨论那些优秀的开发者,他们表现良好,不管交给任何任务都能出色的完成。等进入管理层后,他们绝大多数的时间都是被锁在会议室里,根本没有任何时间剩余来做编程——尽管他们中的有些人很可能更喜欢把精力更多的放在编程上。两种情况中,这些人很快都会失去开发者的身份,早晚的事儿。
第二个主要的原因是,很多具有较长阅历的开发人员慢慢的会认为自己该掌握的知识都差不多掌握了,不再去学习新的解决问题的方法,或者是看看别的开发人员在学什么,自己也跟着学。他们认为自己做过的那些就是一切,任何具有挑战的开发任务都处理过。他们一年又一年的使用着相同的技术和方法,心想着“为什么要去改变一个冠军组合?”。虽然他们的技术方案可以用,也许会非常的好用,但他们的实现方法可能是过时的或效率低的。从这点上看,程序员的品质开始降低,持续的降低,一直到他掌握的技术过期、被淘汰。
我不知道你会怎样,但我对在余下的职业生涯中走这两种道路是丝毫没有任何的兴趣。我希望一直能这样编程编下去,我在其中找到了乐趣,更重要的是,我希望我的技术能够一直更新不过时。我相信我作为一个开发人员贡献出来很多价值,我希望在我变的越来越老时,我仍然能够增加这种价值,把它带给我的客户。不仅仅是通过经验,还有通过时刻把握整个软件开发业的时代脉搏。可问题是:你如何能做到这些?你如何能防止自己变成这种喜欢说“相信我,孩子,20年来我都是这样写的,不会有错”的人?
很显然,我没有一个权威的答案,因为我只是一个具有8年工作经验的开发人员。但是我做了一个简单的计划,我希望它能使我不断的增加自己作为开发人员的价值:
让自己感觉无知一旦你认为自己无所不知,你基本就完了,这只会害了你自己、你的客户以及那些不幸的跟你共事的人。相反,要坚持阅读那些比你能干、谈论一些你不能理解的技术的人写的博客和书籍。当你阅读他们的文章、他们的代码时,你会觉得自己愚昧无知。这样很好,这些时候就是你最有可能决定去学习新知识的时刻。一直读下去,直到掌握它们,然后用实践验证你刚刚学到的东西。一遍一遍反复的这样。简言之:让自己感觉无知,这是唯一能保持学习的方法。
质询自己的知识和思想,每天在软件开发这种工作上,相当多的知识都有一个有限的保质期。你现在所有用在开发软件上的知识10年后很有可能完全不能用。也许5年后所有的这些知识中有一半你都不再需要。请让我更进一层:半数你现在知道的知识很有可能在5年后成为阻挡你开发出一个优秀软件的负面因素。鬼才知道呢,不是吗?坚持不断的审视自己的知识。所有的方法,模式,实践理论和任何你欣赏的东西,你都需要不断的一次次的更新它们。它们现在还有价值吗?是否有新的事物出现使你对它们的存在形式或环境产生不同的认识?是改变你的思维的时候了。特别是当一两年后某些事物没有任何变化的时候,一定要这样想想…也许是你不再感到自己无知,这可不是一个明智之举。
重申,我不能保证这就是能让开发人员长期保持自己高质量的最好的方法,但我想我正在努力去做。
分享到:
相关推荐
开发人员月报通过提供全面的工作视图,有助于管理者了解员工的工作进展和贡献,同时也让员工有机会反思自己的工作,规划未来的发展方向。这样的报告制度能够促进沟通、提高效率,也是团队管理和个人绩效评估的重要...
对商业价值、用户价值、制作开发人员的价值几何?值得我们思考。 / 01 / AI在游戏生态中的应用 游戏方面化繁为简,可以抽象为三大模块,前两个模块为生产制作、营销触达,以及第三个最终服务的对象——玩家...
C#开发规范,开发人员必备基础 C#开发规范是软件开发中不可或缺的一部分,对于开发人员来说,这些规范不仅能够提高编码效率和代码质量,还能够提高项目的可维护性和可读性。以下是C#开发规范的详细解释: 程序结构...
评分从80%预定时间内完成到超过预定时间20%,反映了开发人员的时间管理能力。 6. 编码注释完整性:注释有助于他人理解和维护代码。评分根据注释的完整性,从完整且易于理解到大量缺失,体现了注释在软件开发中的...
### 2012-2013中国嵌入式开发从业人员调查报告分析 #### 调查背景 本报告是对2012年至2013年间中国嵌入式开发行业的全面调研,旨在深入了解该领域的现状和发展趋势。随着移动互联网、物联网、云计算等新兴技术的...
Java_人工智能驱动的数据管理平台Chat2DB是一款深受超过100万开发人员信赖的创新工具。这个平台结合了先进的AI技术与高效的数据处理能力,旨在为开发者提供更加智能化和便捷化的数据库管理体验。通过集成AI功能,...
软件开发人员的绩效考核标准 本文档旨在对软件开发人员的绩效考核标准进行详细的描述。软件开发人员作为软件服务型企业的核心竞争力,需要具有较强的事业心、责任感、较深厚的基础理论知识,并不断提出新的思想和...
本文将基于“软件开发人员简历模板”这一主题,详细探讨如何编写一份吸引人的简历,以便在众多竞争者中脱颖而出。 首先,简历的结构至关重要。一个良好的简历应该包括以下几个部分:个人信息、职业目标、教育背景、...
软件开发工具的成长速度远远超过开发人员的成长速度,这是现实。 每个月,甚至每天,我们都可以见到新的类库、框架、工具、语言。它们或者极大地降低了开发的成本,或者极大地提升了开发的效率。 随之而来的问题就是...
这篇文档是一个IT专业人士,特别是开发人员的简历模板,主要展示了应聘者在计算机科学与软件开发领域的专业技能和经验。以下是对这些知识点的详细说明: 1. **Java编程**:应聘者具备超过一年的J2EE项目开发经验,...
本书从项目工程的角度出发,按照项目的开发顺序,系统且全面地介绍...本书既可以作为Java Web初学者的培训教材,也可以作为具有一定编程经验的Java w曲程序开发人员的参考书,还适合Java Web自学者和大专院校学生阅读。
首先,对于一个完全没有mac开发经验,甚至从没摸过苹果系统的开发人员来说,首先就是要熟悉apple的那一套开发框架(含开发环境IDE、开发框架uikit,还有开发语言objective-c)。对于有一定编程经验的人来说,学习...
这些人员的月薪加上来已经超过4、5万人民币了,对于简单的APP,设计、开发加上测试的时间大概需要6到8周,复杂一些的需要8到12周。 三、开发APP的费用 这样算下来,一个简单APP的开发费用就需要6~10万,稍微复杂些...
超过半数的嵌入式设计项目超出预期的上市时间,平均延迟四个月,且约有30%的设计未能达到预期的功能和性能。因此,软件工程的重要性日益凸显,但许多开发人员在这方面的专业训练不足。同时,随着嵌入式技术的普及,...
调查表明,嵌入式开发人员主要集中在"不到1年"和"1-2年"工作经验的阶段,占比近60%,这意味着行业新进人才活跃,但经验丰富的工程师相对稀缺,成为行业发展的一大挑战。在学历方面,本科和硕士学历的工程师占据主导...
HTC Vive追踪器开发指南旨在为VR外设及内容开发人员提供详尽的指导,涵盖如何使用Vive追踪器实现位置追踪和数据传输的技术细节。这份文档不仅适用于HTC Vive VR系统的整合,也适用于独立追踪场景,提供灵活性和多种...