如果你想做汽车开发,请先看看这篇。
汽车行业是一个很复杂的行业,说它复杂,一辆汽车从计划,生产、到最后卖出到消费者的手上,涉及到方方面面,对资金、人力、时间等要求很高。
如果你是一个萌新,没有汽车背景,也不是汽车专业出身,刚刚接触到这个行业的时候,大量的专业的术语从你的领导和同事嘴里出来的时候,会让你怀疑人生,甚至是 “十万个为什么” 的代表。
当你着手进行开发的时候,你也会面临几个重要的问题:
大量的汽车专用开发工具
汽车的一些代码开发功能开发及测试,需要使用专业的软件工具,需要自己重新花时间去学习,部分工具由于价格昂贵等原因,资源十分有限,实践机会并不多,对能力要求很高,对使用的效率要求会更高。
复杂的软件架构
软件的开发架构会比较复杂,往往不是一个人可以完成的,涉及到集成、调试等多人配合,牵一发而动全身,涉及到执行功能、通信等方方面面,往往很难锁定出问题具体位置。
汽车基础知识不了解
这个主要涉及到整车开发的流程,对于项目术语的了解:骡车、OTS、SOP等,还要一些开发项目中涉及到一些汽车技术:通信、诊断、Bootloader等等。这个不仅关系到代码开发,在实际中,与客户的交流过程中,如果没有汽车行业基础知识做背景,是很实现到交流目的的。
信息资料的匮乏
开发涉及的芯片及软件,都是汽车专属的资料,资料反馈其实非常匮乏,可能没有相似的公开经验可以获取,在开发过程中如果遇到问题,通过搜索,几乎很少可以得到相关经验。
出差及加班问题
对汽车的行业不熟悉,加上信息的不透明,效率会有所下降,若遇上项目周期紧张,加班是不可避免的,只能增加时长去解决问题,“熬” 问题成了家常便饭。
我不怕花时间,但我不喜欢时间花的毫无意义,如何才能快速蜕变,我会针对这几个,给出我的一些小建议:
大量的汽车专用开发工具 — 多问、多用、多找人
工具的使用,建议针对实际开发的过程中,请教别人,针对项目实际的一个小案例,简单演示,若记不住,可以多练习,或者干脆录下视频,写下来,这样可以不用一直麻烦别人重复演示,若我要测试一个CAN通信功能,用到测试工具,那么首先,我得知道,公司常用的工具是什么,比如是CANoe,那么我下面要完成的流程:利用 CANoe 工具 测试 CAN通信收发,明确这一目标,那么你就可以请教别人,如何在CANoe里面搭建一个测试环境,配置的步骤,一步一步,先可以保存好教学版的工程,然后再自己尝试重新建立,一定要会自己建立,不能只依赖别人留下的模板,这样永远无法适应多种测试环境。
还有开发工具中的许多功能,可以花时间留意一下,比如IDE,很多公司的IDE调试环境其实非常丰富,要充分利用提供的各种调试窗口及插件,来提高自己的开发效率,与其一直等待搜索问题,不如自己利用好工具,排查问题。
复杂的软件架构 — 从熟悉的方向入手,用问题来理解架构
一开始,不要试图了解全部,这样会让自己走入一个巨大的知识迷宫。面对一个大型的软件架构,可以先从自己熟悉的一个小模块开始着手去做,软件是分层次的,也是迭代的,在验证功能的过程中,会反馈出很多问题,根据问题列表,在解决问题的时候,问一下自己,为什么?为什么会出现这个bug,我该如何解决它,在排查的过程中,你就已经开始拆解这个架构了,在遇到问题时,不要着急去把它 “拿下” ,而是要先按照解决逻辑,利用调试工具,逐渐缩小范围,锁定问题源,对架构越熟悉,解决问题往往越快速、越准确,这是一个相互促进的过程。
汽车基础知识不了解 — 有意识的搜集、谈论,从无感到有感
汽车一些资讯,最新技术的走向,整车厂的动向,整个行业的发展情况,身处这个行业,一定努力去关注,不了解是不熟悉,还有就是无感,这种无感无疑会阻碍你的行业积累,要积极关注一些行业信息,主动和人聊一聊相关的话题,私下也要多看看一些汽车的发展史等,才能为自己聊天增加可能性。若是想了解汽车发展历史,可以推荐看看《汽车百年》的纪录片,对汽车的一些历史增进了解。
信息资料的匮乏 — 回归问题本身,咨询专业人员
开发过程中遇到的问题很多,数不清有多少次,认为这个问题解决不了,回过头来看,最后都得到了解决。汽车行业看起来,已经朝互联网行业靠拢,但资料还是相对封闭的,这样就导致圈子更加封闭,使用人数减少,有时候涉及项目保密问题,更能有更少人愿意线上分享实际项目案例。那么当遇到难解的问题怎么办呢?
首先要明确问题归属范围,比如驱动开发,那么芯片手册及芯片厂商是最好的咨询对象,工具类,相关的书籍、论文以及原厂家支持,都是很好的选择方向,当我们遇到问题的时候,总是想自己搞定所有,碍于自信心,碍于面子,消耗大量精力和时间,最后搞得精疲力尽,却没有结果。
学会寻求帮助,是一个快速而有效的方式。但需要注意的是,前提需要学会:清晰的描述问题,如何提问是一个需要探索的过程。这里我给出一个模板参考:
1)先说问题 —— 结果:xx功能失效
2)解释过程 —— 你要实现xx功能,但现实结果是xx。
3)分析过程 —— 做了xx操作,尝试了xx方案,结果。
出差及加班问题
这个不止是汽车行业了,是大部分行业都会面对的问题,这里面我的建议就是提高效率,不做毫无意义的佛系尝试,还有一点,锻炼身体,加班和出差,对体能是个考验,每天哪怕碎片时间去锻炼,也会让自己保持一个好状态,摆脱低迷,精神焕发。
汽车行业也许不是薪资最红火的行业,我也不劝你加入,但若你身在其中,正经历迷茫与不安,不妨耐着性子看看这篇文章,要是我的建议能给你一点启发,那这就是意义了。
版权声明: 本文为 InfoQ 作者【水滴】的原创文章。
原文链接:【http://xie.infoq.cn/article/23101d7ed07c994325462ff2d】。文章转载请联系作者。
评论 (1 条评论)