• 嵌入式行业入行6年的一点小感想


    从18年毕业到现在已经工作6年了。

    熟悉招聘的人都知道,对于工作年限来说,工作开始的前3年是一个分水岭,3~5年是一个分水岭,5~10年又是一个分水岭。10年以上又是一个分水岭......

    我曾经以工作第3年为一个节点,做过一些小小的总结;现在又是3年了,我想借此机会简单概括一下这些年(21年到~24年)的一些收获和变化。后续我想我可能还是会在3年以后再写总结。

    职场生涯

    离开大公司

    在YY的这2年里,不说顺风顺水,但是得益于好的工作习惯和学习方法,我在解决一些常见的技术问题已经花不了多少时间了。

    如果没有什么其他原因,YY其实很适合干到退休;但考虑到未来的发展,哪怕领导们比较看好我,我也并没有长期待下去。

    人总要有危机感,我在YY的后期,总会想起这些问题:

    • 如果公司突然把你炒掉,按你现在的能力,和外面同龄人相比,你的技术还有竞争力吗?

    • 你在这里做得好,是依仗了什么?是你的能力吗?是你的运气吗?还是说只是依赖于平台?

    再加上想和当时的女朋友(现在的老婆)在广州发展,后面就走了。

    还好,我很欣慰,我走的时候,带的新人已经可以独当一面了;而我分享给部门的技术文档时不时还有人会看;也算是为部门发光发热了。

    林子大了,什么鸟都有;我离职以后,有时候还听组内的前同事在吐槽新来的工程师水分太高,情商不够。

    可能这就是大公司唯一的缺点吧。

    再进小公司

    机缘巧合

    从YY离开是源于一次“无心插柳柳成荫”的面试:

    为了自己的能力不被倒挂,我会有每半年准备面试的习惯。当时看到一家小公司,想着拿来练练手,打磨面试熟练度,就答应面试了,有过在小公司的经历,我是不太愿意再去小公司的。

    但因为刚好时间不凑巧,约了几次都没有成功。但在当时面试官三番五次的邀请下,我赴约了。

    和他们聊了以后,面试官(技术总监)看我能力不错,还懂一些技术管理、项目管理,所以一顿“画饼”之下和热情邀请之下,面试了一个上午,当场就给了我Offer。

    如果不是当时面试官的热情邀请以及相信他们未来发展的无限潜力,我可能就不会入职现在的这家公司。因为他们公司的规模特别小,条件也很一般。

    反过来说,要是我们想和其他人争取什么,哪怕条件没有别人好也没有关系,先放低自己的姿态,让别人相信我们是潜力股,就有机会能够成功。因为我就是这样子被他们打动的。

    国产化的那些事

    因为有在小公司工作的经历,所以我也明白:如果在小公司工作,但却没有过硬的能力,那么做什么起来就会很难受,因为很难有良好的资源来支持你,天塌下来得自己撑着。

    从入职到现在,我所做的所有工作都是围绕产品来的;我负责的方面比以前广了,我从一名Linux驱动工程师,“扩散”了传统意义上的软件工程师(单片机c开发,应用c/c++开发,Linux驱动c开发),除了不搞Web,啥都做。

    其实这也是趋势,硬件开始模块化,软件也开始配置化(业务化):

    除了芯片原厂的BSP工程之外,产业开发的上下游都会往配置化(业务化)靠拢;甚至说他们已经把框架做得特别好了,有时候你连API都不需要调用,只需要按照你的使用场景,填入不同的配置就可以了(高通/展讯展锐就是一个典型的例子)。

    需要我做BSP的工作并不多,我做完驱动开发就开始做产品的有关软件,好在我还是会看Linux内核框架,对大型软件的架构已经有“心理表征”,同时我对Python、C++也有积累,也没有在技术上遇到什么困难的问题。

    真正难到我的,是对国产化平台的使用;有些国产化平台,BUG不多,但是一发现就是致命问题,因为指标达不到要求。

    我们就有过采用福州的某个平台做MIPI高分辨率多路相机方案,结果MIPI的性能指标达不到他们宣传;不单是我们这么说,我们接触过的相机厂家也有对这个平台供应商类似的吐槽。后面我们换回我们熟悉的海思,就没有这个问题了。

    还有一次:某国产化红外相机在低温冷启动的时候,功耗超过规格书的说明,而我们硬件设计留下的冗余兜不住这种负载;导致所有的红外相机工作异常;为此,我们花了很多时间在排查,甚至打算改硬件,后面是我看到大家这么忙碌地在反复确定相机的工作状态,突发奇想,用逐级控电的方法,降低了瞬时负载最大值,幸运地规避了这个问题。

    其实这些情况在我看来都是可以理解的,因为大家都知道,国产化之路任重道远,有点什么小毛病都是正常的,大家把问题抛出来,多方积极推进,生态就会越来越成熟可靠。

    最让我感到无奈的,并不是这些国产化方案的问题,而是,有些国产化平台属于垄断地位,你不用它就满足不了要求;有问题它非不配合改进,而且还反过来摆出一副高高在上的姿态。

    其实我很担心这样子的厂商,因为“弱小和无知从来不是生存的障碍,傲慢才是”,我很担心这些厂商因为过于傲慢,一旦有新的后起之秀追赶,可能就会因为这种态度而摔大跟头。

    管理上遇到挫折

    其实从工作的第2年开始我就开始了解一些管理上的知识了,当时是偏向于做“知识管理”,用来培养自己的工作习惯和学习方法。

    而对于“团队管理”、“项目管理”我当时并没有多去了解,因为这些东西会有专门的人(“PM”或者“SPM”)去做,如果我太早丢掉技术积累,重点学习做管理的话,可能会得不偿失(因为很多搞技术的人会“文人相轻”,如果你没有足够的技术水平,很难推动他们)

    但现在不一样了,公司规模小,属于“百废俱兴”的建设阶段,如果能够将管理运用在实际的工作中,对于后续的发展会很有帮助。

    当我拿出我的管理体系以后,领导非常重视,甚至拉了当时其他工程师一起分享我的成果。但因为我对公司的工作流程不够了解,很多看起来很美好的设想,具体实施起来非常困难。

    在那个时候我才明白:

    • 在没有管理习惯的土壤中,想培养出管理习惯的花朵,一定要有人一直浇水(坚持那些条例);不然就很容易遇到,做得好好的事情,就会慢慢溃散(就像是“代码腐化”一样)。

    • 管理是动态的学问,不是靠静态的纸上谈兵就可以覆盖的;尤其是小公司,很多管理风格是跟着老板(或者大领导)走的。我想,这也是为啥“成功无法复制”,因为每个架构内的资源,流程、决策风格都不一样,生搬硬套是行不通的。

    后面我没有继续使用,而是默默学习,观察思考公司的情况,不着急提出方案。

    感想

    技术不是万能的

    我还记得很早以前一直坚持“技术是公司最核心的东西”,但随着职业生涯的发展,我发现其实并不是这样子的。因为撇开“高精尖”的产品不说,很多公司做的东西很多都是同质化的——你能做的,别人可能也行;而最大的区别是你的客户认不认可你们公司的产品。如果客户不认可你,你自己觉得做得再好也很委屈。

    技术是很容易被代替的,这也是很多公司能够靠人力就堆出产品来的一个原因。因为,对于我们搞技术的人来说,我们可以保持成就感,但最好不要轻易流露出优越感:攻关了项目难点以后,可以有成就感(自己暗自开心),但不要轻易地表现自己有多了不起一样,因为当你表现出一种邀功的姿态,可能就会遭受挫折。

    按《舍不得看完的中国史》里面的话来说:“恩要等着他人主动报,千万别去要!如果你对某人有大恩义,千万要闭紧嘴,并争取忘掉此事,否则你很可能会遇到奇祸。千百年来,无不如此。做好人,要积阴德。”

    没有什么人是不可代替的,只是做技术的人代替起来稍微成本高一些罢了。不要太在意自己拥有的技术,还得继续学习,永远谦虚。

    也不要太拘泥于专业技术,我在参加面试的时候,很多面试官所表现出来的气质都有一个共性:博览群书,以此来丰富自己的方法论。

    正确的工作心态

    很多人都说“不要把情绪带到工作里”,我想和大家分享一下我是怎么做到的。

    工作上的情绪可能是来自于各方的压力,各种压力都在提醒我们“你还有事情没完成”;焦虑感随之而来,情绪就容易不受控制了。

    在职场里面,不少人做事情的时候,心里想的都是“一定要把事情完成”。其实这样子的想法很危险,容易带来下列的问题:

    • 要么就是“以结果为导向”——不计代价,只顾完成,没有闲余空间来为未来准备一些冗余,到时候出了问题又得急急忙忙加班改BUG
    • 要么就是“压垮自己”——加班加点为了一个不可能完成的任务浪费时间,没有及时让领导知道你面临的困境,他们也就不能够给你协调的资源来帮你解决这个问题。

    那应该怎么想?要这样子想:“如果这个事情最后出了什么差错,我有没有什么手段来避免背锅”——并不是为了甩锅,工作还是得做,但心态会随之变得轻松:

    • 首先,我们不会再过度关注结果,会考虑到未来的一些情况,并提前留有后手,避免到时候出了问题猝不及防,不会为了解决问题而敷衍问题;

    • 其次,以这样子的心态来做事情,如果是实在完不成,让领导尽早知道你已经尽全力了,现在需要其他的手段介入,来帮你解决问题。哪怕是到时候就算是完不成,大家也不会怪你“你怎么不早点把这个问题爆出来”,因为你能做的都做了,再背锅就是名不言顺了。

    找到自己的定位

    我曾经有过一次面试,面试官问我:“你觉得在职场里面,什么能力最重要?”

    我愣了一下,只见他不紧不慢地说“定位能力最重要。打个比方,对于一个项目上的难题,只要定位了,那就离解决不远了。”

    我被他这么一指点,心中暗道,“原来如此,是啊,做研发最关键的不就是【发现项目中的问题,解决项目中的问题】吗?”

    我对当时那场面试并没有记得多少细节,只依稀还记得他问过我的这个问题。时至今日有时候还在想这个问题,慢慢领悟。

    很多人可能一辈子都未曾真正了解自己:弄不清楚自己的欲望、看不透自己的潜力、不知道自己在社会的角色是咋样的,在工作岗位上应该怎么做……

    人在社会里面是有多个角色的。你也许是某个家庭的长子,是你孩子的父母,是公司的某位领导,是客户的得力支持者……

    搞清楚自己的定位一个很重要的概念就是“保持边界感”:不要在脱离某个社会角色的环境下继续坚持你的社会角色,也不要硬要做能力之外的事情,容易头破血流。

    比方说,不要把工作上的委屈不满和压力向无辜的人(例如家庭)发泄,也不要因为家里的事情影响到工作。

    其次,明确自己的职责范围和权限边界。我自己和客户沟通的时候,有时客户不愿意配合我的工作。这个时候我不会因为客户的为难而焦虑,因为我自己知道我就是一个干实事的人,在我能力范围之外的事情必须由高瞻远瞩的领导来负责决策和协调。等领导和客户那边的高层沟通以后,客户再怎么不愿意配合,事情就会慢慢推进。

    关于“定位”的学问还有很多,我还在慢慢摸索,希望可以争取早日靠近和孔子一样的境界:“三十而立,四十而不惑,五十二知天命”。

    感谢你花时间读完,非常感谢!

  • 相关阅读:
    SpringBoot如何优雅的输出异常信息?
    【力扣hot100】day1
    卫星通信系统按照工作轨道分类
    Python多种方法实现九九乘法表
    解析java中的文件字节输出流
    nginx 代理本地静态页面之后,静态资源加载失败
    python二次开发CATIA:新建Part文档
    视频编解码器H.264和H265有什么区别?
    Python爬虫技术在SEO优化中的关键应用和最佳实践
    OpenGL进阶(一)之帧缓冲FrameBuffer
  • 原文地址:https://www.cnblogs.com/schips/p/18272440/summary_of_6th_anniversary_about_career