前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >你忙吗?

你忙吗?

作者头像
春哥大魔王
发布2023-03-22 17:03:20
3240
发布2023-03-22 17:03:20
举报
最近和一些人聊天,习惯问一句“你忙吗?在忙啥”。

因为我自己负责的一摊事,目前都在我年初的规划和预期之内进行,没有什么超出预期的情况出现,一直处于那种按部就班的状态,所以我自己的事情不忙。

在看到其他人“看起来很忙”的状态时,我就会好奇,在忙啥。

忙碌容易让人陷入一种短视的境地,让人重复昨天,无法升维看待事物,也无法获得成长。

忙碌,让人陷入怠惰,表面看起来很勤奋,但其实是很多时候是不愿突破自己,用过去的习惯做今天的事情。

《稀缺》这本书很好的解答了怎么避免忙碌。

简单来说就三点:

  1. 时间管理
  2. 找到你要做的事情,并做归类;
  3. 留余;
  4. 求助

先说,时间管理。

一个owner,不管是团队owner,还是系统owner,或者架构师,都有自己负责的一摊事。

想要做好这摊事,owner或者管理者就需要花时间去想这摊事。

也就是说你需要预留出相当一部分时间是用于思考的,而不是用于执行的。

而且这部分时间不能是碎片的,或是马马虎虎的时间。

反而是那些对你效率非常高的整块时间,用于思考才最有价值。

如果用于思考的时间和用于执行的时间分配上不对,就会出现常说的,用战术的勤奋代替战术的懒惰问题,对整个团队来说是有害的。

一个owner,一个管理者,一个架构师,最重要的就是所谓的战略选择。

战略选择包括,战略目标的制定,战略打法的选择,战略时机的把握,战略节点的达成等。

战略执行的背后,又需要匹配相应的资源。对于团队不具备的能力,leader需要投入精力做培训,培养团队成员热情。

需要将目标清晰的传达给每个参与战斗的同学。

其实涉及到团队搭建,文化与习惯改变,制定原则等问题。

这些都是需要花时间想清楚的,想清楚了,效率和质量才会高。

不然就会出现,带着大部队胡乱试错的情况。

所以,一个管理者如果一直很忙,要么是自己不行,要么是招的人不行。

时间分配原则上,可以参考重要-紧急的时间管理四象限。

总结来说,管理者必须分配给自己足够多的时间用于思考,不要忘了大局。

再说下,找到你要做的事情,并做归类。

管理者有管理者要做的事情,owner有owner需要做的事情,架构师有架构师需要做的事情。

这个边界一定要清晰。

我见过一些管理者,做着做着就去做下属该做的事情去了。

这不仅占用了管理者关键的时间,也挤占了下属的成长空间。

让大家都陷入一种不信任,低效忙碌的境地。

所以要找到自己该做的事,并做归类。

比如上面说了,管理者该做的事情是多思考。

架构师要做的事情是划分好整个架构的边界,让核心能力在合适的边界下成长起来。架构师要关注如何低成本的实现系统的高可用,如何做好稳定性,如何让业务变更更便捷、迅速。

技术经理,要了解自己的业务发展情况,和技术系统做衔接。要知道一个系统的底线和上限,要不断提升底线和上限。

我见过一些工作非常忙碌的研发同学的代码。

说实话,他们会话很大的功夫,在堆砌很多代码,实现眼前的需求。

很少的人会停下来,想想这部分功能在短期是否是必须的,是否是核心功能。

如果不是主线任务,那应该如何低成本的方式控制好风险,同时交给二期迭代。

因为紧张的工期排在眼前,导致大量的复制粘贴代码,这部分不能形成资产的代码长期放在这里,就会形成技术债。

我之前做类似的大需求,一般会把需求划分成几个模块,这些不同模块的功能对应的代码也会出现在不同的模块下。

最后会花功夫低成本的和现有功能集成起来。

而不是花很长的功夫去修改存量代码。

某种程度也是一种“对修改封闭,对扩展开放”的OOP原则吧。

有些人经常会被自己负责系统的临时性的问题牵扯精力。

导致自己平时非常忙,这其实就陷入到了紧急时间象限的境地了。

比如你的系统老有问题,各种层面的稳定性问题,那你就要花一定时间去把自己系统的稳定性问题系统的解决掉。

如果你的每次需求迭代,都需要修改大量的代码,那你就要提前花精力做好系统需求的模块化划分。

比如我之前接手过一个系统,原有的系统负责人短时间离职了,某种程度是因为这个系统代码太烂了,维护成本和稳定性压力都很大。

我在当时缺少文档,且对系统不够熟悉的情况下,接到了一个时间紧,任务重的需求,怎么搞呢?

之前的同学可能会觉得时间紧,就在非常乱的代码体系上打补丁,先支持下需求。

而我的思路,则是通过答题纸,自测的方式,熬了几个通宵,优先把骨干链路的功能摸通了。

同时在骨干功能上,我看到不合理的地方,有风险的地方重构成我认可的理想态。

当我对核心骨干链路的逻辑知根知底之后,我在增量去做这个需求就非常容易,某种程度上我只需要关注增量代码即可。

而不会像之前同学,测出bug之后,即需要看老代码,又看新功能,感觉上就是乱成一锅粥,没有重点,没有调理。

我的方式是用4天的通宵时间换来了未来长久的低成本维护和稳定性。

而不是一直陷入短视的问题-解决-再发现问题的无效循环中。

保障主链路,保障核心功能可靠,这些都是重要的事情。

花时间做好重要的事情,可以避免紧急的事情发生。

最后一种方式就是,留余。

这个是最现实有效的方法。

如果一个需求你评估下来时间长,那就排这个时间。

如果要压缩时间,对应的也要压缩需求。

很多人出现了错误的做法。

需求不能在排期内完成,就加人。

加人有时候并不是效率高的方法。

因为新人并不能快速理解系统当前的业务知识,新人进来之后,有很长时间是不能干活,不能产生直接价值的。

反而可能会占用主R同学的时间给他讲需求。

或者用错误的方法短期实现了一个功能点,后续这部分变成了新的腐化成本。

这种例子屡见不鲜。

我们可以想想,一个需求的复杂程度和实现的时间是正相关的。

如果要砍时间,对应的有效方法是砍需求。

加人参与,效果上往往得不偿失。

其实还有一种方法是,求助。

就是你觉得自己搞不定了,但又说服不了产品,你可以把情况反馈给你老板,让他帮你和产品聊聊。

说实话,没有什么需求是不能延期的。

我见过很多系统因为上线过程出现故障,而延期上线的,不能延期,只是看天平的另一端是啥。

总结来说,忙的同学,更应该停下来思考下,为什么忙?

是因为时间分配问题,还是做了自己不该做的事情,还是说做事方法不对。

只有不断的在痛苦中反思,我们才能获得成长。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 春哥talk 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档