
每个程序员都想按照计划做事,都想按时上下班,但是因为工作的特殊性,往往是计划赶不上变化,程序这种东西很容易在某个环节突然出现错误,如果没有得到及时的解决,可能整个系统都会瘫痪甚至崩溃。所以不是不能按计划做,而是没办法。
首先认为问题稍微有点歧义,是有没有不用加班的程序员还是有没有不用天天加班的程序员?
1、假如就是字面意思,有没有不用加班的程序员,那么就不用讨论,答案是肯定的:没有!就跟有没有不用加班的厨师、白领、机械师甚至公务员等,谁还没有个紧急任务,在职场混,偶尔有加班很正常啊。
2、假如是第二个“有没有不用天天加班的程序员?”,答案也是肯定的:有!
(1)项目角色不一样,会决定是否需要加班,开发类软件项目中有好多角色或者说工种,最常见的配置:项目经理、产品经理(需求分析)、架构设计师、软件工程师(这个细分的话,还会有好多,比如前端工程师、ios工程师、安卓工程师、java工程师、python工程师、大数据工程师等等)、测试工程师、运维工程师等等,角色不一样会导致是否需要加班,例如产品经理最忙的时候是项目开始和开发完成的时候,一是要跟客户确认需求,二是要跟客户确认验收等。
(2)项目阶段不一样,也会决定是否需要加班,每个角色根据项目的不同进度,工作紧张度会不一样,比如项目启动的1个月左右时间,最忙的是项目经理、产品经理、架构师,这个时候项目刚启动需要跟客户再次确认需求(非常重要的事情),根据需求定项目框架,这个时候软件工程师任务不多,一般是不用加班的,甚至会给出学习时间,并培养团队和磨合团队,总之会根据项目阶段,不同角色,会有闲忙之分。
(3)项目本身不一样,会存在有些项目不用加班,有些项目需要经常加班;
(4)单位不一样,有些单位需要加班有些不用加班,比如有些国企或者类国企单位加班会少一些,互联网公司加班会多一些;
(5)单位角色不一样,比如有些单位,分甲乙方程序员,甲方程序员不加班,乙方程序员加班,或者乙方没有加班费,乙方程序员不加班,甲方程序员加班等。
总之并不是大家想的,一提到程序员就是会天天加班,不过确实程序员相对其他行业加班会多一些,也会存在为了赶项目进度,一段时间(几个月也有可能)加班,但是也没办法,互联网发展太快,用日新月异不过分,不跟上就会掉队,但也谈不上天天、所有程序员。
我也是学计算机的而且搞的也是软件,我们公司就是开发软件的,加班不加班这得看公司的任务了,如果公司接着一大活,给你期限完成那你如果感到活紧的话,不用老板说你自己就的加!其实这个职位还是挺好的
很多Java程序员老是抱怨自己要加班,但是公司的其他同事都下班了,你还在加班,这是为什么呢你的工作任务比其他人要重吗很多的时候,显然不是,那是为什么呢是你的工作效率太低下了,其他人有没有说过你呢或者你自己有没有感觉到呢工作要有效率,Java程序员如何提高工作效率跟IT培训往下看。
Java程序员如何提高工作效率
1保持充足睡眠
每个人的睡眠时间都不同,不需要你真的每天睡满8个小时,但是你要保持充足的睡眠,缺乏睡眠时,你的思考力和你的行动力,会明显的下降,你的记忆力和集中力也会明显的下降,还会增加你的烦躁和压力,在这样的情况下,你怎么能够确保自己的工作效率呢
2有条理的工作
很多Java程序员在进行Java工作前,是不假思索的,想起哪个做哪个,然后发现自己把不急迫的给完成了,急迫的Java工作反而还没来得及开展,然后加班也是自然的,工作中不分重点,这样的朋友也会在工作中出现各种马虎的现象,工作没有条理真的能直接影响工作效率,所以Java程序员要有条理的进行工作。
3留时间进行反思
很多Java程序员都是工作狂,可以不休息地持续工作,但这种工作习惯反而会影响了工作效率。表面看来,你的工作时间是多了,但长时间工作会令你的记忆力下降。所以,当你集中精力工作了一段时间以后,建议你每隔30-45分钟就稍稍休息一下,适当的放松可以令你的身心得到调节,反而有助提高工作效率,并且这段时间可以用来反思,你的工作效率可能会更高。
程序员为什么要加班
首先,假设这个程序员是一位职场新手甲。他刚大学毕业,没有工作经验。来自产品的需求,他要理解很久才能做。然后开发的过程中会遇到各种问题,如果经验不足以支撑他快速完成任务,那么只能求助于网络,书籍,熟人。如果这些都帮助不了他。他需要求助于同事。但是次数频繁,同事会厌倦于帮他解答;他也会羞于咨询。这时,他一天下来,基本都会卡在一个很简单的问题上。下班了,他还没有完成任务。没错,他需要加班了,因为他的编程能力非常差。
大概没有人会知道他是因为需要处理一个并非高科技的问题。不懂技术的上司以为他是个勤奋的员工,非常看重他。可是,这什么进度还是会这么慢呢?创业的公司可等不起。这一切,如果招到一个有经验的开发人员,这一切的加班似乎都不需要。
好吧,公司开除了这名程序员或者他因“个人原因”辞职了或者公司再招到一个相对有经验的程序员乙。当然,有经验的代价就是公司要付双倍的薪水。所有之前的需求在他这边都没有遇到过加班的情况。他是一名非常有经验的程序员,他在过去的二年时间一直在处理相关的开发工作。到这边来,所有的问题都是小意思。他的优秀表现让公司惊喜和意外,公司觉得即使再招十个之前的员工也比不过他一个人。所以,双倍的薪水又有什么呢?
一段时间后,公司开始提各种各样的需求,他终于开始加班了。加班不是因为某段时间需求的总量多了。而是因为随着公司的快速发展,需求也越来越多样化。他的知识储备不足以令他总能轻松应付。他变得和第一个程序员一样,也加班了。只不过加班的原因不一样,第一个程序员是因为一些代码的调试的原因,而这位有经验的程序员是因为一些从没听说过的技术。他的加班让公司同样对他很重视,甚至认为是一位好伙伴。
与此同时,公司在招他的时候也招进来了一名优秀的毕业生。他同样是一名没有经验的程序员,但是他有很好的学习能力。开发进度缓慢让产品人员和运营人员都难以接受。但是他总能在最后关头交付代码,尽管上线后需要修修补补。他经常加班来学习以便攻克技术难点,公司对加班的员工表示欢迎,因为没有人让他们加班,也不需要给他们加班费或者调休。公司为所有加班的人员提供良好的晚餐。他可以接大大小小的各种需求,只是,开发时间要比较长。但是他不会遇到那种代码调试不通过的简单的问题。相比程序员乙,程序员丙由于经常拖慢进度经常被产品和运营建议开除或者调岗。
可是后来,公司对他欣赏有加。原因有二:一是他终于可以用和程序员乙接近的时间来做任务;二是在程序员乙那里看似不可能的任务,程序员丙总能在最近关头给出解决方案和代码,只是时间比较长。产品和运营的观点发生了改变,向公司建议开除程序员乙。程序员丙是一个学习型的员工,时间让他有经验后,他成长成为一名更优秀的员工。
公司有过教训后,终于不惜花重金去请各种优秀的程序员。因为只要有一名这样的程序员,就可以少请许多败坏项目的程序员。于是,公司有了程序员丁。他在过去的一段时间里有着不错的工作经历,帮助过所在的公司完成了各种重大的项目解决了相当多的行业技术难点。他的到来为公司带来了很好的活力,所有之前遇到的问题都不复存在。他成为了所有程序员的主管。后来,他还是加班了。因为公司的良好发展,于是聘请了更多的产品和运营。开发团队忙不过来了,他作为主管要求大家一起加班。
为了缓解这种局面,他向公司申请增加程序员。公司答应了并再招了二各分别类似乙和丙的程序员,没错,公司不会再招聘类似甲的程序员。团队不需要加班了。
好景持续不长久,一段时间后,加班的情况再次出现了,因为竞争对手的努力,让产品和运营提出更多的需求。他发现产品和运营的需求源源不断地输入。可是有些需求可能用户永远用不到或者三天后就变化了。为了解决这种局面,他找来领导和各部门的负责人来商讨解决的办法。有人提出走敏捷开发。公司决定新成立一个小团队来做测试。于是公司每一个敏捷开发团队成立了。时间证明了,这个新团队终于可以不加班了。而对需求的完成总体让产品和运营满意。
乐观的局面总不能持续很久,因为线上出了一个令用户急剧下降的bug。他们需要加班通宵,或者回退代码,或者修复这个bug。没有使用很好的版本回退办法,只能是一场恶梦。持续集成和自动发布加入到他们的团队。没错,程序员丁开始在团队里实施非常好的项目管理的方案。起码发新版后,非工作时间在线上出bug,任何有权限的人员都可以轻松地一键回退。剩下的,上班再说。
这就是我要讲的程序员为什么要加班的几个故事,欢迎各位补充。以后我也会补充更多的故事。其实所有的后面都不重要,我只希望各位创业者,在招聘程序员时,避免遇到程序员甲,争取找到程序员丁。作为开发人员的我们,也要努力成为程序员丁,保证自己的职场竞争力。还是那句话,软件开发不是高科技的东西,这世上并没有软件科学家一说。我们能做的是让开发更像一门艺术。
PS:不过高质量了,供大家看吧。
以上就是关于程序员为什么总是加班,事情不能按计划做吗全部的内容,包括:程序员为什么总是加班,事情不能按计划做吗、有没有不用加班的程序员呢、每个单位的程序员都会加班吗我将要学习这个专业,好怕,怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)