朝九晚五的程序员如何提高开发技能

简介:

你只在早上9点至晚上5点间编码,却担心这样不够好吗?你看见其他的程序员工 作于个人项目或开源项目,参与编程马拉松,并花费所有的业余时间编写软件了吗?你可能会认为只在自己的工作时间编码,只朝九晚五地编写软件,将永远不会非 常优异。你可能认为,只有那些连吃饭、睡觉和呼吸间都在编码的人才能脱颖而出。但实际上坚持一周40小时的工作时间依然可以让你成为一个有价值的、熟练的 程序员。

工作于个人或开源软件项 目不会让你自然而然地成为一个更好的程序员。编程马拉松甚至可能会成为负面影响,如果它们让你觉得构建软件有任意期限,同时疲惫是生产出任何有价值的东西 的一种合理途径的话。在你富有成效的工作时间中有很多固有的限制。如果你不喜欢回家以后再花费时间去编码,那就不要过于疲惫,做事也不要拖三拖四和三心二 意。

在业余项目上花费时间确实有一定的价值,但是最有用的结果不仅仅是实践更是掌握了更多的知识。建立软件项目往往使用较老的技术和工艺,因为这些工艺技术已经存在了一段时间。你从工作的其他软件项目和与工作之外的开发人员交流中得到的有价值的知识是:

  1. 更广泛的技术和工具。

  2. 新的技术和进程。也许你的公司没有做太多的测试,但你可以在其他地方了解测试驱动开发。

拥有广泛的工具和技术无论是对于你现在的工作还是想找一份新工作,都是一个宝贵的技能。但实际的编码并不是获得 这方面知识的有效方法。因为其实你并不需要使用新的工具和技术,并且无论怎么样你永远不会真正有时间去详细学习所有的工具和所有的技术。你只能通过了解现 在流行什么工具和技术,这些工具和技术能做什么,以及什么情况下能发挥它们最大作用来获取最有价值的内容。如果你发现了一个能立即应用到工作中的新工具, 那么你可以在工作中学习这个新工具,如果不能应用到工作中,那么你只能在大脑中归类等以后来使用它。

学习新的工具也可以帮助你找到新的工作,甚至实际上你没有使用过它们。我曾在一次面试中被问到关于NoSQL和传统数据库的区别。老实说,那时的我 从来没有使用过MongoDB或其他任何NoSQL数据库,但因为我曾了解过,所以我知道怎么圆满地回答。能够回答这个问题使得面试官相信我能在必要时使 用该工具,即使以前我没有使用过。

与在业余时间编码相比,通过直接专注于获取新的工具和技术方面的知识,也可以获得相同的好处,并且更有效率。而且,由于这方面的知识将有利于你的雇主,所以你不需要在上面花费显著的时间,就可以在工作时间内获取这方面的知识。你觉得每一天都没有真正空闲的时间,但你总有一段时间是无所事事耗费在互联网上的。也许你现在正在网上冲浪!你可以利用这段时间来扩大你的知识面。

每周你都应该安排一个小时的时间去学习新的工具和技术。选择一个特定的时间可以帮助你养成一个习惯。就我个人而 言,我会选择在周五下午,因为在这个时间段我反正也没什么可做的。不要因为项目期限的逼近或感到疲劳而跳过这个学习时间。你会在截止时间内做的更好,也不 会那么累,如果你知道正确的工具和技术来高效解决工作中遇到的问题的话。


作者:小峰

来源:51CTO

相关文章
|
5月前
|
算法 程序员 C#
程序员必知:UsbKey开发
程序员必知:UsbKey开发
115 0
|
前端开发 JavaScript 算法
程序员必须掌握的技术
程序员必须掌握的技术
85 1
|
架构师 Cloud Native Java
程序员学习进阶提升必备技能(从零基础到P8架构师,20W到120W)
程序员学习进阶提升必备技术栈(20W-120W年薪,从零基础到P8架构师)致力于帮助java程序员快速成为架构师。 访谈数十位一线大厂架构师,了解他们的成长历程,了解最新的企业技术,抽象出了架构师的成长模型,实战贯穿,制定了本套程序员学习进阶提升必备技术栈,于是分享出来让大家好好学习学习。
|
程序员
你可能没发现你只是程序员不是工程师
你可能没发现你只是程序员不是工程师
103 0
你可能没发现你只是程序员不是工程师
|
前端开发 架构师 Java
1.5 从程序员到工程师
1.5 从程序员到工程师
|
前端开发 程序员 区块链
程序员在工作中如何让自己的技能得到快速提高
首先你要有可以碰到难题的机会,如果你根本没有机会接触复杂场景,没有经过真实的项目磨练,是很难快速提升的;
160 0
|
算法 搜索推荐 JavaScript
如何提高自己的编程技能
当你学习编程时,这一刻所有的事情都改变了。在 Firehose,我们习惯称之为编码的拐点。在这个阶段之后,你作为开发人员的编程能力将大不相同,建立起编码的拐点是非常重要的,到达拐点也就意味着你不再需要别人手把手的帮助,这是一个非常重要的过程,但是如果你达不到这个拐点的话,那么你就很难提高编程技能。
如何提高自己的编程技能
|
SQL 算法 Java
程序员必须掌握的核心技能有哪些?
程序员必须掌握的核心技能有哪些?
267 0
|
Java 程序员 API
程序员的遮羞布:这个需求技术上无法实现
程序员的遮羞布:这个需求技术上无法实现
114 0
|
人工智能 安全 物联网
程序员:除了技术,还有什么更重要?
本文分享崮德老师关于危机感、结构化思考、演讲力及商业化思考方面的经验心得,希望能带给大家一些启发。