作者jimmytzeng (jimmytseng)
看板Soft_Job
標題Re: [請益] 請問為什麼純軟比韌體好玩?
時間Tue Jul 28 20:16:53 2020
※ 引述《lrvine (Irvine)》之銘言:
: 常常在這個板上逛的感覺是
: 普遍大家覺得韌體無聊 似乎純軟比較好玩?
: 我本身的背景主要是在 Linux kernel 但也有機會碰到 Android middleware 甚至更上
層
: 我覺得他們都是差不多的東西 就是寫code去執行一項任務(演算法)
: 所以想請問大家為什麼會覺得韌體無聊呢? 主因是?
嗚嗚嗚。我是從嵌入式系統轉換到寫純軟的過來人(非web那種純軟,是機器視覺跟工業
自動化)
應該這麼講:
走韌體路線,甚至是韌體技能點滿,你就是一個強大的存在,別人無法取代,也代表很容
易活在自己世界,因為你講出來的話別人聽不懂!!!!
導致你單打獨鬥,或者變成被PM或硬體工程師打壓的對象,因為你講出一大堆什麼stack
不夠, racing condition什麼的,然後硬體power sequence 導致系統初始化失敗,然後
原因要等原廠vendor回覆才能解,不然就是講那個pointer指到哪個pointer,register m
ap裡面在幹嘛,設進去沒反應,吧啦吧啦。
這些話大部分的PM聽不懂,他只會歸納成:你什麼時候可以解決完成。
另外韌體工程師的世界,幾乎很少標準化的術語,也幾乎很少種類的diagram可以描述,
所以每個工程師都有自己的術語存在。除非你討論的對象是跟你一樣強大的存在,否則對
方不知道你在講啥,工作起來很痛苦。
走純軟路線,是走團隊合作,有很多技巧可以協助團隊討論架構跟實作(design pattern
,object oriented programming...),也有很好的標準化方式來描述你的想法(UML, di
agram..) ,讓每個團隊成員可以清楚的知道自己負責的部分,並且如何跟團隊成員去介
接彼此所做的事情。
當有了彼此易懂的共同語言後,你就比較能夠清楚的表達自己遇到的難題在哪裡,讓團隊
來跟你一起想辦法解決。
我剛開始從韌體轉到純軟體,最大的痛苦就是
別人聽不懂我在講什麼,有些事情我認為很簡單,別人可不這麼認為。以及我沒辦法把一
件事情很清楚的表達出來,因為韌體很吃經驗,解決問題都是一個念頭閃過就知道怎麼處
理,導致長期都是跳躍式思考,無法完整的講出一件事情。
所以呀,你去比較看看純軟公司跟韌體公司(或硬體系統廠)出去聚會的照片,
純軟公司的工程師笑的多開呀,每個都穿的多帥,又有很多妹子溫暖整個畫面
而韌體公司的聚會,每個臉都臭的像什麼...
有空可以自己思考一下吧...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.217.136.118 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1595938615.A.CC2.html
1F:推 labbat: 硬體架構師認為uncached non-buffer non-combined post 07/28 20:25
2F:→ labbat: memory write可以out of order時,韌體設計師臉都綠了 07/28 20:26
3F:推 neo5277: 最近開始反過來 07/28 20:26
4F:→ cphe: 不認同,其實表達是一種需要學習的能力,你跟沒技術背景的人 07/28 20:41
5F:→ cphe: 描述一件事,就要用他能懂的方式來說明~就好比說很多人在做 07/28 20:41
6F:→ cphe: presentation貼一堆文字和source code上來報告一樣,都是沒 07/28 20:42
7F:→ cphe: 有意義的 07/28 20:42
8F:推 chuegou: 我不能跟新來的同事溝通一定是他太強了 07/28 20:46
9F:推 flysonics: 我還以為是韌體永遠要幫硬體擦屎才會臉這麼臭 XD 07/28 21:47
10F:→ shooter555: 拿到薪資一樣能笑的開心比較重要 07/28 22:26
11F:→ shooter555: 軟體就是要用這些名詞糊弄上面聽不懂的 把任何一個bu 07/28 22:28
12F:→ shooter555: g說的越複雜越好 07/28 22:28
13F:→ EPGo: 不認同,工程師的價值不只有掌握技能這麼簡單 07/28 23:29
14F:推 APTON: 共同語言真的很重要,不過我覺得很大的原因是很少公司會去 07/29 00:21
15F:→ APTON: 制定或定義共同語言來減少溝通成本 07/29 00:21
16F:→ kyushu: 認同4F,不過也認同韌體的做法大多都是非正常解 07/29 07:18
17F:→ BoXeX: 不太認同4F 我自己比較偏向軟體 溝通上也沒問題 但 07/29 08:06
18F:→ BoXeX: 如果哪天要我跟沒背景知識的人解釋底層的一些細節 我也不 07/29 08:06
19F:→ BoXeX: 覺得辦的到 07/29 08:06
20F:→ BoXeX: 不然如果你的溝通能力很強 你就能教會一個普通班級的小學 07/29 08:08
21F:→ BoXeX: 生微積分嗎 07/29 08:08
22F:推 b85040312: 溝通又不是教學,只是要讓對方懂得你在做什麼 07/29 08:12
23F:→ b85040312: 像是一些生活化的例子 07/29 08:13
24F:→ BoXeX: 好 不要教學 那你就能跳過細節 解釋你在解決微積分上的 07/29 08:23
25F:→ BoXeX: 一個錯誤算式嗎 07/29 08:24
26F:→ BoXeX: 跟別人說你到底做了什麼 07/29 08:24
27F:推 Dinowchang: 這是工作文化的問題,做韌體的公司普遍不重視軟體開 07/29 08:58
28F:→ Dinowchang: 發的流程和品質才會有這現象 07/29 08:58
29F:→ shooter555: 太細節的錯誤要解釋根本不可能 但一些常見的錯誤名詞 07/29 09:24
30F:→ shooter555: 講出來 對方聽不懂也會裝懂 race condition memleak之 07/29 09:25
31F:→ shooter555: 類 大概要說一些這種名詞來解釋 07/29 09:26
32F:→ shooter555: 當然對方最重要的一定是要你壓時間 但你解釋這麼多就 07/29 09:29
33F:→ shooter555: 就是為了芭樂拳 開長一點的時間才是目的 不是要給他懂 07/29 09:29
34F:推 popcool: 我懂你,我也是韌體轉純軟ios,有時候思考真的比較跳,要 07/29 12:39
35F:→ popcool: 很完整的描述我的思維給同事要很花時間 07/29 12:39
36F:推 lrvine: 的確現在純軟多半是run scrum比較少會有自己要擋PM壓時間 07/29 14:04
37F:→ lrvine: 的問題 韌體好像真的比較容易gating被壓deadline 07/29 14:05
38F:→ lrvine: 不過光"很多妹子溫暖整個畫面"這句話就說服我了... 07/29 14:05
39F:→ lrvine: 不過我之前的韌體工作也是run scrum就是了 07/29 14:08
40F:→ Dinowchang: 韌體通常有實際產品,時程排好後大概都動不了。所以 07/29 14:53
41F:→ Dinowchang: 要跟PM談時間很難談得動 07/29 14:53
42F:→ Kayusumi: 軟韌體常常在幫硬體擦屎 07/29 23:54
43F:→ Dinowchang: 跟舊code的坑比起來,硬體問題其實不多 07/30 09:22
44F:→ shooter555: 舊code坑很大 但硬體問題是要挖坑給自己跳 07/30 15:50
45F:→ fgkor123: 硬體坑不大的一定是成熟產品,要看公司到哪個階段... 08/01 08:11
46F:→ forget2009: 韌體做久了就會覺得純軟邏輯問題很low因為都是自己沒 08/02 01:26
47F:→ forget2009: 想清楚造成的低級錯誤 08/02 01:26