之前在某论坛贴出了我前一篇吐槽文章《职业劝退师的苦笑:嵌入式老干饭人们,饭碗保住了》后,在讨论区有一个小伙伴的评论让我印象深刻,他说:
我看完了全文,这是傻孩子对自己思想转变的写照。 傻孩子以前坚持“裸机”思维,但是随着趋势和年纪变化,发现裸机又累又没前途了。 文章都是楼主发自肺腑的真言,如果看客想继续从事嵌入式,确实应该考虑一下提升自己的软件综合水平了,别捧着“裸机”当神圣。 傻孩子充当“职业劝退师”,正是自己对工作迷茫甚至开始反感的自然流露;如今不当劝退师,说明找到了新的心里支持,恭喜楼主!
怎么说呢?我看了这样的评论真是又好气又好笑——原来在一部分小伙伴看来“裸机思维”就是要坚持裸机一辈子啊?然而这是一个根本性的误解:
首先,这是一种过度解读——35岁有没有危机跟用不用裸机没啥关系。坚持裸机思维的精髓在于:更多的东西要自己深入思考,而不是无脑的单纯依赖现成的工具(比如RTOS或者Linux)。
当然,嵌入式行业的收入金字塔也不能说全然跟用什么平台无关,比如用Linux的就比做RTOS的收入更高一点——这只不过是因为Linux运行环境所需芯片资源更为丰富,能做参与的业务能承载服务内容更多,与产业中更为流行的业务模型(比如IoT Edge以及所谓的终端智能)这类依托于互联网和云服务业务更为接近——讲得更为贴切就是距离“高溢价”“高价值总量”的业务更近而已。
总的来说,一个行业的价值可以从以下几个粗略的角度来看: 1、对应产业在世界产业分工中的位置 2、对应公司所处产业链的位置高低(生态位高低) 3、产品的生命周期(生命迭代周期越短,变化越高,加班越夸张) 4、产品所附属和服务的商业模式或者产业本身是否多金(比如嵌入式里的汽车电子就很多金) ——这是个多维度的问题,但总的逻辑只要没变——嵌入式就是压低成本来服务社会的——这个行业总的趋势就没变。
其次,我这里要给坚持逻辑思维的人一个明确的思路:裸机思维的本质就是要成为架构师——在你们眼中,所有平台,Linux、RTOS还有各类开源协议栈只不过是一些具有特定优点和缺点的工具;在你眼中,所有东西都是以其“本质”的形态存在,当你自己设计架构的时候,知道什么位置用什么工具——有好用的就直接用,没有好用的就看看能不能改造一个(因为知道本质,所以知道怎么改造)——万一真没有合适的,就自己造一个。
裸机思维不是说一辈子坚持用裸机开发,而是以一种追本溯源的心态去学习、解构所有的计算机基础模型:既能正确的理解同类的工具(比如一堆RTOS,什么时候选谁,如何快速找到本质相同的部分设计抽象层等等),也能正确的发挥对应工具的最大功用,更不用说魔改了。
最后,在职业规划上,坚持裸机思维的人,应该尽可能往那些能给你提供施展空间的地方去——比如,整个产业链的更上游。从相反的方向来看:越靠近产业链的下游,快速开发应用的能力越重要,强调的是如何快速的使用工具完成开发——也许更擅具体产品的业务逻辑,但也逐渐丧失了锻炼架构师基础能力的机会——陷入在不同项目里穷忙最后自身提升非常有限的“产品开发经验陷阱”。如果有机会往产业上游走——比如最差最差,方案提供公司(而不是用方案进行应用开发的公司),再比如,原厂(提供很多基础服务和架构),再比如协议栈开发公司……这都是你发挥逻辑思维的场所。
拥有裸机思维的人,35岁以上真正悲剧的原因是——我们现在所处的公司(以及公司所处的生态位)是否真的需要我们的能力——因为很多时候,对公司来说我们的能力是over-qualified,是溢出的不需要的能力——而找不到更适合自己发挥的环境——因为国内普遍嵌入式行业在世界分工中位置较低,所以这类岗位也较为稀缺——这才是问题所在。当一大批老工程师成长起来的时候,整个行业是否能提供与之匹配的较高级的职位,是问题关键——我之所以说现在有机会,是因为看到中国在做产业升级,所以对应的机会因为政治经济的因素(而不是纯市场因素——纯市场因素就彻底玩完了)被有意的创造了出来——这才是机遇的本质。
我如愿以偿的成为一个架构师——既知道如何有效的使用各类RTOS,也知道必要的时候如何从零构建一个协议栈——最近的arm-2d就是我的一个作品。裸机思维成长之路就是架构师的修炼方式(之一),是一个追求计算机基础理论在实践中如何应用的探索性方向。如果错误的把在裸机中开发当成裸机思维本身……真是有点让人哭笑不得。