作者maurlice (飞进我的天空)
看板Soft_Job
标题Re: [请益] 韧体工程师如何转纯软
时间Tue May 22 22:27:35 2018
我第一份工作是做embedded system app开发,而且还是FAE,那时候其实有很长一段
时间我对韧体以及软体的认知是很模糊的,讲白一点、搞不清楚自己是韧体或者软体
工程师。
有FAE就有RD,然後公司的RD还分2个部门,driver&app,三个部门,都在写code,而
且还是同一份code,明明是linux base的OS,却是使用windows系统安装Cygwin来
编译产出firmware,一个bin档,那麽多人同心协力就为了那一个bin file,更前面
则还有ic设计、SE的付出。
後来我区分韧体和软体的方式是...写code的时候会用到三用电表就是韧体,完全用
不到的话,即便你会放一个device做开发,我认为依然还是软体。
你说纯软没有device吗?那台电脑主机不算吗?写出来的软体总归是要有个归宿的,
难不成纯软写出来的东西就不用在实体机器跑吗?呵呵。
至於怎麽转软体~~其实我曾经失败过一次、成功一半一次,先说失败那次好了、那
次是进到一家新创、超惨烈的,做得很累,即便把公司要求的功能开发出来,还是
被嫌弃对核心程式的掌握度太低(其实完全没有掌握),也许是我不够强,也许是刚
好小朋友出身把我搞得很累,总之"被离职後"有松了一口气的感觉。
再讲成功一半那次好了,因为刚好做过video streaming,对这方面有些心得,刚好
有家蛮知名的网路公司想要做streaming,所以就进去开发研究streaming,後来搞了
一支streaming service出来,弄出来後不久就离职了,因为我有其它事想做。
其实那时若是一直做下去,应该就成功转到纯软了。
这边先回答标题的问题,这是我自己的心得,就是你要掌握一样类似video streaming
的东西,刚好纯软也需要,然後又比较专精一点的技能,而不是一般做纯软耳熟能详
的node.js,php,css,android app之类的东西,那些东西一个做韧体的去搞,肯定要降
价的,而且还不一定能hold住。
韧体虽然鲜少用到听起来很厉害的演算法、资料结构,但并不意味着它很容易。
举例来说吧:
韧体应该会常遇到,程式逻辑没错,但结果就是不对,又或者...根本没结果。
查了半天才发现,原来是讯号不够乾净或者有杂讯干扰了,这部份软硬体整合的能力
是纯软无法想像,也是习惯写纯软的人难以适应的一个门槛。
所以软韧体有各自的难处、各自的门槛、各自的优缺点,单纯从薪水上去考量其实很
不智,因为机会留给准备好的人,即便现在纯软价格真心不错,水涨船高,但是...
你准备好了吗?没准备好,等你降价进去到变得很强时薪水还是现在的水准吗?
然後韧体就没有需求了吗?大数据以及AI时代来临,数据从哪儿来?除了手机外只要
是人类使用的东西都可以是数据来源,说到这儿不就又扯上IOT吗?万物相连大数据及
AI才有搞头。等到大数据和AI发展到一个程度会不会又发现~~~数据从哪儿来?
还不是要把电器都加上sensor再连上网,那这些东西谁做?
前面有人提到韧体的程式相对简单,其实也不否认这件事就是了,大致上来说的确是
这样,但是前阵子我因为开发需要使用了气压计和acc以及gyr,这当中用了旋转矩阵
、filter、以及一些融合算法,坦白说...会用不会算啊(羞愧),目前只复习了旋转矩
阵,至於filter以及融合算法的数学还在研究中。也许是我太弱吧、我觉得这些数学
真心不容易哩,我连看都看不懂,只是参照说明去调整和使用而已,虽然效果不错,
但还是颇心虚,那个filter最难搞,有人说根本就是一阶互补滤波,但是我也用过一
阶互补滤波,也推算过,怎麽看怎麽不像,反正就是还有的研究就是了。
说了一堆、是感想也是发表看法,顺便骗点p币。
谢谢收看。
※ 引述《johnlee2772 (彩虹呢?)》之铭言:
: 大家好,小弟目前两个工作经验,基本上都是在chip maker里面作韧体工程师
: 用到都是语法不难,不需要高度演算的C/C++,最近萌生转行的念头,想要稍微往软体方
: 面走,进则变成chip maker的software engineer,虽然也是不太纯软,但是要能够找到
: 纯软的工作好像背景并不是那麽强大。
: 只修过两门C语言和一堂差点被当掉的JAVA EE学生有机会跳过去纯软吗?
: 或者有没有甚麽coding 证照或者类似东西可以稍微提高"获得面试门票"的机会呢?
: 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 101.8.193.47
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1526999257.A.046.html
※ 编辑: maurlice (101.8.193.47), 05/22/2018 22:28:43
1F:推 x246libra: 推 程式逻辑没错,但结果就是不对,又或者..没结果 05/22 22:55
2F:→ x246libra: 厌烦硬体方面的问题 05/22 22:55
3F:推 popcool: 没错,我就是肚烂明明逻辑没错演算没错结果干扰造成答案 05/23 02:10
4F:→ popcool: 错的这种鸟事,才直接降价转纯软 05/23 02:10
5F:→ cha122977: 厌倦硬体方面的问题+1 解一个bug开关机好几次都在等 05/23 03:07
6F:推 yamakazi: 在做IMU哦 kalman filter上网找code就好 不用自己写 05/23 08:32
7F:→ yamakazi: 一阶互补很弱 不要用 05/23 08:32
9F:→ yamakazi: 这我做的六轴demo 用的是madgwick演算法 网路上有code 05/23 08:34
10F:→ yamakazi: 比kalman简单 05/23 08:34
11F:推 yamakazi: gyro的drift记得要先cal掉 05/23 08:36
12F:→ maurlice: 其实我已经搞定了,只是我想学习用到的数学。 05/23 08:39
13F:→ maurlice: 一阶互补滤波虽然效果差强人意,但是有成本考量的时候他 05/23 08:40
14F:→ maurlice: 还颇好用的。 05/23 08:40
15F:→ maurlice: 还是很谢谢大大的分享 05/23 08:40
16F:推 yamakazi: 恩恩 成本的确是个问题 我这是nordic52832 如果用8051单 05/23 09:04
17F:→ yamakazi: 晶片可能就跑不动 05/23 09:04
18F:推 yamakazi: 我没记错的话Madgwick只算四元数 比起kalman的矩阵运算 05/23 09:06
19F:→ yamakazi: 运算量少很多 05/23 09:06
20F:→ maurlice: 平衡车只用一阶互补滤波,再用gx、ay、az算角度运算量超 05/23 09:25
21F:→ maurlice: 省。但在细微处的效果超差。4轴机就一定不能用一阶互补 05/23 09:25
22F:→ maurlice: 了。 05/23 09:25
23F:→ pttworld: 用作业系统相对位置区分 05/23 10:25
24F:推 ohmypig: 推,因为讯号不好超烦 05/23 10:35
25F:推 splasky: 韧体常常会有很诡异的bug 05/23 11:13
26F:→ chris1281: 哈哈,说的真好,韧体真的常遇到鬼打墙的事情 05/23 12:27
27F:→ ykjiang: 而且讯号太弱的话,有仪器可能也量不到你预期的 05/23 13:01
28F:推 superpai: 听起来写韧体跟写CSS很像呢 05/23 14:34
29F:→ littlebau: 听起来很厉害 05/24 22:10
30F:推 hotrain13: 韧体就是要处理软体bug又要排除硬体上的bug 05/26 08:41
31F:推 cobrasgo: 叫新鲜人当FAE的九成五是烂公司 05/26 20:30