我们常常被各种各样的工作任务淹没,永远都有新功能要上线、bug 一直修不完、历史遗留的代码也有无数的问题,再加上各种需求评审会、晨会、周会、技术评审会等等,每天干活的时间似乎都不够。写代码的时候又常常被打断,工作了一天结束之后发现好像什么都没做。这样的状态持续时间久了,疲惫感充斥在工作中,动力也会渐渐不足。即使下班回家了,也只想躺在床上玩手机,打几盘游戏睡觉。
对我个人来说,下班后自己还会去学习、写文章、看书等,长期以往也有沉淀了不少的文章,也出过技术相关的书籍,因此有些同事调侃我为时间管理大师。其实通过一些小技巧,你也可以一样每天高效完成工作,把剩下时间用来培养自己的兴趣爱好、调节自己的情绪状态,都是可行的。
# 8.1.1 合理分配时间
我们从小就知道生活学习要劳逸结合,工作也是。合理的时间、恰当的工作内容安排,可以让我们每天的工作游刃有余,空余出更多的时间进行思考、反省、更好地提升自己。关于时间管理的文章和书籍也不少,这里我分享自己常用的一些习惯和技巧。
# 时间划分
相信每个人都有自己效率较高的工作时间,我们可以将自己每天的工作时间分成几个部分,包括:
- 零碎的时间段(30 分钟内)
- 连续较短的时间段(1-2 个小时)
- 连续较长的时间段(2 个小时以上)
可以用空瓶子填石头的方法,想要在瓶子里装进更多的石头,需要先把大的石头放进去,然后再把小一些的石头放进去。如果先放一些小石头,大石头可能就会放不进去了。
工作时间的分配也是一样的道理。我们先把长的时间段划出来,用来专注自身的主要工作内容,例如对程序员来说就是写代码实现功能。接下来是较短的时间段,可以用来做一些对连续性要求不高的工作,例如代码测试、问题定位和修复等事情。最后是零碎的不连续时间段,可以用来规划工作内容、与协作方(产品、设计、其他开发)沟通、总结复盘等内容。
# 工作内容拆解与分配
我们可以将每天需要做的事情进行拆解,将耗费时间长、专注度要求高的拆分成按照一个小时、半个小时为维度的任务,以及整理剩余一些相对琐碎的工作。将每天的工作时间按照自身的情况进行分配之后,我们就可以在不同的时间段里,排入不同的工作内容。
以我们程序员为例子。假如每天 9 点多才到公司,上午的工作时间大概 2 个小时左右。可用于准备今日的 Todo List,梳理今日工作内容并进行分块(根据工作量大小划分),梳理需要的资源并推动相应的依赖方,这个过程大概 0.5-1 小时。上午还剩下 1 个多小时,可以挑某个预估时间差不多的活来干。
下午会有 4-5 小时的时间,除去可能进行的会议,可以安排较大块的工作内容。可以以小时为单位来划分,每完成一个任务就稍作休息,上个厕所、接杯水喝等。这个过程可能会被各种人打断,包括来问某个功能是否能实现的产品、来咨询某些问题怎么处理的甲方、来请教某个事情如何解决的同事等。因为我们的任务是以小时为单位划分,被打断造成的工作节奏的影响会少一些。
一般来说,晚上也有 2、3 个小时以上的时间可以干活,而且这个时候开会比较少、被人打扰的情况也较少,所以很多程序员的最高效开发时间在晚上。同样,我们可以按照以小时为单位的任务来进行。
一天的工作结束之前,还有比较重要的一件事,就是对 Todo List 进行“复盘”。我们可以根据早上梳理的工作内容,回顾今天的事情是否顺利完成,如果有一些心得体会,可以简单地记录下来,等空闲或者周末的时候再集中整理。
# 接受计划永远赶不上变化
即使我们将时间划分得很整齐,也将工作内容安排得有条不紊。但实际上执行的时候,永远会有各种意料之外的事情打乱我们的计划。可能是被上级喊去谈话、产品找过来对需求、用户反馈了现网的紧急 bug,甚至可能是饮水机没水了、肚子突然饿了等等,都可能会影响到我们原本的安排。
曾经我自己强迫症也很严重,安排好的事情一旦被打乱,很容易就陷入暴躁和焦虑中。我们可以通过调整自身的性格和脾气来降低情绪带来的影响,但这需要花很长的时间。但是我们可以通过降低预期、灵活处理备用计划等方式,将这些意外也视作是工作中的一部分,那么我们也可以很快地适应现状、快速找回工作状态。
计划的确赶不上变化,但我们也可以把变化纳入计划中,称为打不过就加入。当我们接受各种意外的存在,也可以减少因为被打断而需要调整恢复状态的间隔时间,更快地回到工作中。
# 8.1.2 业余时间利用起来
不少人跟我说过,羡慕我有时间研究技术、写文章。其实我开始写博客的时候,几乎是我最忙的时候,那段时间几乎每隔几天就经历一次通宵发版。但如果因为工作本身太忙太烦,影响到了我们对工作和生活的热情,那么不妨可以试试在下班后做些想做的事情。
很多时候由于业务本身的局限性,写业务代码常常都变成了体力活,甚至用一个同事的话来说叫“脊柱编程”,因为不用动脑。作为一个程序员,我们总有很多很酷、很帅的事情想去做,例如搞点小工具、写写好玩的插件、给开源仓库提 PR 等等。如果上班的时候没有机会去做这些事情,我们可以把业余时间利用起来。
业余爱好和工作内容不一样,我们不需要将自己的周末时间、下班后的时间拆得很细,也不需要给自己安排必须在什么时候完成。既然是用来培养兴趣、调整状态,可以从最容易的部分做起,越简单、越快能有效果的越好。因为当我们尝试用业余时间做一些事情的时候,最难的在于怎么坚持下去。只有从中获得乐趣之后,才更有动力去继续。也只有继续下去,我们才可以做更多的尝试。
当然,并不是每个人都希望下班后依然对着电脑。这里业余时间的安排,并不一定指和技术、职业规划相关的,可以培养一些兴趣爱好,例如打球、健身、做饭、爬山等等,也可以是听音乐、看电影、吃美食这些。如果能通过这些事情调整好我们的状态,同样可以提升我们工作的效率。
# 8.1.3 给自己留白
当我们开始给自己安排好工作时间、业余时间的计划时,需要注意的是凡事不要安排得太满,我们要给自己的工作和生活留白。
我们学会的技能、攒足的经验、使用的工具,都在帮助我们提高效率。但有些时候,事情也可以慢慢做、仔细做。我们可以更加专注、更加认真地去做好某一件事情,不要急、不要躁。同样的,我们定下了很多目标、安排了很多的计划,例如每天坚持跑步、每周写一篇博客、每个月读一本书等等,也都可以留些空白,要允许和接受来自情绪或计划的调整和更改。
有些时候,我们要放松对自己的要求,准许犯错和失败、允许计划未完成、接受任务没做好。把事情做到极致固然很好,而留下些余地也想必也是个不错的选择。生活中、工作里总有很多的不完美,但不完美有时候更能让我们的人生丰富多彩。