ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

用脚本和看板落地华为工作法:搭建个人高效执行系统

用脚本和看板落地华为工作法:搭建个人高效执行系统 简介这份PPT围绕华为高效执行力工作法展开面向企业管理层、团队负责人和职场人士。内容从目标分解、绩效考核、无借口文化、立即行动等角度切入结合“上层作势、基层做实”的工作流程与典型案例帮助读者理解高效执行力的核心要素并落实到日常管理动作中。资源为1个pptx文件大小约6.12MB共9个章节结构清晰适合内部培训和个人复盘。目前已有118人学习。通过这一讲稿可系统了解华为从战略规划到员工执行的分解路径以及用严格考核倒逼成果交付、用行动导向取代借口文化的具体机制对优化企业执行氛围和提升个人工作效能都有参考价值。1. 高效执行力不是态度问题是系统问题读再多方法论只要第二天早上打开电脑还是先刷半小时消息那些原则就只是收藏夹里的安慰剂。所谓的高效执行力通常不是靠意志力撑出来的而是靠一套不需要思考就能运转的流程托住的。华为工作法里被反复讲到的“主攻方向”“压强原则”“闭环复盘”拆开了看每一件都能翻译成工程师熟悉的工具和脚本目标拆解、时间块、看板、自动化提醒、数据统计。这篇不聊读后感只把“浅读”落成一套可复现的个人执行系统适合每天被会议、群消息、需求变更打断但又确实想把关键事情推完的开发、运维、测试和技术管理者。2. 华为工作法的执行内核聚焦、压强、闭环2.1 先聚焦把“重要且紧急”压成当日唯一目标执行力的第一杀手不是懒而是目标太多。待办清单里躺着二十件事人的本能反应是挑最容易的开始做做完划掉产生一种“今天很充实”的错觉真正关键的那件事反而一拖再拖。华为工作法里强调的“主攻方向”往个人层面翻译就是一句话每天只允许自己有一个主攻目标其它事可以推进但不能占用主攻目标的时间块。判断一个目标合不合格不是看它重不重要而是看它能不能被验收。理想的当日主攻目标要同时满足三条可交付、有时限、能验证。把这三条摆在一起很多“伪目标”马上现出原形。维度伪目标真目标可交付优化接口性能把 /api/search 的 P95 延迟从 800ms 压到 200ms有时限尽快搞定今天 18:00 前提交 MR能验证看看效果用 wrk 压测 1000 并发输出报告并贴到 MR 描述里落到操作上我一般会在每天到岗后的第一件事——不是打开 IDE也不是看邮件——而是拿一张卡片或一个文本文件写下今天的唯一主攻目标。判断标准很简单如果明天有人问你“昨天做了什么”你能不能一句话说清楚。说不清楚说明今天的主攻目标还没定下来这时候去写代码大概率是东摸一下西摸一下。2.2 压强原则时间块是对抗上下文切换的唯一武器“压强”这个词听起来很狼性实际含义却非常工程化把有限的资源集中投放到单一方向上直到打出结果。对应到程序员日常就是要主动给一天划出不被侵犯的时间块。每一从代码切换到 IM 再切回来大脑重新加载上下文至少要 10 到 15 分钟一天被打断十次就白白烧掉两三个小时。这不是效率问题是算术问题。时间块的具体长度不需要照搬别人的标准。我一般把上午第一段设为 90 分钟因为经过一夜休息前额叶状态最好适合啃硬骨头下午会设一段 60 分钟的用来处理需要连续思考但不那么烧脑的活比如接口联调、测试用例设计。一个参考模板时间段处理内容干扰处理策略09:00-10:30主攻目标深度编码IM 状态设为“深度工作”手机扣在抽屉里10:30-10:45集中处理消息、评审、沟通攒着一起回不回单条14:00-15:00第二目标或技术方案设计不主动约会议也拒绝临时会议15:00-17:00联调、推进阻塞事项主动去找人确认不被动等消息这个时间块的意义在于它把“要不要现在干活”这个决策从你的大脑里删掉了。到点打开终端开始干活不需要内心博弈。常见误区是只排时间不设规则比如“9 点开始写代码”但手机就放在鼠标旁边消息一响手就伸过去了。所以时间块必须配套物理隔离具体做法是主攻时间块里关掉所有非必要通知IM 状态改掉浏览器只留当前任务必需的标签页。2.3 闭环日报、夕会、PDCA 是给执行装进度条没有闭环的执行就像没有 CI/CD 的提交代码写完了但没人知道它到底能不能跑。华为工作法里对“自我批判”和“总结复盘”的强调本质就是给执行装一个反馈回路定目标 → 执行 → 对照结果 → 找差异原因 → 改进。这个东西在管理咨询里有名字叫 PDCA在软件工程里就是持续集成和迭代。执行层面的最小闭环不需要写长报告三句话足够今天完成了什么卡在了哪里明天的主攻目标是什么。别小看这三句话它强制你每天对自己的产出做一次验收。很多人不是不干活而是干完就忘到周五复盘时脑子里一片空白只能凭印象说“这周挺忙的”。把三句话日报变成每天收工的固定动作执行力的进度条就出现了——你随时能说出自己推进到了哪个位置。更进一步每晚对着白天的记录问一个具体问题今天的实际耗时和预期差在哪里比如你以为接口联调只要两小时结果花了一下午那就要追问是接口文档不清晰还是依赖方响应慢还是自己没提前确认协议。这个追问必须在当天做隔一天记忆就模糊了最后只能得到一个“下次注意”的无效结论。3. 把工作法变成脚本让执行由机器提醒不由意志力坚持3.1 一个 25 分钟番茄钟把时间块钉在系统托盘上第 2 章讲的时间块如果不借助工具很容易在执行第一天就被一个“我就回一条消息”打破。对抗这个问题的常见做法不是买一堆效率 App而是用一个自己能看懂、能改的番茄钟脚本。下面这个 Python 脚本依赖系统的通知服务在 Linux 桌面上用 notify-send 弹通知工作结束和休息结束都会提醒。#!/usr/bin/env python3 import sys import time import subprocess def notify(title, msg): subprocess.run([notify-send, title, msg]) def countdown(minutes, label): total int(minutes * 60) while total: mins, secs divmod(total, 60) print(f\r{label} 剩余 {mins:02d}:{secs:02d}, end, flushTrue) time.sleep(1) total - 1 print() def main(): work int(sys.argv[1]) if len(sys.argv) 1 else 25 short_break int(sys.argv[2]) if len(sys.argv) 2 else 5 rounds int(sys.argv[3]) if len(sys.argv) 3 else 4 notify(番茄钟启动, f{rounds} 轮每轮工作 {work} 分钟) for i in range(1, rounds 1): notify(开始工作, f第 {i} 轮专注 {work} 分钟) countdown(work, 工作) if i rounds: notify(休息一下, f{short_break} 分钟) countdown(short_break, 休息) notify(全部完成, 今天的番茄钟全部结束) if __name__ __main__: main()参数看着很简单但有一个使用细节值得说默认值是 25 分钟工作、5 分钟休息、循环 4 轮这是经典番茄工作法的参数如果是深度编码我会改成python3 pomo.py 45 10 3即 45 分钟工作、10 分钟休息、3 轮一轮下来差不多是两小时正好覆盖一个完整时间块。命令里的三个整型参数依次对应工作分钟数、休息分钟数、轮数。notify-send在远程终端或不带桌面通知的环境里会被静默丢弃所以脚本里同时保留了终端倒计时输出这样即使没有弹窗也能看到剩余时间。配合桌面快捷键绑定到全局热键按一下启动按 CtrlC 终止比手机 App 少一层解锁和切换的成本。3.2 用 todo.txt 管理任务让拆解结果可被机器读取待办事项工具的选择有一个容易被忽略的硬指标任务列表能不能被 shell 直接处理。图形化看板当然好用但一旦任务数量超过五十条维护成本就开始反向吞噬执行力。todo.txt 的价值在于格式极简——一行一个任务用前缀标记完成状态用标签标记上下文和优先级任何文本处理命令都能直接消费它。下面这组 shell 函数能把 todo.txt 变成一套可用的个人任务系统。export TODO_FILE$HOME/todo.txt t() { case $1 in add) shift echo $(date %F) $* $TODO_FILE echo 已添加: $* ;; list) grep -vn ^x $TODO_FILE ;; done) local n$2 sed -i ${n}s/^/x / $TODO_FILE echo 已完成: 第 ${n} 项 ;; today) echo 今日完成: $(grep -c ^x $(date %F) $TODO_FILE) 项 grep ^x $(date %F) $TODO_FILE | sed s/^x // ;; *) echo 用法: t add|list|done|today ;; esac }这段代码里有一个容易踩的坑list用的是grep -vn输出格式是“物理行号:原文”而不是过滤器自己的编号。这样做是为了让done里的sed -i ${n}s/^/x /能直接根据list显示的行号定位到源文件里的对应行两个命令的行号语义必须一致。加任务时自动带上当前日期是给后续的“今日完成”统计做准备——grep ^x $(date %F)能精确抓出今天划掉的任务。如果你用 macOSsed -i需要写成sed -i 这是 BSD sed 和 GNU sed 的一个经典差异。使用上我会在任务内容后面追加标签来增强过滤能力优先级用(A)、(B)、(C)标注场景用meeting、coding项目用order-export这类前缀。想看今天的重点任务就执行grep (A) ~/todo.txt想知道某条任务卡在哪个项目里就grep order-export ~/todo.txt。别小看这种“脏”格式它最大的好处是不依赖任何特定软件换电脑、换系统、甚至改用其它任务软件一个cat就能把全部数据带走。3.3 收工前 30 秒生成“三句话日报”前面讲的三句话日报实现起来非常简单。借助 3.2 节里的 todo.txt一条命令就能把“今天完成了什么”捞出来不需要在脑子里回忆半天。today() { local d$(date %F) echo $d 完成清单 grep ^x $d $TODO_FILE | sed s/^x // echo 未完成待办数量 grep -vc ^x $TODO_FILE echo 明日重点A 优先级 grep (A) $TODO_FILE | grep -v ^x }这个函数的输出分成三段已完成清单、未完成数量、明天的高优先级任务。把today绑定到 shell 的zsh -c today快捷键别名上或者直接在收工前敲一下30 秒就能生成当天的执行记录。日报不需要写给领导看写给明天的自己看就行——明天不用重新想“我该从哪开始”直接看 A 优先级列表。卡住的事情也不会丢因为凡是没划掉x的都会留在未完成清单里直到你主动处理它。这也是我建议用文本文件而不是在线文档的原因它不会折叠、不会被淹没在聊天记录里它就是每天打开终端时第一个映入眼帘的待处理状态。4. 任务拆解与看板从“要做”到“正在做”的工程化流转4.1 拆到“一个番茄钟能完成”的原子粒度执行力断在半路常常不是目标太大而是任务颗粒度太粗。“做一个订单导出模块”这种描述大脑拿到之后根本不知道第一步该做什么于是只能继续拖着。把任务拆到可以放进一个番茄钟25 到 45 分钟完成的原子粒度是让行动力从“等一下”切换到“现在开始”的关键一步。判断标准就一条如果这个任务开始前还要纠结先做什么说明它还不够原子如果坐下来就能直接做它的粒度就合格了。以“把订单导出从 CSV 升级成异步 Excel”为例粗看是一个功能拆开后就变成一组可执行、可估时、可依赖排列的任务原子任务预估番茄数前置依赖确认异步任务队列选型Celery 或 RQ2无设计导出任务表结构及状态机3队列选型实现 Excel worker 生成与上传4表结构实现前端轮询与下载链接接口3worker 完成实现大文件清理与失败重试2全部上游压测与监控指标上报2全部完成这样拆完之后每天的主攻目标就变成“今天完成 4.1 优先级下的两个原子任务”而不是一个抽象的“搞定导出模块”。预估番茄数的意义不只是记工时它还能在一天结束时告诉你估算能力准不准。如果某类任务连续三天都超时说明这类任务本身存在没被看到的复杂度需要进一步拆细。4.2 用“阻塞”列管理升级机制看板的价值不在于把任务从左推到右而在于暴露出那些卡住不动的任务。个人执行看板里最容易被误用的列是“进行中”——很多人把任务拖进去就再也不动既不完成也不标记阻塞最后整个看板变成一面静态的墙。常见做法是设四列待办、进行中、阻塞、完成。其中“阻塞”列承担一个特殊职责它是升级信号不是收纳箱。我给阻塞任务定两条硬规则阻塞超过 24 小时必须发一条消息给相关方说明卡点和需要对方确认的问题而不是继续自己扛着每天收工前检查阻塞列表如果某条阻塞超过两天要么把它拆成更小的子任务绕过去要么彻底取消它不允许它长期占据看板又不产生任何推进。这两条规则的理由很简单阻塞任务最消耗心理能量因为你会一直记挂着它又一直不动它。要把这种隐性的心理消耗变成显式的状态强制升级或强制取消反而能释放注意力让真正能推进的事获得资源。4.3 在 GitHub Projects 里搭个人执行看板很多人的日常工作流已经在 GitHub 上那就没必要再引入一个独立的看板工具。GitHub Projects 的 Board 视图可以当作个人执行看板来用而且它天然和 issue、PR 关联任务卡可以直接引用仓库里的真实工作对象。搭建步骤不复杂打开仓库页面进入 Projects 选项卡选择 New Project模板选 Board在项目设置的 Fields 里添加自定义字段StatusSingle select、PrioritySingle select、EstimateNumber把看板默认列改名为“待办 / 进行中 / 阻塞 / 完成”并和 Status 字段值保持一致每个任务卡的描述里写清楚“验收标准”也就是完成了什么状态可以勾掉。字段类型可选值或范围StatusSingle selectTodo / In Progress / Blocked / DonePrioritySingle selectP0 / P1 / P2EstimateNumber预估番茄数1 到 12这里有一个实用参数Estimate 字段用番茄数而不是小时数。因为小时数和人的直觉绑定太紧容易高估自己一天能塞进多少小时番茄数天然带有“一个完整专注块”的语义填 4 就意味着至少需要 4 个不被干扰的专注时段这比写“8 小时”更贴近真实执行时的体验。把 P0 优先级和 Board 视图里的自动排序配合起来每天打开看板第一眼看到的就是今天该做的那一两件事。占满整个屏幕的二十个任务卡只会让人焦虑一个经过筛选的、只有三个 P0 待办的视图才会催促你动手。5. 用 Git 提交记录给执行力做体检5.1 一周的提交记录比印象更诚实人对自己的工作量评估非常不可靠大脑会倾向于记住那些高光时刻忘掉大量碎片时间。想知道这周到底干了多少活不要问感受去问 Git。下面这条命令能在一个仓库里统计最近 7 天的提交频率按天分组一眼就能看出哪些天实际在写代码哪些天只是改了个文档就收工了。git log --since7 days ago --prettyformat:%h|%ad|%s --dateformat:%Y-%m-%d | \ awk -F| {count[$2]} END {for (day in count) print day: count[day] 次提交} | sort命令里的--since7 days ago指定统计窗口--dateformat:%Y-%m-%d把提交时间压缩到天awk -F|按管道符切出日期字段累加每天的提交次数。如果你的工作流里有大量未提交的本地改动或者有包含代码的任务仓库可以把这个统计范围扩大到所有相关仓库写成一个遍历脚本每周五下午跑一遍。输出结果如果显示一周只有一两天有提交那这周的“高效”就需要你自己重新审视了。5.2 五个问题的自我批判清单提交历史负责呈现“事实”五问清单负责定位“根因”。每个周五收工时对着下面五个问题逐一回答答案不需要给别人看但要落在文本里本周主攻目标累计投入了多少个时间块实际完成了几个哪件事消耗的时间远超预估是拆解不够细还是中途需求变了哪类打断出现了三次以上是消息提醒、会议还是自己主动点开了别的页面阻塞任务里有哪几条超过 24 小时没有升级当时是怎么劝自己“等等再看”的下周至少要砍掉哪一件“可做可不做”的事这套清单对应着第 2 章的方法论骨架聚焦、压强、闭环。第一个问题检验聚焦是否被守住第二个问题暴露拆解粒度的缺陷第三个问题呈现抗干扰系统的漏洞第四个问题直击阻塞升级机制的失效点第五个问题逼你在下周开始前先主动做减法。每个问题都不是为了自我谴责而是为了给下个迭代轮提供配置项——把上一周的失败参数改掉再跑一周试试。5.3 让复盘结果成为下周的第一个任务再好的复盘如果只停在“下次注意”这四个字上基本等于没复盘。技巧是在周五把复盘结论直接写进 todo.txt 的下周任务列表里并带上 P0 优先级让周五的反思在周一早上自动变成待办事项。t add 下周只看 P0非紧急消息统一中午回复 (A) routine week47 t add 重新估算 Excel worker 任务拆成三步走 (A) order-export这两条生成的下周任务第一条是防复发机制第二条是对超时任务的再拆解。周一早上一开终端t list显示的就是你上周亲口答应自己的改进事项而不是临时从邮件里翻出来的需求。复盘从“感想”转成“任务项”才算真正关上了执行力的最后一环用过去一周暴露出的问题直接约束下一周的行为。本文还有配套的精品资源点击获取
返回列表