从车辆转行程序员的两年:你想转的路,我已历经艰辛

这两年来,我从一个C语言都不熟练的车辆菜鸟,历经高压学习和工作,一步步到现在负责软件多个模块的开发和维护。我从实习,争取机遇中不停地学习和有所调整,最终不负于自己的选择。

希望把我的学习经历,选择规划回顾一下。一方面是系统的梳理一下转行过程,另一方面可以陈述下转行的技巧。

关注我的公众号的新人,大多都是车辆工程专业的在校生,因为就业行情问题,他们期望从传统的研发,制造技术转行做自动驾驶、车联网等前瞻性方向。然而,这些技能要求与传统的车辆工程,机械关系不大,反而是自动化、计算机等专业更加容易入门。

我的转行第一年

也是我入职第一年,从学习转向职场,最大的感受就是车规级ECU开发的流程和步骤如此繁杂。

在学校时,也了解过ECU的开发,片面的认为在单片机上写写代码,实现想要的功能即可。然而,入职后发现车规级ECU的开发,远不止靠coding这么简单。

目前行业内,汽车ECU的开发遵循“V”模型开发,这是在学校我们这个专业很难接触到的。此外,代码写完、功能实现并不算是完成工作,接下来还要进行静态代码检查和动态代码检查,一是确保代码符合MISR C开发规范,二是规避单片机运行过程中因为中断和共享变量导致的bug。

幸运的是,我入职初期便在团队里接触了项目,项目正在处理静态代码和动态代码检查的流程中。一般来说,在研发过程中,这种事情比较简单适合实习生,于是就分配我处理这个事情。但当接到这个任务时,即欢喜又倍感压力,毕竟我的C语言水平不高,甚至有些代码我都看不懂是什么意思。

既然任务在身,我只能顶着压力去完成,为了按时按质完成,我花一个月的时间阅读了几本C语言的书籍,并且系统的学习了两个网课,至此我的C语言才算不拖工作后腿。当然,拼尽学习也让我提前结束了试用期,这个基础对我日后发展给予了很大的鼓舞。

平日里,我还是比较关注公司职位动态的,希望能真正去做产品核心开发。

我偶然听说团队中另一个项目中功能安全模块人员不足。凭着一贯的敏感,我上网搜索了功能安全的相关信息。在了解功能安全后,我唯一的想法是伴随未来汽车电气化和智能化的趋势,功能安全在开发中所占的比重将会越来越大,从中我看到了这个职业的发展前景。

因此,基于平时的表现,我还是蛮自信的主动向leader争取希望能够承担一部分功能安全的研发工作,最终得到了这个机会。

之后我在团队中与资深工程师一起负责功能安全模块,直到项目最终SOP。做功能安全的大半年,我参加了一些ISO26262的相关培训,并且通过实战和培训的结合学到了很多功能安全方面的知识。

目前,据我了解,大学里不论是本科、硕士甚至博士朋友接触功能安全方面的人都不多。然而,随着智能网联装机量提升,整车厂现在越来越重视功能安全,这会是一个极好的发展方向。当然,你可以去猎聘搜索“功能安全”,看看各公司开出的薪资就能明白我的意思了。

转行第二年

由于近两年汽车行业的发展问题,项目SOP后就再没有接到新的,为了均衡人员产能,leader又问我是否有意向转向车联网部门做开发。

当时leader给我两个选择:(1)基于AutoSAR架构做MCU开发;(2)基于高通平台做linux C开发。

由于我刚进公司参与的项目就是基于AutoSAR架构的MCU软件开发,相对是熟悉AutoSAR架构。然而,MCU开发与硬件耦合度太高,需要软件开发人员具备扎实的硬件知识,这是我还是比较担心的。

我觉得自己还是主动去了解。公司和领导本身就是我们的资源,考虑到这方面,于是我找车联网部门的leader咨询了基于高通平台的linux C的开发情况,并且着重问了linux C开发中是否涉及很多硬件知识。

当得知车联网部门中linux C开发主要涉及计算机网络方面知识,并且涉及多线程和多进程开发,同时不需要太多硬件开发知识时,我很不争气的心动了...

此外,我自己也上网搜索了linux在嵌入式开发中的应用。linux广泛应用于消费电子产品中,而且AutoSAR也推出了新型的Adaptive AutoSAR架构,兼容linux内核。种种证据能够说明,linux系统在未来汽车电子设备中占据的比例将会越来越大。

从此,我开始压榨自己的时间,全心踏入linux学习之路。

由于在此之前我从未接触过linux系统,也并不懂计算机网络的知识,仅仅是一个会用C语言写代码的码农。为了能够快速,我买了书和网课,也从B站找了一些学习视频。每天在地铁上、午休、下班回家都一直在恶补工作中需要用到的知识。

那段时间很累,但在学习linux的过程中,我顺带把操作系统、计算机组成原理和计算机网络全部学习了一遍。由于长时间的积累,某一天在工作中突然顿悟了,编程语言带给我的困难不复存在了。虽说现在在工作中也时常遇到困难,但不会再像无头苍蝇一样不知所措。

学习linux一年多,我的心得是linux才是真正适合程序员学习的操作系统。学习linux的过程中,你会学到计算机原理、操作系统、编译原理和多线程多进程通信等知识。这些知识能够协助日常软件开发,同时使你能够从更高的层级来看待软件开发。

总结

如果你现在有志于转向汽车电子,并从事软件开发工作。那么我有以下建议:


(1)考取研究生并选择相关课题(至少211)


(2)利用空闲时间,学习C语言和python(python作为工具语言,能够提升工作效率)


(3)争取找到研究方向前沿的导师,并参与到相关项目中(这决定你第一份工作的方向,重要)


(4)锻炼自己快速学习和处理问题的能力(重中之重)


(5)对软件开发有兴趣(最最重要)

Note: 网络上已经铺天盖地的转行代码方向,很多人还在犹豫,但早就是优势,越年轻、转行的试错成本越低。

最后免费分享给大家一份Python全套学习资料,包含视频、源码,课件,希望能帮到那些不满现状,想提升自己却又没有方向的朋友。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。在这里插入图片描述

二、Python必备开发工具

在这里插入图片描述

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。 在这里插入图片描述在这里插入图片描述

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。 在这里插入图片描述

五、Python练习题

检查学习结果。 在这里插入图片描述

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。 在这里插入图片描述在这里插入图片描述

这份完整版的Python全套学习资料已经打包好,需要的小伙伴可以戳下方链接免费领取

读者福利《Python全套学习资料》,戳这里免费领取!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值