Re: [请益] 韧体工程师如何选择方向?

楼主: Lixe (极光)   2016-03-11 04:21:51
※ 引述《classic500ml (TB)》之铭言:
: 大家好
: 小弟最近想换工作,不过实在不清楚大环境方向,
: 想寻求各位前辈指点迷津!!先谢谢大家了orz!!
: 我的背景:
: 国立科大,电子电机相关科系毕业(不是资工)。
: 退伍后担任软件工程师三年多(没换过工作),
: 专长C/C++,全部靠估狗,边上班边学,三年做了好几个嵌入式系统案子。
: 公司是消费性电子产业,所以产品都是要透过GUI才能让user使用。
: 工作分配是我跟一家外包两个人写,各忙各案子这样,
: 简单来说:
: 外包的案子,外包全部自己搞定。
: 我的案子,只有GUI我能自己搞定,其他像是 linux porting, driver, firmware等等,
: 都要靠外包商搞定。
: 我在这些非GUI部分中,对于"原理、基本概念、大方向"大致也都了解,但是都没有实际
: 做过。
: =================================
: 写了三年多GUI,觉得在这样下去不行了,
: 所以想转换方向,目前是想找韧体工程师,
: 但是打开104真的是眼花撩乱,
: 想请问:
: 1. 假设我以"外包商的能力"当目标,我该找什么样的 "产业or工作内容" 呢?
: P.S.
: 至少我目前觉得外包商能力很强,
: 从linux移植到arm上,到driver,firmware,GUI等等,
: 都可以一条龙全部搞定,
: 公司专案内容也可以说包山包海吧,
: 就我目前有经历过的就有:
: USB storage、SD、LCD、touch panel、WIFI、ethernet等等,
: 以上也是外包一个人搞定。
: 2. 或者是说我应该只朝一个方向做深入发展呢?
: 看了104职位名称:
: EX: 影像处理IC韧体设计工程师、蓝芽韧体设计工程师、Nand Flash韧体设计,等等一堆
: 。
: 每个都是很专业领域,很担心产业选下去,路越来越窄...
: 抱歉文长,然后再次谢谢大家!!
小弟是人在美国系统厂工作的韧体工程师,想分享一些经验。
我个人认为做韧体主要三个能力:
1. C 语言。
语法或指标只是基本,给你一包 open source 你要能在短时间看懂
且进一步修改。进一步开发环境、toolchain、gdb、make 都是基
本功。
2. OS / architecture
对 OS 的观念掌握度高吗?paging、virtual memory、file system
等都会用到。常见的状况是给你一个破破的文件要你写个 driver,
找 ODM 没用因为他们也不会,找原厂没用因为没给钱 XD。
ARM 的架构也要熟。kernel 出现 stack dump 如何去找到凶手等。
各种稀奇古怪的 bug 到底跟硬件有关或无关也要靠你厘清,还是有人
code 乱写导致同步烂掉,各种状况考验你的基本功力。
3. 耐心与学习
在没足够的文件下要让 HW 动起来,try & error 少不了。issue 太广
,只要是底层都你的,自然必须一直学习。
做 porting 只是韧体工程师的一部分,更进一步是对 Linux kernel 与对
系统的掌握度。东西太多都是遇到 issue 以后边学边解。但只要基本功扎实
基本上都能学的起来也能做的出来。
因此个人建议将基础功打好,从 C 的指标,简单的 device 与 kernel
module 开始。良好的观念可以让你面对复杂的问题时有个头绪。公司也要
慎选,尽量找老板会认真面对 issue 并想解决的地方工作。小弟在台工作时,
共事过的ODM 韧体工程师,强的不是没有,只是非常的少,摆烂的居多,还有
摆老的。毕竟对这些公司而言,卖的是硬件,软件只是验证硬件用的,
在这种地方公司自然不重视软件,也学不到东西。
而美国的就业市场,小弟的观察是韧体工程师相对蓝海,大概太黑手想做的
人不多,机会也多。mobile app 或 front end 等反而竞争激烈。另外高薪
伴随着高税与其他状况,这就是别的故事了,但可以确的定是做 10 年就退
休的人是凤毛麟角。
作者: essay1029 (610)   2016-03-11 06:25:00
谢谢分享!!!!!
作者: bab7171   2016-03-11 06:53:00
感谢
作者: csfgsj (切割对半)   2016-03-11 09:22:00
@lensuper 救星来了
作者: doranako (真爱无限)   2016-03-11 09:59:00
文中第2点是打好地基,我觉得最值得下苦工
作者: csfgsj (切割对半)   2016-03-11 10:05:00
第2点非本科系比较欠缺,是比较吃力的部分有的OS书还用JAVA写,真是匪夷所思,这样的书也在出
作者: chuegou (chuegou)   2016-03-11 10:39:00
非本科,最大罩门在OS架构+1
作者: badyy (nick)   2016-03-11 11:33:00
原厂的sdk/bsp基本功能上都是好的!
作者: littlebau (小宝)   2016-03-11 12:07:00
谢谢分享
作者: lensuper (莫三)   2016-03-11 19:04:00
我查过linkedin,美国纯软职缺比韧体多很多很多很多很多有看到一篇文章,最后也是放弃了韧体与IC设计,改走应用层,参考: http://pinky-monkey.blogspot.tw/2009/04/fahttp://pinky-monkey.blogspot.tw/2009/04/facebook.html, 最后是html,连结太长了。
作者: amatt   2016-03-11 19:11:00
简单几点道出这行的血泪,光是加强C这点就是5年以上跑不掉,再加上kernel, 10年是基本,除非每年关war room.打错,是每天
作者: lensuper (莫三)   2016-03-11 19:14:00
养成时间长,薪水不会比纯软多,台湾除外。练功不易,杂事繁多,薪水不高
作者: king19880326 (OK的啦~我都可以接受)   2016-03-11 23:51:00
那篇blog是因为他是做通讯的,通讯的phd工作机会很少。你去看他在Facebook做的是infra,ㄧ点也不应用X层好吗==
作者: classic500ml (TB)   2016-03-12 18:24:00
三楼XD
作者: jimmytzeng (jimmytseng)   2016-03-12 20:15:00
推~
作者: lensuper (莫三)   2016-03-14 18:46:00
通讯也只是一个EE的分支而已,通讯也是可以修IC设计走网络通讯的也需要修资料结构,算法的,跟CS一样我并不会觉得那位大大是因为做通讯的关系而很难找程式的工作,主要是论文的内容还有就是篇底层的软件职缺本来就少少少

Links booklink

Contact Us: admin [ a t ] ucptt.com