作为已经写了十几年代码的老程序员,准时下班的次数现在看少的可怜,倒是刚毕业进的第一家公司属于外企性质,有很多次的准时下班的经历,结果随着技术能力提升以及经验的增加承担东西越来越多,基本上准点下班的可能性越来越小了。特别是在项目紧急的状态下,加班加班到凌晨也是常有的事情。对于研发人员来讲加班加点是家常便饭,做的最深刻当属华为了,加班到很晚直接常备一个地垫,这已经成为了业内的标杆了。
一般国内的中小企业软件加班现象都比较严重,真有正点下班的时间也是忙完一个项目之后,在调整期间会有准点下班的可能性,通常意义上的整点下班几乎不可能,越是工作经验丰富承担的越多加班的概率越高,要说到加班最厉害当属于互联网公司,不论公司大小都会存在加班现象,越是大公司加班的现象越是疯狂,没日没夜的赶版本,一周出一个版本算是预留时间长的。
为什么程序这个职业有这么多加班的现象?
1.程序员直接产出属于程序代码,代码的组合成千上万,这样早就了出错的概率会很高,而且软件运行基本上都是以进程为基本单位,一旦有个模块出现问题都有可能导致整个程序崩溃死机,典型的木桶原理。几乎没有不出bug的软件,只是相对来讲新手更加容易出问题,老程序员在经验上会更加老道,但也不会保证不会错误。
2.大部分的加班都是人为造成,在一个功能还没完成的时候,就会有新的任务加进来,或者在接近下班的时候又会增加一个新的功能进来,结果只能是继续被迫加班,久而久之的加班也就成了常态。绝大部分加班是由于任务量压得太紧或者功能无休止的增加导致软件框架显得非常臃肿从而产生很多无谓的bug,有很多加班不是为了增加新的功能而是解决很多因为匆匆忙忙加的功能造成的异常。
3.也有少数真正的程序员加班学习新的知识,真正对于编程感兴趣的都会不自觉的涉猎更多的编程知识,完善自己的知识体系,而且越是学的深入越会觉得自己能力的不足,越会拿出大量的时间弥补自己的不足之处。