程序员的职业素养 怎么有两种封面

如题所述

专业程序员能做普通程序员不能做的,这才叫专业,成为一个专业人士是所有程序员的目标。

承担责任

这是专业和不专业的分水岭。对于一般的程序员来说,他的责任就是及时、高质量的完成任务;对于 Tech Lead 来说,其责任就是统领全组,合理安排任务,让组员各司其职。这里包括3点:

承担合适的责任。选择自己能力范围内,一旦选择了工作,请承担完成的责任;

学会说不。专业的程序员对于任务有靠谱的预判和掌控力。当完成不了的时候,一定要说不。否则既是对自己不负责任,也是对他人不负责任。

对于程序员来说,没有try这种事

应对最坏的情况。程序员最悲催的莫过于搞不定任务,这个时候一定不要推卸责任。给出一个切实可行的补救方案,最好有一个完成任务的时间点。老板不在乎你为什么完不成,在乎的是究竟怎样能完成。

高质量的代码

没有Bug,每一段代码都要有相应测试。很多人不写测试,那是因为他们抱着侥幸心理觉得自己代码没问题,同时觉得很浪费时间。实际上保证代码质量的第一要素就是测试。

可读性要高。刚学计算机的同学,变量随性命名,整个文档看不到注释。所有 public 的类、结构体、枚举、变量、方法都需要注释 ,因为 public 是外部可见的,极有可能是常见的API,这时候让别人看懂就十分重要。

可扩展性和解耦性。最好的代码不仅针对当前特殊的情况,还可以应对其他情况;以后即使对现有的代码进行大量修改,也不影响其他模块。

代码上的时间

一个专业的程序员一周的花在计算机上的时间应该为每周60小时。

有人说没时间,我们来算一笔账。一周有168个小时,假设你一天睡8小时,吃喝拉撒2小时,这样你还剩 168 - (8 + 2) x 7 = 98小时。然后你花在代码上60个小时,你还剩 98 - 60 = 38小时。

之所以要在代码上花费这么长时间,是因为软件这一行这一行变化太快了:乔布斯逝世才5年,Google已经声称移动时代已经过去,现在是人工智能时代;Objective-C还没火几年,转眼Swift已经出到了第3个版本。。。技术的进步,总是让程序员有太多的东西要去学习。

Oculus宣布 React 支持 VR

对自己领域的精通

无论是前端、后端、还是移动端,都有自己的一套架构体系。作为一名专业的程序员,我觉得应该至少对自己领域所有的知识都有涉猎了解;对于核心的部分,则要做到烂熟于心的程度。

学习新技术的原因永远不是因为它新、它潮,而是因为它可以更好的解决当前问题。只有本专业弄通的情况下,才能融会贯通。

沟通

很多程序员只想写代码,做个安安静静的美男子,这当然无可厚非。但是你真的确定,正在在做的东西是老板希望、客户期待的吗?作为一名程序员,理解自己应该做什么、达到什么效果、同时让老板知道什么能够实现、什么实现不了,才是专业的表现。

合作

与组员的合作是专业程序员工作学习中重要的一环。

为什么?

因为首先,大家都理解了相关的知识,项目才能快速的推动,整体的工作效率才会提升;再者,自己懂知识,不代表自己能讲清楚它,随着与大家的交流和分享,知识本身会更加完善,对其理解也会更加全面扎实;最后,无私的分享和帮助有利于构建良好的工作环境和团队氛围。
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答
大家正在搜