当前位置:C++技术网 > 资讯 > 程序员加班原因有哪些类型?程序员如何减少加班?

程序员加班原因有哪些类型?程序员如何减少加班?

更新时间:2016-12-18 15:16:31浏览次数:1+次

    程序员加班,这是非常常见的现象。对于加班,我们都是拒绝的。那么程序员加班原因有哪些类型?为什么程序员还是经常加班呢?下面来简单说说程序员加班的现象。
    首先我们来说明一下加班和非加班的区别。为什么这么说呢?因为你去公司坐着也不一定做工作上的事情呀,这不叫加班。还有,你即使不在公司,你依然做着工作中的事情,这也叫作加班。
    所以,加班就是在非工作日的工作时间内做工作相关的事情,和你所在的位置没有直接关系。但是从心理上讲,更多人愿意认为人去公司了才属于加班行为,或者只要是去公司坐着都算加班行为(因为公司要求了,即使不做事也算加班行为)。
程序员加班原因有哪些类型?程序员如何减少加班?
我在此把程序员加班可以分为几大类:

1.项目任务紧加班
    项目任务紧迫,要加班,谁也逃不过。此时不仅仅是程序员,项目经理,项目相关的人员都会参与进来加班,各做各的事。这是加班的常见的情景。但是,这样的加班,不可能一年到头都是,否则谁也受不了。如果是这样,也是不合理的。人不是机器,人总需要休息的。如果你的工作中,经常加班,加的天昏地暗,你就要仔细审视一下自己的加班,真有这么多紧急的项目吗?公司的项目管理流程是不是有问题?如果公司上头没有解决这个问题,参与其中的你,最好能够找出一些问题,从流程上加以解决。尽可能让项目在一个可控制的范围内有条不紊的进行,不能老是处于紧迫的状态中进行。
    有时候,公司的项目比较多,多个项目掺杂在一起,而且不管项目好坏大小,都接了。这样会让人疲惫不堪,状态很差。此时需要将多个项目按照类别归类,没有什么收益的项目可以不接,或者多个项目按照合理的顺序先后来安排。如果确实紧急,可以考虑多安排一些人来做。
    当然,这样的加班情况,程序员也是很难克服的,出了当牛做马的干,别无他法。这要看项目经理来解决或者公司的策略。项目时间要按照合理的时间范围来评估,如果总是不能在正常情况下如期完工,总是在加班情况下完成,公司应该要考虑到加班成本,毕竟人不是机器,要是加班过度,会挂的。偶尔因为工期紧,特殊情况,是可以加班来完成。多数情况,应该在正常的时间内完成。就算是市场竞争,那也应该是产品的布局问题,比如先出基本版本来抢占市场,而不是一开始就加班,来推一个完整的牛逼的版本。因为市场总是要不断的抢占的,我们无法通过每次都开发一个完整的牛逼的版本来抢占市场的。否则长期加班的程序员,也就没有太大的爆发力了。

2.工作量多,做不完
    项目多是一个全局的问题,不是程序员可以直接左右的。不过到程序员这一个层次,就是直观的大量的编码工作。项目多,工作量很多。不加班,压根就完不成。
    如果是这样,那就要好好的想想办法。减少加班的时间长度的办法就是,提高工作效率。将很多的工作量仔细的分析,按照最高效率的做法来完成。当然,这个分析过程会花一些时间,但是需要花。比如两个客户都要定制软件,两个客户的要求都不同,所以你就要做两个版本。如果你不分析分析,就直接开干,那么你就要做两个版本。但是如果你再仔细的分析两个客户,或者更多客户的需求,将相同的,可扩展的的需求,都抽象化,然后做一个基本的模块,然后再在这个模块基础上通过参数来定制出不同的版本。或者可以的话,就只做了一个版本,只要通过参数配置,就可以得到两个定制版本。这样的话,分析的时候会增加一些时间,但是一旦做好了,两个项目变成了一个项目,软件变强大了,更加灵活,还可以应付今后更多的定制。
    这样就大大提高的效率,一次加班可以让今后都不再因为这个定制而加班了。这就是工作方式的问题。在程序员能够把控的范围内,不断的提高自己的工作效率,来提高开发速度。不仅可以让自己少加班,而且还会让自己的业绩越来越优秀,开发能力不断的提高。
    还要一种情况就是,还有很多杂事,掺杂在一起,为了提高效率,我们要将这些事归类,存起来,然后按照轻重缓急,来依次处理。这样可以将精力集中在正在做的事情上,不会因为切来切去,最后搞得晕头转向,更不用说效率了。
    比如,你正在解决一个程序的复杂逻辑的问题,正在看的投入的时候,项目经理来了,说要跟你谈一下项目的问题。你去谈了,回来一看,刚才看到哪了呢?如果走的急,回来的时候都不知道自己刚才在做什么。你回来花了一阵子回到了刚才的状态,继续看代码,然后一个邮件来了,你被打断,然后回了邮件,然后再回来看代码。如果总是这样工作,效率极低。自然而然,本来工作量又多,加上低效率工作,很难在正常的工作时间完成,加班自然而然也就多了。
    还有一个常见的现象,就是很多新手,没有很多经验,或者做一个你之前没有做过的东西,你从别人的一个Demo里慢慢依葫芦画瓢的改,瞎试。这样也是很低效率的。你还不如针对性去全面的学习一下,然后再回来看的时候,很多代码都懂了,都不需要改来改去。效率就提高了。
    当然,提高效率的地方有很多,这里就不一一举例了。希望读者的你能够多留心,不要让自己低效率的工作着,否则无尽的加班就等着你了。

3.客户、同事、领导需要,被加班配合
    客户可能周末不休息,然后就直接找客服人员、找产品同事、找市场销售的同事和找项目经理,然后他们就来找程序员了。毕竟很多软件这些同事也不太懂,直接抛给程序员了。大周末的本来程序员是可以休息的,结果被这些不休息的客户给拉着加班解决问题。这种情况在我们公司太常见了。我们经常这样被加班了。
    但是,真是客户的问题吗?我觉得,不完全是。问题还是出在程序员身上。前面说了是工作效率低的问题导致加班,那么这里就是事情没有做到位导致的加班。
    客户如果不会用软件,没有说明书,或者说明书写的不到位,客户自然也就要找我们项目的负责人了。负责人也没有怎么看说明书,了解也不够,还是直接找程序员吧。
    那么客户大部分都是软件不会用,不会设置,局域网不会组建等各种问题来打电话问。不解决也不行,你还是要解决客户的问题吧,所以也就被拉着加班。
    另外,如果是因为软件出了故障,没法用了,这也就被办法了,这只能怪自己不小心。这种情况是必须立马上阵解决的。

    但是不管是哪种情况,确实都是程序员自己没有把事情做到位,才会招致后面各种被加班。这个问题还是好解决的,就是把可能遇到的问题,都一个个填好坑,这次加班了,下次就不能再因为这个事情加班了。自然而然,工作也越做越好,客户问题越来越少,产品也很受欢迎了。不过要怎么去做到位,要具体问题具体分析了。最简单的就是,解决客户提到的问题,做好文档,以后就不会再有同样的问题过来了。


4.加班调休

    加班调休很好理解,不管是什么岗位,都是存在的。


5.自己住的地方条件不好,公司条件好
    有时候租的房子条件不好,没有空调,没有舒适的电脑桌,没有舒适的座椅,空间狭小,在自己住的地方玩电脑,那叫做受罪,根本就不能敞开双手大干一场。很多时候,住的离公司近的,就都选择到公司来加班咯。这种情况可能也是玩,但是一到公司,被公司的环境给通化了,都来公司了,不如把之前那个问题给解决了吧。然后就这样就加班了。

    毕竟公司环境不适合娱乐,这样也就是只有看看网页,然后就工作了。这种情况也是很常见的,我呆过的几个公司的很多同事都这么干。怪只能怪自己住的地方太Low了,自己都不愿意呆了。


6.下班不知道干嘛,还不如加班
    有些公司加班情况很严重,有的一种就是一些程序员因为经常忙于工作,都忽略了外界。然后下班了除了吃饭,都不知道能干嘛了。大千世界,竟然不知道干嘛。这还跟单身狗脱不了干系。可见程序员是多么需要一个女朋友来解救呀。否则挣了钱也不知道怎么花呀。既然不知道干嘛,还不如回公司加班好了,加班了还能提高点业绩嘛。

    这种状态只能用“苦逼”来形容,这些程序员的生活,已经接近0了。这些程序员也就给公司领导一个错觉,我没有让他们加班,他们还自愿加班。慢慢的,其他程序员如果不加班,都成了工作不积极,态度不上进。就算领导什么也不说,大家都加班的情况下,你好意思按时下班,好意思不加班吗?反正我总会有这样的纠结的心理,但是我会鼓励自己,走出这种环境。因为我需要生活,我的世界不能只有代码。


7.习惯性加班,不知道为什么
    反正各种加班情况长期有,公司经常一周7天总有人在,很多人长期加班,连我们自己程序员都看不过去了。有些领导都看不过去了,你们不要加班了,给自己一些生活时间呀。我们还需要其他方面的经历呀,不要成为机器了哦。
    一些人,加班真的加习惯了,有事没事往公司跑。这是住的近的。而住的远呢,即使回家了,还是在干活。当加班成为了一种习惯,你哪里来的时间学习,哪来的时间提高自己各方面的能力呢?你哪来的时间陪家人呢?你的幸福感在哪呢?你的女朋友从哪里找呢?

    总的感觉,程序员加班情况太普遍了,程序员免费加班都成了常态,公司不敢给程序员加班费,否则是巨额的。索性,就不给加班费了。你们要加班,那也是自愿加班的,怪谁呢?程序员加班的常态,说白了,还是因为程序员自身的行为习惯形成的。我只希望程序员能够自觉点,没事不要去加班,多认识一些朋友,多去感受下精彩的世界吧。