有人会问:身为程序员每天都在做什么?今天这个视频告诉大家答案。
程序员作为近十几二十年一个热门的行业,被越来越多的人所向往希望可以做编程。
程序类的工作程序员的日常一般是怎样的?相信不论是不是程序员大概都听说过程序员996的说法,早上9点上班晚上加班到9点下班每周工作6天。不过事实上这也不是绝对的。
比如说服务于政府机构的程序公司,它们的上下班时间就是965,基本是和政府单位工作时间同步。另外再说工作内容不知道的人对于程序员的印象就是每天在电脑面前码代码、写程序等等其他不用管,但事实上这些应该算是没有实际工作过的一些误解。
除了写代码程序的日常中也会伴随着看技术文档、查相关资料、开会或项目沟通上面。对于大公司一个项目的流程一般会分很多步,主要分为排期排需求需求、讲解需求设计需求、评审代码、开发联调测试上线、生产验证等等。不过程序员不是所有步骤都要参与那不得累死。
像排期排需求一般是由项目经理进行主导,其他的大部分都需要程序员的参与,排期就是日期排布,提前规划好未来一段时间的版本计划。简单来说就是对相应的版本发布定下日期排需求,需求一般是由业务部门提出,而且一般是提前一个版本就计划好了,所以就是说当前版本提出的需求会在下个版本进行开发需求讲解。
产品经理给相关人员讲解具体的需求,这个需求一般会涉及到很多个部门以及相关人员所有开会是少不了的需求设计。相当于项目正式开发之前的草稿,也就是将写代码的思路用图画和文档的方式展现表达出来验证可行性。这样做有两个好处。
·一个是可以让大家一起评审一下看看有什么遗漏的地方。
·另一个就是可以给以后维护这段代码的同时提供文档说明注释表情包。
所以在很多大公司里会强制每个需求都要有输出文档(不然人员离职不好接手维护)需求评审。让专业的人来验证所做的需求设计一般是公司比较有经验的。全国BIM技能等级考试,工程师来帮助做需求评审码代码。
然后就是正式的代码开发了。当然在开发的过程中是免不了要反复跟产品经理确认需求的细节,所以也就有了程序员和产品经理水火不容的梗了。所以说实际的代码开发时间也是需要花费不少时间用于项目沟通的联调,对于一些比较大的需求。
程序员的关联方可能是不同部门的,甚至是不同子公司的这个过程就需要不断沟通,不断修改代码测试,联调完成之后理论上的产品就诞生了,这个时候就可以正式进入测试阶段。
测试阶段如果有Bug程序员就需要及时修改,并且很多公司对于Bug的修复是有时间限制的,所以修Bug的过程中加班到凌晨也是常有的事,并且判断一个程序员在公司做的称不称职,完成需求是一方面。
对于测试时Bug的数量以及Bug修复的时效性都可能是绩效的考核标准版本上线,测试完成之后就是版本上线了,真正用来给客户或用户使用。但是版本上线也不意味着项目已经结束了,因为不能保证上线之后就没有Bug生产验证。
生产验证就是项目内部小范围的使用验证了。如果说验证出有Bug就需要去修复它,直到验证到没有Bug为止其他紧急问题,在项目上线并被客户或用户使用过程中,如果出现了Bug是需要程序员紧急修复了。比如网络访问量过多导致的崩溃、某些网页链接出错等等都需要及时修复。并且有时候出现的错误还非常奇怪,需要程序员去反复排除。
而这个排除也会花费很多的时间与精力,不过像遵循上面一样详细的规范去开发产品的一般是大公司,小公司的话就会比较直接会省去很多步骤,一般拿到需求简单看一下思考一会就开始写代码了。一直到最后的产品测试与生产验证,不过这样会导致项目管理会比较混乱。
以上是程序员一般会碰到的工作内容,不同公司基本大差不差。所以可以看到一般程序员坐在位置上一坐就是一天有什么事情,产品经理会主动过来完成需求直接相互之间对接一下,所以更多的时候是自己码代码,单打独斗的去做事情当然完成需求并且没有发现Bug,那你在工位上自我放松也是没有人会说的,这一点来说相对于其他行业确实比较自由。
不过作为程序员下班后除了快乐的玩耍,约饭干饭必不可少的时间就是学习。没有错毕业工作之后作为程序员依然需要不断的学习,因为市面上对于技术的发展很快,如果不学习或者巩固自己的技术栈就可会被人淘汰。