一个伟大的程序员需要具备哪些特质呢?也许大部分人回答的是逻辑、机智、耐心和勤奋当然,其实这个问题并没有标准的答案,但是除了这些特质,习惯也是非常重要的,而这个特质可能在已经进入正轨的团队组织中才得以窥见。
除了必须的技术和逻辑思维,下面看一下在团队中应该具备怎样的好习惯吧~
好的时间管理
亲有木有经常遇到迟到的问题,对于任何一家公司迟到都是很让人头疼的。作为一名程序员,有时候不得不熬夜加班,从而导致第二天上班迟到啦~(这点小编要投诉一下我们戴维,总是踩着点打卡,哪怕你来早那么一点点,都不会有那么多妹子向你投去无数“羡慕”的目光)但是,我们忽略了一点,程序员的工作至关重要,因为在这段时间里我们要和客户同步,也要和团队的其他成员一齐协作。
深入理解客户的需求
你晓得不~仅仅了解单一用户的表面意思是远远不够的,一个伟大的程序员要具备把繁琐的要求理解并分解成项目的技术任务的能力,并且最后拿到的成果应精确的满足客户的需求。
编程之前准备好全套算法
亲~还记得我们老师逼我们画的流程图吗?还记得一个个案例和伪代码吗?他们都是灰常重要的软件开发手段。一个伟大的程序员如果木有事先准备好算法,那他会不会像个傻小子似的只顾写代码呢?所以,在开工之前,做好全套的算法是必须的。
理解and帮助定义验收标准
是否需要高成次测试脚本是产品所有者决定的,但是,作为一个伟大的程序员必须能够编写技术测试脚本,并且也要认识到如果跳过了这一步骤可能会带来的后果。
头发都快抓完了,依然拒绝说“NO”
假如你都快把头发抓完了,依然找不到解决方案,你会选择放弃吗?一个伟大的程序员应该是能灵活地面对这种困境,比如可以问问同事(我们戴维就常常拉着同事问长问短,不了解他的还以为。。。。)或者问问团队领导,上网搜索,耐下性子,相信~山穷水尽疑无路,总会柳暗花明的~
主动一点点
一个优秀的程序员不需要别人告诉他该做什么,他的主动性要比别人强一些,他可以自觉的关注流程,提高应用程序的灵活性以及快速的解决开发过程中出现的Bug。
最后想说,作为一个伟大的程序员,应该时刻的明白每一个任务的价值,并且尊重他人的成果,性格内向可能是大多数程序员的软技能问题,但是我们应该明白一旦知道了自己不足之处时,要学会立刻改正,并且积极地执行“客户第一”的服务理念哟~