毕业几年LINUX 驱动研发工作心得分享

               ——一个正在认识世界的顽童,好奇心驱使着,不知疲倦地探索。。

几家知名企业从事研发工作,虽然还不算长,但从GPS到电信设备,再到处理器开发,谈谈自己对工作的几点思考和建议吧:


1.基础能力很重要。不像上层软件,能够大量写代码熟悉一些基础算法等就可以了。驱动的话,要能读懂操作系统内核里复杂代码,知道如何使用用户态和内核API,熟悉驱动协议,要善于看英文手册,当然自己的芯片问起来很方便,但通常用的都是其他公司的,因此要能够快速从英文手册中找到自己需要的信息,此外最好能看懂信号,基本原理图。因此,除了好的C语言水平外,要有很强的学习能力,英语阅读能力,一定的硬件知识基础。

2.找到相关模块定位和解决问题的关键手段。对于驱动开发来说,快速学习能力是很重要,在前期很多部分(如协议)不甚清楚的时候,快速寻找手段尤为重要,看手册,网上搜,和相关转交交流,找fae都是可以的。

3.分享精神,坚持写文档。记得有个师傅曾说有个人写代码写的很复杂以显示自己编程水平之牛逼,而且从不写文档,于是没有人能看懂他的代码,或者说没人愿意去看,但结果一段时间后自己都不知道自己写的什么东西,这个看不懂的代码将来能拿来干嘛?与其让自己的代码让人看不懂,或者说不好用直接丢掉,不如简单方便别人,大家都来扩展一把,你的程序就活了,说不定你跟着流芳百世了。

4.打而不踢球。开发一个特性,我给B说,按照需求你这边有个问题,你改一下,B知道我痛点回应我相关地方没有完全按照协议来一直被诟病,别一拍脑袋就叫别人改,我知道自己这边改起来太麻烦说少废话丫的哥提问题单给你让你改,B怒我没同意你提了就给打回去,我X.............在SOC开发上常有互相推是硬件软件还是逻辑问题,这个时候要以大局为重,自己分析下如果真的是自己这边不甚合理,不要因为麻烦,就踢给别人然后干等,一荣俱荣一岁俱损,大家都是一条绳的蚂蚱,产品成功奖金多多才是王道。但当你有足够证据的时候一定要发挥你辩论会上的口才,狠狠地给对方打回过去,有时候大家就是在这反复的对攻中摸透产品的设计的,经验积累也慢慢沉淀下来。

5.人人为我,我为人人。当队伍中有人需要帮助,果断帮他,不要觉得他不如你就不耐烦地讲,那样还不如别帮。再协助别人解决问题的同时,也为项目作出了贡献,自己能力得到积累还会赢得别人的赞赏,何乐而不为,如果同等重要就先放放自己的吧。


6.人是模仿的高手。黑猩猩可以抽烟,骑自行车,打手枪,前段时间看到日本有只猩猩还自己牵着狗到集市买几样东西坐车去主人外婆家拜访。兽犹如此,人何以堪。项目中总有表现很好的个人,不管是做事还是做人上,好的方法你都可以学习。比方开会时讲话的方式语速等等,解决问题时采用的方法。。。


7。争做好用的接口。如果有人说他买iphone是因为觉得有面子,我穿阿迪王运动鞋向后转45度鄙视之。iphone之所以在西方颇受推崇是因为他好用体验好,据说任何操作可以在3步之内完成,据说三岁小孩可以入手,据说可以放在事业线中间。。。你想取得成就,就先要满足别人,做一个团队需要你的顺手工具,方便团队的同时,你也有了价值。有时候多想一点怎么能让其他人更容易。。如果你做到了,恭喜你,乔布斯当初就是这么想的。


8.不以物喜,不以己悲。这是说给别人听的,对自己不能直接用的,人是感情动物,总有心情低谷的时候,当主管挑剔你的工作,当同事讲话对你不尊重,当食堂的大叔给你打荤菜的最后一刻手有意无意地抖了一下。学学阿Q吧,比上不足比下有余,每个人的一生从时空角度来说都是随机的,也许你在这个空里牛逼的不行,另一个里却是个废柴,不管再牛,你再高山流水也是历史长河中的一个渣,你可以理解这个叫命运,尽情享受这份属于你的运气,享受这独一无二传奇的一生。还没到那个境界,但哥容易满足,心中拜拜春哥,自己就又有无穷的力量,所谓笑傲江湖嘛哈哈哈。。。扯远了,一个词乐活。


9.好刚使在刀刃上。人的精力是有限的,知识是无限的,有追求自然是好事,但夸父逐日累死自己没结果,不管换什么工作,最好让技能有积累,彼此支撑有联系,形成体系,等你成为砖家时,解决问题更霸气,拍问题的时候有底气。






一不小心啰嗦了这么多,奋斗吧少年~

猜你喜欢

转载自blog.csdn.net/Chris_xi/article/details/8734584