职场坐标系的全貌
这是一个三维的坐标系:行业 vs 企业 vs 岗位。
于是有了最后一个指标轴,「行业」。
工程师为例子的行业背景
其他职业如财务,人力资源,销售等等本质上也是如此,在此用「工程师」作为例子类比。
如果你的工程师经历逐渐超过5年以上,那么你一定在至少一个行业有了比较深的接触。比如医疗,物流,金融市场,零售银行,支付等。 即使是产品软件而非企业软件,你的产品也是为了解决客户或用户的实际问题,对应的也存在一个依托的行业。比如建筑,制图,信息安全,项目管理等等。
IT 技术在企业里的价值,总是服务于企业商业模式中的价值流里的,脱离了商业模式的技术难以独善其身。
这才是为什么一个企业需要工程师们写代码来造系统。 虽然在软件研发的分工里,有产品或需求分析师帮你翻译业务需求,但如果程序员不懂业务,一定会有这些坑等在后面:
- 你可能无法准确的对数据建模,业务发展后系统经常要底层改造数据割接
- 你的系统关键设计灵活度差,无法有效响应业务开展后发生的变化(当然,你可以骂业务甲方傻逼需求老改
- 你系统的非功能需求可能和企业行业要求相差甚远(性能,安全,合规设计),总有人要背锅承担额外成本。
理论上同样的功能有无数种系统实现,但每个行业的软件,其实都带着自己行业的「基因」,有在这个行业内的「最佳实践」。
这些代码以外的知识,决定了你的代码和实际业务之间的距离。 技术决定你入职的下限,但行业和领域内的业务视角决定了你的发展上限。
行业和行业完全不同
不同行业,有完全不同的特征。
有的行业,非常朝阳,机会多,但同时可能变数也大,也更辛苦。
有的行业,非常稳定,不卷,但确实也挣不到什么钱。
有的行业,可能很……夕阳。
因此,也许大家都是程序员,但身处不同的行业,生活状态也可能完全不同。因此选行业实际上才是职场择业最重要的一环。
我所在的传统行业,就属于不卷,钱也不多的稳定形态的行业。
竞争力的全貌
实际上,你的竞争力和你的职场定位一样,也是由这三个维度组成的:行业背景 vs 企业背景 vs 岗位资历。
- 行业背景代表了你的业务能力,对行业隐藏问题的理解和经验。
- 企业背景代表了这个企业在行业里能分到的红利
- 岗位资历代表了你能胜任的工作技能要求
千万不要小看了「行业背景」对资深岗位的重要性,而频繁的更换行业选择工作,显然也是在浪费自己某一个维度本可以积累下的能力和经验。
而事实上,大部分岗位的需要的专业能力的上限并不高,但行业背景要求却随着资历的职级的升高越来越高。
对大部分工作 10 年以上的朋友来说,跨行业跳槽都可能相当于让自己放弃了一大块行业竞争力:隔行如隔山真不是一句玩笑话。
因为我在金融行业工作了十多年,这个行业究竟需要什么样的技术人才,这个行业所谓的「行业背景」究竟是什么,可能我不会在这个专栏里写太多,有机会专题聊聊。
写在第一部分结束
截止这部分聊完了身在职场里我觉得重要的宏观的问题,作为打工的人究竟怎么从「上帝视角」来看待自己。
因为不对人在职场里的价值有一个更清晰的定位,如何能知道我们在职场里,追求什么「性价比」最高呢?