做技术开发有两个好处:一是工资高,二是不用跟客户打交道。
这种工作看上去非常爽,上班就是拿到安排的事情,然后写代码完成后交付即可。没有太多的交流,不需要跟客户打交道讨价还价,也不需要跟供应商谈判,不需要做 PPT,也不用参加没完没了的会议,还能拿着比做其他岗位更多的工资,在外人看来就是神仙岗位。
但凡事都有两面性。
由于技术只是为公司服务的工具,公司想要的是业务的稳定,不会激进冒险选择用最新的技术迭代业务,你所研究的算法、花时间学的技术都很难派上用场。
久而久之,开发者就会被公司所「封装」:输入和输出的内容固化,技术能力没有得到精进,岗位职责使得每天高度相似的工作。趁头彻尾地成了一颗被打磨好的螺丝钉,作为人的价值逐步被抽离,变得更像是系统里面设定好的功能一样。
开发者不再是社会关系的总和,而是被装起来起的工具。
而越是功能性强的工具,商品属性就会越强。
商品属性就是说人跟货架上的商品一样,是被教育制度生产出来到市场上流通的。就如马克思在谈异化的时候说「劳动力成为商品,劳动人民降低为资本家的奴隶、只会劳动的机器的过程」。
我们买东西的时候都会带有很强的目的性,希望买到的商品能解决具体的问题。市场上流通的人跟商品在本质上没什么太大区别,都是在寻求双方需求的匹配程度,为买家提供更好的消费体验。
而这就引申出了,加入一家公司后,公司会以制度的方式来进一步提升消费满意度的管理策略,公司意在利润,而不是员工的发展。
前两天我翻了翻 BOSS 直聘,发现一个现象:现在的社招对于用人的要求非常细分,很明确地说了需要在特定细分领域中有几年的开发经验,能迅速了解业务上手工作。
在人的货架上,又出现了比商品更强、更细分的层次。他们打折标签和价格,比如:10年 Java 经验、8 年 WMS 经验、有着千万级高并发经验等等已经是千篇一律。
而那些无法被功能所定义的人,连商品都算不上。即使有着很多的知识产权和跨领域的项目经验,因为没有贴切的标签和功能描述,很难得到消费者的青睐。
从这个角度来看,开发者会走向一个越来越窄的道路,唯有加强自身的功能性才有着接下来扽职业道路。
从另一个角度来看,虽然商业催生了新的技术,但技术的发展早已脱离的商业的限制。从开发者自身的选择来看,如果是为了纯粹的技术方向,就很难积累下行业的经验;但如果深度地研究工作中的具体问题,就会难以融入到主流的技术环境。
就如《创新者的窘境》书中说的那样,并不是公司不愿意创新,而是公司使用旧技术的原因是要服务于老客户,而当新技术出现客户发现新技术的价值之后,就会抛弃低效的旧技术,用旧技术的公司也就面临倒闭的风险。
夹在夹缝中的开发者,所面临的结构性问题要远高于其他职业,也不会像律师/记者那样越老越香,社会仍旧是以人际关系的为重,
缺少社会资本的开发者
而在开发者窘境中,无论是哪个角度,所有人一直避而不谈的,而且最关键的因素就是公司。
公司决定了技术的选型,间接替你决定了未来几年的选择
被摆上了货架就意味着更强的绑定性。
此时存在一个割裂的场景:大学里教的、社会需要的与技术的迭代三者构成了完全不同的需求层次,相互构建起来独自闭环的场域。在学校里是一种体验,毕业后参与工作就会有很大的落差;在职场中习惯了出来自己做事,就发现自己与真实的技术层面早已脱钩。
说到底,技术人的所拥有的资本,就是自身的灵活性上面,可以嵌入到任意公司的拼图上面,提高公司业务的运转效率。那句「离了谁都一样」的话,就是在说人的功能性可被塑造,只是个成本问题。无论是技术管理还是一线开发,面对公司功能性的需要,就脱离不了被商品化的宿命。
也只有年轻的身体。计算机专业的火爆使得学校大规模扩招,不断输送到社会的的供给早已大于实际的需求,只有把年龄大的换下来给新人上去。对公司来说,技术只是实现业务的一种手段,公司的运作一切都是围绕着业务运转,哪个岗位缺人影响了业务,人手很快就会补充上。
然而,你却对业务的一无所知,以及社会关系的匮乏,以及岗位对人更加细分的要求,让离开公司的技术人真是难上加难。
人是一切关系的总和,代码不是、算法不是、高配的电脑也不是。