有位朋友说,他新近换了工作,9116工作制,打乱了之前所有的计划,几乎没有多余的时间看书和学习,问我应该怎样在这种忙碌中抽出时间提升自己。
工作很忙,无暇提升,这是个普遍性问题,今天特意针对它聊一下,包括如下3部分内容:关于提升自己的两个认知错误
996、9116工作制的时间管理建议
如何在工作中提升自己
第一个认知错误:把提升自己等同于看书学习。
但实际上,1)看书学习可能提升自己;2)但提升自己不等于看书学习。
因为个人的提升,有两个常见途径:
从知识中学习,就是我们说的看书学习了;
从自己的实践经验中学习。即你做了一件事后,从这件事中萃取经验,提升自我。从经验中学习,是成人使用更多的方式。
第二个认知错误:上班时间要用来完成工作,业余时间才可以提升自己。
实际上,更多的提升,来自于工作时间和工作过程。业余时间的提升,效率并不如工作时间。
你可能会说,业余时间才能自主掌控,才可以合理安排,系统、有效地进行自我提升。但实际上,知识的内化、技能水平的提升,最重要的是实践!而工作环境,对职业相关技能来讲,是天然的实践环境,是以战养战的最佳场所!举个例子,你想刚学习了一些Python的基础语法,接下来想要提升Python编程技能,一种方式是业余时间自己找一些DEMO项目来做,一种方式是参与公司的一个商业项目。你觉得,哪种方式,能让你更快地提升Python编程水平?这也是很多公司在招募开发者时要求你有实际项目经验的缘故,因为只有实际项目,才能真正淬炼你的技能。
2
996工作制的时间管理建议
避开前面说的关于提升自己的两个认知错误,996、9116如何找时间提升自己,就不是问题了,答案很明显,对于996、9116工作制,提升自己的关键策略就是——一定要想办法在工作中有目的的提升某些能力。这些能力不一定是专业技术方面的,也可能是软实力,沟通、协调、组织、规划、演讲、开会、分解任务等等。当你充分利用了工作时间来完成工作,顺便提升自己,那工作外的时间,就可以更多的分给家人。不然的话,996、9116你已经很忙了,周日那天还要把时间交给学习提升,那家人就被忽略了,生活很容易出状况。这样是不可持续的。看到我说996工作制的小伙伴提升自己的最佳方式是在工作中以战养战,有的小伙伴会说,感觉工作中做了很多项目,也没什么提升呀,都是重复性工作和驾轻就熟的工作。即便做重复性工作和驾轻就熟的工作,也可以获得提升!没有提升,那是因为,你的姿势不对。
很多程序员都熟悉单例模式,也写过不少单例模式的代码,有新项目要用到单例模式时,就总是复制粘贴之前实现过的一段代码,改改类名、变量名、函数名,然后就完事大吉。这样的方式,就不可能提升。能让你提升的做法,是采用不同的方式、提出更高的要求来重新实现单例模式,比如做一个模板单例类,这样就可以在每个项目中包含头文件,通过特化直接生成需要的单例类。很多程序员做完项目就完事大吉,不回顾、不反思、不梳理,这样用过的某个知识点、某个技能点,仅仅是增加了熟练程度,而且熟练程度提升到一定层次后,多用一次、两次,就很难感觉到有明显的提升增量,整体下来你的感觉,自然是没什么提升。在这个例子中,能让你提升的做法,是主动复盘,每做完一个项目或者每隔一段时间,就按照下面的模板来反思自己:我在项目中用到了哪些知识点、方法、技能?
哪些哪些知识点、方法、技能等用得好?好在什么地方?有什么前提条件?下次满足什么条件、该怎样用才能再次用好?用得好的东西,还能用在别的什么地方?
哪些知识点、方法、技能等用得不合适?为什么?更合适的是使用什么知识点?怎么使用?下次怎样规避不合适不合理的知识点或用法?用得不合适的东西,用在别的什么地方可能是有效的?
从项目全局视角出发,我关于知识、技术、解决方案等等的选择,有哪些是对的?为什么?哪些是错的?为什么?下一次做项目,遵循什么原则可以提升正确选择的概率?
我用到的知识点、方法、技能等,有哪些可以更新到我的知识体系中?它们与既有知识体系中的哪些知识点可以发生哪些方面的关联?
综合刚才的两个例子,做一个归纳总结,我们在工作中想要快速提升自己的技能水平,有下面三种策略:用到既有知识、经验、方法、技能时,尝试新的用法
在使用知识、经验、方法、技能时,提出比上次使用更高的要求
周期性或项目完结时,主动复盘,把经验变成经验值,把新知识纳入既有知识体系