吾日三省吾身:为人谋而不忠乎?与朋友交而不信乎?传不习乎?–《论语·学而》。加拿大不列颠哥伦比亚大学、瑞士苏黎世苏黎世大学和微软研究院合著的论文《Enabling Good Work Habits in Software Developers through Reflective Goal-Setting》研究中了52名专业软件工程师在两到三周内每天对他们的工作进行自我反思。发现,有目的的、持续的自我反思能提高工程师的工作效率和幸福感 (79.6%)
。
- 通过支持识别和监控工作习惯目标和策略,持续的自我反思可以成为在工作中实现富有成效的自我提升的重要一步。工程师表示它帮助确定目标 (80.8%) 和可行的策略 (83.3%)。
- 每天的自我反思不仅提高了工程师对工作习惯、进步和成就的认识 (84.5%),而且还带来了富有成效的(短期)行为改变 (79.6%)。
- 经常自我反思能帮助工程师自助
工程师实践每日反思的五个阶段
- 第一阶段,提高自我意识
- 第二阶段,选择合适的成长目标
- 第三阶段,可视化未来成长目标的行为和技术
- 第四阶段,确定工具和技术以实施目标
- 第五阶段,通过持续反思将增长目标付诸实践
工程师每日反思的问题设计
反思性目标设定核心是每日自我反思问卷,要求工程师在开始工作前回答一份上午问卷,以及他们在工作日结束时回答的下午问卷。
- 上午问卷要求工程师说出他们当天想要完成的五件最重要的事情。
- 下午的问卷包括三个部分:1)我在哪里?2)我想去哪里?3)我如何到达那里?
上午问卷:
- Q1:你今天打算达成什么目标?
下午问卷:
- Q1:请评价你今天上午是否实现了 XX 项目的计划
- Q2:今天在工作中发生在你身上最好的工作相关的事情是什么?
- Q3:早上还有什么事情是你完成的但没有计划好的吗?
- Q4:有没有什么事情让你的计划难以实现?
- Q5:你是否积极尝试过达成目标?[选择“是”或“否”]
- Q6:[如果在 Q5 中选择“是”]你是如何执行你的策略的? 它对你的工作日有积极影响吗? [在问题 5 中显选择“否”] 为什么不呢?
- Q7:你有没有想为自己设定的目标,可以帮助你改善或保持良好的工作习惯?尝试遵循 SMART 目标原则,即考虑一个具体的、现实的、对你很重要的目标。 如果你还考虑何时要实现该目标(有时间限制)以及如何衡量你的进度,这可能会有所帮助。
- Q8:为了实现这个目标,你会采取的第一步是什么?
- Q9:今天有没有其他目标要说的?
- Q10:你是如何评估你今天取得的成就和进步的?
工程师的工作习惯目标和策略
工程师的工作习惯目标可以分为改进时间管理、避免偏离计划工作、提高对团队的影响、保持工作与生活的平衡以及持续学习。
改进时间管理
- 目标:提前计划工作
- 策略:维护个人任务列表;在日历中预留时间处理重要任务;为计划外任务或问题预留 Buffer;制定一个例程;设置提醒;拆解任务;
- 目标:在最重要的任务上取得进展
- 策略:不断审查优先事项;定期复盘任务进展;定期更新计划;
- 目标:擅长工作跟踪工具
- 策略:更新进度;文档记录调研和新发现;为每个工作项目拆解子任务;
避免(自导/外部)偏离计划
- 目标:更好地处理紧急/计划外的问题/Issue/Bug
- 策略:审查优先事项; 规划预留 Buffer;设置具体上限;更新计划;
- 目标:提高注意力:减少分心和干扰
- 策略:时间分块/工作分组;禁用通知;减少沟通渠道;要求同事适应;换个位置;限制应用/网站;预备一个专注的环境;专注于单一任务;完成自我反思任务;
- 目标:平衡编码时间
- 策略:平衡活动和设置限制;在日历中预定特定的编码时间
改善对团队的影响
- 目标:做一个更好的同事
- 策略:将重要任务委派给同事而不是总是自己完成;积极与同事分享他们的知识和学习;
- 目标:在特定时间帮助同事
- 策略:为了减少他们受到外部干扰的机会,要求同事提前在日历中安排问题的时间;改变他们的位置,例如,通过移动到办公室安静的地方或在家办公;
- 目标:进行更多 Code Review
- 策略:制定每日或每周例程;设置提醒;
- 目标:保持文档更新
- 策略:一致地记录,例如,在对代码库或基础设施进行重要更改后立即记录;制定在空闲时间时的记录例程;
- 目标:更独立地工作
- 策略:记录学习过程和写思考沉淀;
保持工作与生活的平衡
- 目标:在工作中:保持动力和新鲜感
- 策略:定期进行短暂的社交休息,并利用这些休息时间与同事进行有意义的对话或向他们学习;减少工作时间,进一步优化他们的工作效率;更规律的工作时间和避免夜班或周末工作;
- 目标:工作之外:更好地脱离工作
- 策略:追求更可持续的生活方式,它们包括多锻炼、睡得更久、睡得更好、吃得更健康、冥想和写日记;
保持学习
- 目标:学习/提高特定技术/习得转移技能
- 策略:制定一个学习例程;在日历中预定重复出现的时间块用于学习;工程师还想更好地了解他们所属的产品及其长期愿景,并试图通过向更多高级同事寻求帮助;具像化想交流的问题;
- 目标:提高自己
- 策略:养成了定期复盘目标的习惯;