减少些压力,提高些效率:每天别工作太长时间,对你和公司都有好处
在软件公司,永远都有做不完的工作:太多新功能要实现,太多bug要修补。有时候你就是没法快速完成积压的工作,写不够代码量,花太多时间在一个看上去不可能修复的bug上。更糟糕的是,你还要把时间浪费在毫无重点的会议上,而不是用在工作上。
当情况足够糟糕的时候你会发现你总是苦苦挣扎着加班来保持进度。然后你就会发现大家期待你时时刻刻都在回复邮件,即使并没有什么要紧事。你累成狗燃成灰待处理的工作却一点都没有减少。
其实真正有效的解决方法并不是努力加班加点,而正好相反:工作更少的时间。
先来点预防针:
你越有经验,这个方法会越有效。如果这是你毕业后的第一份工作,也许你只能耗着攒经验直到你找到下一份工作,当然你应该尽快找下一份工作。
工作更少的时间也需要你跟你的老板沟通。当然了,如果你是月光族你就没有可供谈判的资格,所以你要做的第一件事就是:银行账户上要有存款!
更少的工作时间,更高的工作效率
为什么加班无法改善这个情况呢?因为加班让你效率降低,同时也助长了你老板不正确的管理之风。减少工作时间有相反的效用。
1. 每周更短的工作时间,能提高专注力
我之前提过,疲劳的时候工作让你产出值降低。你需要花越来越多的时间来解决问题,然后很快你就会发现你完全在浪费时间。持续长时间的工作会让你难以集中注意,因为你很快就精疲力尽了。
长时间工作:“5点应该下班了,但是我需要完成这个,再尝试一次”。你这样对自己说。但疲惫不堪的你花了三个小时才解决这个问题。第二天上班的时候你很累,也无法集中精力。
短工作时间:“五点了我希望我搞定了这个,不过还是明天早上继续吧。”第二天精神抖擞的你只用了十分钟就解决了问题。
2. 每周更短的工作时间,能促成更有效的解决方案
长时间工作会导致不好的编程习惯:你开始觉得解决问题的办法就是强迫自己杵在那里直到完成工作。但是编程是自动化,是搭建构架来减少工作量。如果你能想出一个更好的API实现方法,或者发觉某个功能并不必要,这往往可以节省大量的时间。
让我们试想一下你老板给你一个两周要交工的任务,但是你估计你至少需要三周来完成。
长时间工作:“这个要两周交工,但是我觉得我需要120小时。只好晚上和周末加班了。”结果你完全精疲力尽,并且很有可能无法按时交工。
短时间工作:“对于两周的期限来说这个工作量太大了。怎样可以减少工作量?让我花几个小时好好想想这个问题。”
不久之后:“如果我重构的话我可以一周完成80%的工作,这应该会让客户很开心的等我完成剩下的部分。就算我低估了工作量我也还有一周来完成它。”
3. 每周更短的工作时间,能避免糟糕的管理
如果对于任何问题,你的反应都是加班的话,那你其实在推广不好的管理方式。你在用你的行动告诉你的经理,你的时间不值钱,他们并不需要考虑事情的优先级。
长时间工作:如果你的经理不是很清楚你应不应该参加一个会议,他也许会对自己说:“这也许会浪费一个小时,但是反正他们会加班补上的。”如果他无法决定应该实现哪个功能,他会直接把两个都交给你。
短工作时间:你的时间成了稀缺资源而更加宝贵了。如果你经理还有管理常识的话不重要的会议会被忽略,重要的功能会被优先处理。
短工作时间的深入探讨
一个短的周工作时间对不同的人来说意义不同。我知道的一个在创业公司工作的程序员一周工作40到45小时。其他人工作时间都比她的长,但是那个时间是他/她个人的极限。我为自己争取到了每周35小时的工作时间。
不管对于你来说那个最佳时间是多少,你都要明确表达你的效率极限然后坚守原则。告诉你的经理:“如果不是火烧眉毛,我一周只会工作40小时。”一旦你表明了你的工作时间上线,你需要坚持原则,在工作时间以外不回复邮件,在周末不能同意多做任何一点工作。
然后你要证明自己很高产(效率高),并保证工作时间一心一意地工作。花几个小时看喵星人视频,是无法让你保证在工作时间里做好工作的。
当然对于一些公司这些都是天方夜谭。如果管理层很糟糕或者公司有加班文化,连40小时的正常工作时间都无法接受的话,你应该考虑跳槽。面试的时候尽量弄清楚公司文化以及管理手段。大家的工作时间一般很长或者较短?是不是时刻都是紧绷状态,产品是不是都按时发布?
如果你是很有经验或技术过硬的程序员,你会在工时谈判中占据优势。目前我有足够的技能资本,所以在谈判的时候我做得还不错。不过我也是踏着 bug 和错误的「尸首」才走到今天。如果你想快速提高你的技能,你可以到 Software Clown 看看我以前犯过的错误,这样你就不会重蹈覆辙。
-
工程师
+关注
关注
59文章
1569浏览量
68510
发布评论请先 登录
相关推荐
评论