为什么微软的职位级别从50多级开始,而不是从像1这样的合理数字开始?
摘要
本文解释了为什么微软的职位级别从59级开始,追溯历史变化以提高晋升粒度并避免与旧系统的编号冲突。
<p>那些不熟悉微软职位级别术语的人可能会非常困惑,为什么入门级全职软件工程职位被描述为59级,随着晋升数字增加。为什么从59开始?为什么不从像正常人那样的1开始?</p>
<p>级别数字曾经从1开始。</p>
<p>在过去,应届毕业生通常从10级或11级开始,高级职位是12级,进阶职位是13级,少数精英在14级及以上。</p>
<p>那个系统的问题是粒度非常差。注意,如果你以进阶毕业生身份从11级开始,只需两次晋升就几乎达到了实际限制。因此,每个级别包含大量开发人员,涵盖了该级别内广泛的技能范围。要晋升一级很困难,因为达到比如说13级所需的技能集远高于12级。你必须先在你的(非常庞大的)级别中爬到顶端,然后才能发展必要的技能以跃升到下一级。这种缓慢的晋升率导致了普遍的挫败感。</p>
<p>为了解决这些问题,每个旧的职业级别被划分为两个或三个新的职业级别,使得从一个级别移动到下一级是更小的一步(因此更容易实现),并且同一级别的员工在才能上更接近。</p>
<p>很好。我们使级别更窄,因此使员工更容易获得晋升,创造更容易实现的职业里程碑并提高士气。但应该如何为新级别编号呢?</p>
<p>如果新级别也从1开始计数,那么当人们谈论在“11级”时,你将有一段困惑期,必须检查他们是在说“旧11级”还是“新11级”。如果你遇到一份文件说“我们可能需要两个11级开发人员来完成这个项目”,你必须检查文件上的日期以确定他们指的是旧11级还是新11级。而检查日期可能还不够,因为文件可能是在旧级别系统下撰写的,然后有人对文件的无关部分进行了修改,所以最后修改日期现在在级别更改之后,但文件中的文本仍然在谈论旧级别。</p>
<p>解决方案是为新级别分配不与旧级别数字重叠的数字。(<a title="What happened to DirectX 4?" href="https://devblogs.microsoft.com/oldnewthing/20040122-00/?p=40963">听起来熟悉</a>?)不仅如此,新级别的数字甚至与旧级别数字完全不重叠。因为如果新级别从20开始,人们看到20会不确定这指的是“新20级”还是“某个超级天才的旧20级,我不知道级别居然有这么高。”</p>
<p>因此,新级别从高达40开始,旧10级大致对应新59级。</p>
<p>可以说,编号系统避免了向后兼容性问题。</p>
<p>旧的宽泛级别仍然在新系统中以两种方式体现。一是在职位头衔上。新级别不是为每个新的窄级别编造新头衔,而是继承了它们被拆分出的旧级别的头衔。所以旧10级拆分为新59级和60级,但59级和60级拥有相同的头衔。旧级别体现的另一种方式是在晋升率上:相对而言,晋升到拥有新职位头衔的级别比晋升到同一职位头衔内的更高级别需要更大程度的出色表现。在内部,我们称共享职位头衔的级别为<i>带</i>。晋升到同一职位头衔的更高级别是<i>带内晋升</i>,而晋升到新职位头衔则是<i>跨带晋升</i>。</p>
<p><b>额外讨论</b>:如果新大学毕业生以旧10级或新59级入职,那么较低的1-9级(新40-58级)是用来做什么的?级别系统旨在覆盖所有可能的微软员工,因此较低级别用于暑期实习生和临时员工等,以及非工程职位如接待员或邮件递送。</p>
<p>文章<a href="https://devblogs.microsoft.com/oldnewthing/20260915-00/?p=112700">为什么微软的职位级别从50多级开始,而不是从像1这样的合理数字开始?</a>最初发表在<a href="https://devblogs.microsoft.com/oldnewthing">The Old New Thing</a>上。</p>
查看缓存全文
缓存时间: 2026/09/17 02:21
# 为什么微软的职级从59这样高的数字开始,而不是从像1这样合理的数字开始? - 新事物旧解
来源:https://devblogs.microsoft.com/oldnewthing/20260915-00?p=112700
不熟悉微软职级体系的人可能会很困惑,为什么入门级全职软件工程师职位被描述为第59级,而随着晋升,数字会变得越来越大。为什么从59开始?为什么不像正常人那样从1开始呢?
职级数字以前确实是从小的数字开始的。
在过去,刚毕业的大学生通常从第10级或第11级开始,资深职位是第12级,高级职位是第13级,只有极少数精英能达到第14级或更高。
那个体系的问题在于,它的粒度太粗。注意,如果你以高级大学毕业生的身份从11级入职,只需再晋升两级,基本上就触及实际的上限了。结果,每个级别都包含了大量的开发者,涵盖了该级别内广泛的能力范围。晋升到下一级非常困难,因为成为,比如说,13级所需的能力水平远高于12级。你必须首先在自己(非常庞大的)级别中努力达到顶端,然后才能培养出晋升到下一级所需的能力。这种缓慢的晋升速度造成了普遍的挫败感。
为了解决这些问题,每个旧的职业级别被划分成了两到三个新的职业级别,这样从一级到下一级的跨度更小(因此更容易实现),同时同一个级别内的员工在能力上也更接近。
很好。我们缩窄了级别,从而让员工更容易获得晋升,创造了更容易实现的职业里程碑,并提高了士气。但是,新级别应该如何编号呢?
如果新级别也从1开始计数,那么当人们谈论“11级”时,就会有一段混乱期,你必须确认他们说的是“旧11级”还是“新11级”。如果你遇到一份文档写着“这个项目我们可能需要两名11级开发者”,你就得查看文档的日期,以确定他们指的是旧11级还是新11级。而查看日期可能还不够,因为文档可能是在旧级别体系下撰写的,然后有人修改了文档中不相关的部分,所以最后的修改日期看起来是在级别变更之后,但文档内容仍在谈论旧级别。
解决方案是为新级别分配不会与旧级别数字重叠的编号。(听起来熟悉吗?[链接])不仅如此,新级别的编号甚至与旧级别数字毫无相似之处。因为如果新级别从20开始,人们看到“20”时,可能不确定这指的是“新的20级”还是“某个超级天才才达到的旧20级,我都不知道级别能有这么高”。
因此,新级别从一个较高的数字40开始,而旧的10级大致对应新的59级。
可以说,这种编号方式避免了向后兼容的问题。
旧的宽泛级别在新体系中仍有两个方面的体现。一是职位头衔。新体系没有为每个新划分的窄级别创造新头衔,而是继承了其分裂出来的旧级别的头衔。所以旧的10级分裂成了新的59级和60级,但59级和60级的职位头衔相同。旧级别体系的另一个体现在晋升速度上:相对而言,晋升到一个具有新职位头衔的级别,比在同一职位头衔内晋升到更高级别,需要表现出更显著的能力。在内部,我们把共享同一职位头衔的级别称为一个*职带*。在同一职带内晋升到更高级别称为*带内晋升*,而晋升到新职位头衔则称为*跨带晋升*。
**额外话题**:如果应届毕业生以旧的10级,即新的59级入职,那么更低的1-9级(新的40-58级)是用来做什么的?职级体系的设计旨在覆盖所有可能的微软员工,因此较低的级别用于暑期实习生和临时员工,以及像前台接待或邮件递送这样的非工程职位。
### 分类
### 话题
## 作者
Raymond Chen
Raymond参与Windows的演进已有30多年。2003年,他创办了一个名为“新事物旧解”的网站,其受欢迎程度远超他最疯狂的想象,这一发展至今仍让他感到毛骨悚然。该网站后来催生了一本书,恰巧也名为《新事物旧解》(Addison Wesley 2007)。他偶尔会出现在Windows开发文档的Twitter账号上,讲述一些毫无实用信息的故事。
相似文章
为什么初级技术招聘没有只是下降,而是发生了结构性转变
这篇文章探讨了初级技术招聘中的结构性变化,AI工具让较小的高级团队能够处理日常任务,从而减少了雇佣初级人员的动机,并可能削弱未来的人才输送管道。
我1994年微软实习面试中的四道编程题(2023)
2023年的一篇回顾性博客文章,讲述了作者在1994年微软实习面试中遇到的四道编程题,分享了题目和背景。
@PackBropagated: 真正的职场乱象,故事一:我的一位在 MAANG 大厂的朋友在第一次晋升申请后的 2.5 年内未能从 SWE2 晋升为 Senior …
一个关于软件工程师因同事的不安全感和高级别员工的片面反馈而在 MAANG 大厂晋升受阻的轶事,凸显了职场政治问题。
微软发现AI代币成本高于人类
微软将于6月30日前取消其体验与设备部门(Windows、M365、Teams、Surface工程师)中的大部分Claude Code许可证,转而使用GitHub Copilot CLI,以实现财年成本管控和工具统一。
那次我微软面试失败的经历
一位软件工程师回忆起2015年微软电话面试失败的经历,包括一个脑筋急转弯的困境以及关于面试中诚实的重要性所吸取的教训。