07 | P5提升攻略:怎么快速从学生转变为“打工人”?

2020-12-11 李运华
大厂晋升指南
进入课程

讲述:安晓辉

时长15:38大小14.32M

你好,我是华仔。
从这一讲开始,我们进入到课程的第二部分,职级详解。

职级详解导学

在这个部分,我会基于 COMD 能力模型,从技术、业务、管理三个维度和规模、时间、环境、创新四种复杂度出发,为你详细解读 P5~P9 每一个级别的能力要求。同时,我也会结合过往带团队、指导他人和担任评委的经验,给出每个级别的提升建议。
我想强调的是,这里的职级解读和提升技巧绝对不是只针对阿里的职级,而是通用的。不管你是在 BAT,还是在 TMD,不管你是在互联网大厂,还是在其他公司,都可以参考。你只要把自己当前的职级对标到这门课程定义的级别(P5~P9),然后学习相应的内容就行了。
具体怎么对标呢?你可以参考第 6 讲《晋升等级:不同的职级体系如何对标》这篇加餐。
另外,我还想提醒一点:你的学习重点肯定是自己当前级别和下一级别的内容(比如 P5 的同学需要重点学习介绍 P5 和 P6 的内容),但并不意味着其它级别的内容你就可以直接跳过。
比如你现在是 P7,虽然已经顺利越过了 P5 和 P6,但你对这两个级别的理解不一定完全准确,也不一定全面。而你很可能要指导这两个级别的同事、面试这两个级别的应聘者,或者作为 Team Leader 带这两个级别的下属。所以,认真学习 P5 和 P6 的内容,对你同样会有很大的帮助。
换一个角度想,如果你现在是 P6,看起来 P8 和 P9 好像离你还很遥远,这两个级别的内容你还要不要学呢?我还是建议你了解一下比较好,因为这样可以让你对自己的长远目标有一个大概的认知,有助于你做职业发展规划和晋升路线规划。

P5:从学生到“打工人”

我们先来看看 P5 级别。P5 对应的工作年限大概是 0~3 年,本科毕业生的定级一般就是 P5,优秀的毕业生会定到 P5+,目前进 BAT 的应届生绝大部分都是 P5+。
大部分 P5 工作 2 年以后可以晋升 P6(无论是内部晋升还是跳槽定级)。如果你工作 3 年了还没法晋升 P6,可能需要考虑一下是否适合当前岗位了,或者反思一下自己有哪些地方做得不好。
P5 的核心能力是在别人的指导下完成任务,这句话有两个重点:
在别人的指导下:通常是 P6 或者 P7 来带 P5。
任务:项目各个阶段的各项活动。以开发为例,任务包括需求评审、方案设计、编码、修改 Bug 和上线等。
听起来好像要求不高,但这并不意味着你一毕业就自动具备了 P5 的能力。因为在学校读书跟在公司工作还是有很大区别的,主要体现在以下三个方面:
技术差异
大学学的技术偏重理论,而工作岗位对深度和实践的要求更高。而且就算你是研究生,你的研究方向和公司岗位的要求也很难完全匹配,更不用说前端、Android、iOS、测试、运维、DBA 等各种不同岗位的技能差异了。
业务差异
大学教育不会针对某个公司的具体业务进行教学,而互联网行业的业务领域多、发展快,近几年比较火的领域有电商、支付、社交、本地生活和出行等。这些业务知识是完成工作的基础,但你在刚毕业的时候,往往没有这方面的积累。
管理差异
大学学习的管理课程比较理论化,但公司的规章制度和项目流程有很多细化和具体的要求。怎么熟悉和适应工作岗位的管理要求,怎么跟别人协作,怎么推动事情落地,这些也都是完成工作的基础,但刚毕业的大学生往往处理得还不够好。
正是因为校园和职场环境差别这么大,所以 P5 级别的主要目标就是完成“学生”向“打工人”的角色转换。怎么实现这一层蜕变,是 P5 首先要考虑的事情。
接下来,我就分技术、业务和管理三个维度一一展开。

技术:重点积累基础技术

首先是技术维度。P5 是你职业生涯的起步阶段,也是打基础的关键时期。虽然你的技术水平还不高,但是这时候的学习效果最好,技术提升也是最快的。
因为跟学校的单向学习不同,你能把刚学到的东西马上实践应用在具体工作中,能够达到“知行合一”的效果;同时,P5 承担的责任不大,等你晋升到更高级别之后,就没有这么多精力和时间用来学习了。
P5 的技术要求,我总结在了这张表格里:
P5 阶段要怎么提升技术呢?最重要的就是基础技术的积累
这里的基础技术不是指大学课程中的基础知识,而是指工作岗位中实际用到的技术,不同的岗位要求不同。
比如,Java 业务开发的基础技术包括 Java 编程语言、MySQL 数据库、计算机网络、HTTP 协议和 Linux 操作系统基础知识等,而 iOS 业务开发的基础知识,就包括 Swift/Objective-C 编程语言、iOS 操作系统基础知识、Xcode、SQLite、计算机网络和 HTTP 协议等。
虽然它们有一部分相同,但总体来看差异还是比较大的,所以你也要根据自己的岗位有针对性地学习。

两个误区:错误理解“基础”与碎片化学习

在 P5 阶段提升技术时,很容易陷入 2 个误区。
第 1 个常见的误区是错误地理解了“基础”的意思
我在第 3 讲介绍价值原则的时候提到过,很多人为了提升自己的基础能力,跑去学编译原理和 Linux 内核源码分析,或者去背一些算法源码。结果他们到头来发现,投入了大量的时间和精力,却没什么收获。
所以你一定要记住,基础是和工作任务相关的基础,而不是整个计算机行业的基础。关于怎么学习基础技术,我会专门用一期加餐来系统地介绍。
第 2 个常见的误区是只通过搜索来进行碎片化学习
工作中遇到一个问题或者一个技术点,就上网搜索几篇文章学习一下,很多人都是这么做的。
碎片化学习虽然投入时间少,但是效果难以保证。首先,你不可能在工作中遇到某个技术相关的所有问题;其次,通过这种方式,你只知道一个个零散的技术点,而不知道这些技术点之间的关系。
以 HTTP 缓存为例,如果只是单纯去搜索“HTTP Cache-Control”,你确实可以知道 no-cache 和 no-store 等名词的含义。但是整个 HTTP Cache 协议、浏览器的处理逻辑和服务器的处理机制这些技术点你就学不到了,而它们在分析 HTTP 性能相关的问题或者优化 Web 页面的时候都是必须掌握的。
可能你会觉得碎片化学习是没有办法的事情,因为工作以后就不像在学校那样,有整段的学习时间。
虽然客观条件是这样,但碎片化时间并不意味着只能碎片化学习,正确的做法是“碎片化时间,系统化学习”。也就是说,每天都抽出一小段时间有计划地学习某项技术,哪怕每天 10 分钟都可以,但总体的学习内容是系统化的。
想让学习系统化,最简单的办法就是对照一本经典的书籍循序渐进地学习
虽然你不能把所有的内容都一次性学懂,但至少在学完一遍后,可以对一项技术的完整体系建立整体印象。这样,你后续再深入学习这项技术的时候,效率也会更高。
除了书籍之外,学习技术类线上课程也是一种很不错的方式。
线上课程的作者都是在某个领域积累了丰富经验的专家,而且讲解的内容跟实际工作关系紧密,再加上这些作者往往会有自己独到的理解,你学习起来会更有趣,也更有效率。
同时,线上课程往往还配有音频,比书籍更适合上下班通勤的时候学习,让你更高效地利用碎片时间。

业务:熟悉业务的处理逻辑

第二个维度是业务。P5 对业务的要求主要是熟悉各项业务的处理逻辑

广义的业务:提供的功能和服务

什么是业务呢?我需要在这里专门说明一下。
一般情况下,我们听到“业务”这个词的时候,都会理解为“某个行业的相关服务”,比如电商业务、支付业务、社交业务、游戏业务,其实这些都是“狭义”上的业务。
我在这门课程中,按照 COMD 能力模型拆解级别要求的时候,对“业务”的定义要更宽泛一些,是“广义”上的业务。你可以把它理解为“你负责的系统或产品为目标对象提供的功能和服务”。
具体到不同岗位,是这样的:
如果你负责 2C 或 2B 的业务系统开发测试,那么业务范围就是我们通常理解的业务
如果你负责内部 IT 系统的开发测试,那么业务范围就是公司内部的各种规章制度和工作流程
如果你负责中间件或平台的开发测试,那么业务范围主要是中间件或平台的相关功能和服务。换句话说,你不需要深入理解每个使用你的系统的 2C/2B 业务(可以适当了解),而要把精力放在熟悉中间件和平台本身提供的功能和服务上。
如果你是运维或 DBA 之类的岗位,那么业务范围就是运维体系相关功能和服务。换句话说,你不需要深入理解每个你负责维护的业务(可以适当了解),而要把精力放在熟悉运维体系提供的功能和服务上。

处理逻辑:实现功能和服务的步骤

那么,什么是业务的处理逻辑呢?它是指实现这项业务提供的功能和服务所需要的步骤。直白点说,就是第一步要做什么,第二步要做什么,依此类推,一直到最后一步做什么。
以微信朋友圈为例,发图片动态的处理逻辑如下:
进入“朋友圈”
点击右上角的照相机图标,App弹出选择框
选择“从相册选择”,App展示图片列表
点击需要发布的图片,最多选择9张
选择完成后,点击右上角“完成”按钮,App进入“发表”界面
输入“这一刻的想法”
点击“所在位置”选择具体的位置
点击“提醒谁看”选择需要提醒的人员
点击“谁可以看”选择可见人群
点击“发布”按钮发布图片动态,App返回朋友圈
朋友圈展示刚才发的图片动态
当然,这只是一个简化后的例子,用来说明这个概念而已。所以,我只描述了整体步骤,你可以自行对照微信朋友圈的功能进行细化。
在实际工作中,处理逻辑越细化越好。比如这个例子中的第 9 步,点击“谁可以看”,它就具体包括公开、私密、部分可见和不给谁看 4 个选项,每个选项的含义你都需要详细了解。
P5 的业务要求,我总结在了这张表格里:
怎么才能更有效地快速熟悉自己负责的业务功能呢?
对于 2C 的业务来说,熟悉业务最有效的方法就是让自己成为产品的深度用户
有些技术人员连自己负责的产品都不用,只是机械地按照项目的要求完成任务(例如开发、测试、部署这些任务)。功能上线后,他们既不亲自体验,也不关心用户的反馈。这样做的后果是,连基本的业务现状都很难清晰地了解,更别谈提升业务水平了。
所以,如果你对现在做的业务真的一点兴趣都没有的话,我建议你尽早换一个自己感兴趣的业务,这样更有利于职业发展和晋升。
对于 2B 的业务来说,熟悉业务最有效的方法可能就是多跟客户交流
你不妨多去跑去客户那里,看看客户实际的使用环境和使用流程,听听客户的真实的需求、痛点和想法。
说到这,你可能担心 P5 级别不一定有这样的机会。其实,很多公司都鼓励技术人员出去跟客户交流。P5 虽然不能独立承担这个任务,但是一般情况下,跟着 P6 和 P7 一起去是没有问题的。如果有可能,尽量每个季度都出去见一次客户,这能够大大提升你对业务的理解。
比如我在菊花厂的时候,负责核心网的网管系统设计和开发。公司每年都会给我们安排几次机会去移动、电信和联通的机房里面看看设备,观察他们的维护人员使用我们系统的情况,以及听听他们对我们系统的评价和吐槽。

管理:了解公司的管理制度和项目流程

最后是管理维度。P5 对管理的要求主要是了解公司的管理制度和项目流程,知道自己在项目流程中的职责和任务,熟悉上下游的依赖以及如何推进项目。
P5 的管理要求,我总结在了这张表格里:
如果你是计算机科班出身,应该学过《软件工程》这门课。其实这门课已经涵盖了软件项目管理的内容,比如现在常见的“瀑布开发流程”和“敏捷开发流程”。
但是不同的公司和团队,还会有很多详细规章制度,可能是公司统一规定,也可能是团队历史经验教训的积累。其中有些规则还是“红线规则”,一旦违反就会受到通报处分之类的惩罚。
对于刚入职场的 P5 来说,虽然承担的职责并不重,但很容易因为不熟悉这些规章制度而犯错。所以你还需要特别注意团队规章制度的学习,不要一不小心就踩了坑。

小结

这一讲我基于 COMD 能力模型,给你详细解读了 P5 级别的具体要求。现在,我们回顾一下重点内容:
P5 的核心能力要求是在别人的指导下完成任务,主要提升目标是从学生转变为“打工人”。
技术方面,P5 需要打好基础,学习岗位要求的基础技术。采用“碎片化时间,系统化学习”的方法提高你的技术学习效率。
业务方面,P5 需要熟悉各项业务功能的实现逻辑。对于 2C 业务,你要成为产品的深度用户;对于 2B 业务,你就要多跟客户交流。
管理方面,P5 的重点是熟悉项目流程,避免踩坑。你需要注意学习公司的管理制度。

思考题

这就是今天的全部内容,留一道课后思考题给你吧。
你在 P5 这个级别上停留过或者已经停留了多长时间?如果时间很短,你的技巧是什么;如果时间比较长,你觉得问题在哪里?
欢迎你把答案写到留言区,和我一起讨论。相信经过深度思考的回答,也会让你对知识的理解更加深刻。
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
上一篇
06 | 职级档次:你现在应该具备的核心能力是什么?
下一篇
08 | P6提升攻略:怎么成为独立自主的“项目能手”?
 写留言

精选留言(13)

  • sugar 置顶
    2020-12-12
    思考题我来回答。我目前混迹BAT 工作5年左右,早已不是p5这个级别了。回想自己在p5这个级别,大致上停留时间是1年,自认为不算快但也不算慢。好的不好的两方面我都说说: 先说好的方面,值得大家参考学习,我是本科生,毕业能进BAT的主要关键点在于实习早,并且实习经历中认识了对我帮助非常大的mentor,如果说没有mentor的指点我觉得我不可能是今天的成长速度,所以至今我都非常感谢他。也是在他的指点下,我在b厂仅1年完成了4升5的过程,而具体操作,几乎与本文华仔讲的路数如出一辙,只不过当你我还没有读过华仔的文章。说完好的方面,也讲讲自己走过的弯路:最大的弯路应该就是团队调整导致了自己直属领导的变更,这个我觉得对羽翼尚未强健的雏鹰真的影响挺大的,只能说冷暖自知一言难尽。如今复盘来说,对p5这个级别的新人,我最大的建议是在多个offer选择时,尽可能选择BAT这样的成熟稳定的企业,并且还要选择一个较核心稳定的部门,以此作为自己的第一站,当然我是指在自己选择范围以内尽量按这个选;第二个建议是要学会与主管主动沟通,就像华仔的课程中提到的。
    展开

    作者回复: 很好的经验总结和建议,感谢你的分享 :)

    不管在什么时期,能有一个好的导师是人生之幸,但可遇不可求,我写专栏的目的也是希望将自己的经验总结出来,帮助更多人,因为并不是每个人都能遇到一个好导师。

    12
  • 2020-12-11
    老师,在职场中需不需要藏拙呢?如果一个人能力很强,会不会让领导和同事觉得受到威胁呢?

    作者回复: 会,但是你不应该想到要隐藏自己,而是要换个欣赏你的环境

    1
    7
  • 2020-12-12
    我是2年从P5升到P6,很普通的成长时间。身边也有非常快的,一年就突破的。这几天我想了很多,找到一些问题,但感觉都没到点子上。
    看到了sugar的留言,给了我一些启发。


    我的快速成长,也是在mentor的带领下,才有快速成长的。
    所以,还是要有mentor带才会有成长。


    我想我的问题,在于最开始的时候,并不十分听mentor的话,觉得自己的想法也是对的。当时,mentor也比较忙,顾不上盯我的进度,所以,成长相对较慢。


    后来,领导分配一个强力的mentor,盯着我必须做他让我做的,我才停下自己的,做他让我做的事情,这才使我进一步快速成长起来。


    想想即便现在,也还是有一点点技术人员的清高,孤傲和单纯。同时,思路也被限制在了技术的范围内。
    也许这就是阻碍我加速进步的拦路虎吧。


    来到这门课,也是希望从作者大佬的文章中,得到一些指点,有所成长,有所突破。
    展开

    作者回复: 这门课的内容就是把我做mentor以及管理者的经验输出,你就把我当作你的虚拟mentor :)

    1
    2
  • 2020-12-13
    入职后公司领导变动和晋升规则变动了三次,每次都跟晋升擦肩而过,一直停留在P5,但实际工作内容已经偏向带领团队开发。直接领导(也没有权限提任谁晋升)让我不要在意晋升,提升自己能力才是关键。后续如果跳槽,新公司会关心我以前的职级么?
    展开

    作者回复: 首先跳槽的时候新公司肯定会参考你以前的职级的,但不是绝对直接平移,还要看面试表现。

    另外,你现在就偏向带团队是一件很危险的事情,对你的后续职业发展有很大负面影响,建议你首先专注专业能力提升。

    1
  • 2020-12-13
    急求PPT技巧,21号就要讲了。这周末能发吗?求救
    展开

    作者回复: 来不及了,时间这么紧,最好的方法是让你的主管给你安排预答辩,即:找几个高级别的同事来模拟当你的评委,在会议室按照流程完整的答辩一次。

    1
  • 2020-12-17
    半路入行,现而立之年,工作认真,能力一般,不服输想在编程行业走的更远,看这篇文章的时候已经碎片化时间系统学习一个月了,未来也会坚持下去。从大厂来了leader一段时间了,他表面笑嘻嘻也打招呼,分配任务都是边边角角,有机会还给穿小鞋。希望我的虚拟mentor给个中肯的建议。
    展开

    作者回复: 我建议你把你的想法跟主管交流一下,例如你觉得分配给你的任务没什么难度,你可以直接说想承担更大的责任,听听他怎么说,也许他只是因为刚来,还不熟悉你,并不一定是故意为难你。

    当然,如果你经过一段时间相处后还是觉得他就是故意为难你,那你可能要考虑换岗甚至换工作了

  • 2020-12-16
    老师,毕业两年还是p5,进到新公司不到一年。
    因为是银行,所以好像晋升的流程卡年限卡的很死。 虽然可以有大量的时间去学习提升自己,但是好像看到的前途有些渺茫。想让老师给一个建议。是沉淀一下自己跳槽去大厂。还是适应现在的模式,在银行发展下去。那个更好。
    展开

    作者回复: 年轻的时候还是要多多拼,成长机会更重要

  • 2020-12-12
    对新人来说,怎么应对361呢?
    展开

    作者回复: 1. 主动一些,至少表现的主动一些
    2. 熟悉团队各种规则,避免踩坑
    3. 多向导师请教

  • 2020-12-12
    个人感觉,5的同学能相对独立“主动”的完整一个项目,基本就能升了

    作者回复: 能升就已经是6的水平了,6就是独立自主的项目能手

  • 2020-12-12
    基础是和工作任务相关的基础,而不是整个计算机行业的基础

    这句话很受用,学的东西要用上才能扎实掌握。

    但完全跟着工作任务走就有“偏科”的问题,因为工用不上或者说工作任务难易程度不一,用的知识浅完成工作任务就完了深挖没动力了。加之没导师指点,非常容易迷茫。
    希望老师能根据您多年指导他人晋级的经验在本文及后续文章里再添加一些指导能容——比如,就后端P5这个级别(忽略工作内容差异)应该掌握的通用技术基础及掌握程度,让没导师有追求的同学们能有个自学参考,谢谢!
    展开

    作者回复: 忽略工作内容差异这句话是不成立的,如果一定要按照这句话来套的话,那就比较虚了,你可以按照下面这个维度去填充:
    1)编程语言
    2)工作环境:各类工具,例如git/maven等
    3)运行环境:操作系统(ios/Linux等)、依赖的系统、平台、第三方
    4)基础技术:网络、操作系统原理、设计模式、算法与数据结构、计算机组成原理的部分内容(主要是CPU/内存/磁盘)

  • 2020-12-11
    急求写ppt技巧
    展开

    作者回复: 12月下旬

  • 其实我的很多想法跟极客时间上的讲师是一样的,华仔你的一些想法不谋而合,比如学习方法这块,我也是这么想的,但很多时候也只是想过,却没有实践过,或者实践一段时间便放弃了😭,这大概这就是我与华仔最大的差距吧,我现在才发现,坚持是多么难能可贵的品质,同时也是很多人缺乏的,见过太多这样的人了!
    展开

    作者回复: 知行合一才行

  • 2020-12-11
    急求 P6,P6+的攻略
    展开

    作者回复: 马上就来了……

×
拖拽到此处
图片将完成下载