把遊戲這二個字去掉的話,這二個領域都正隨著 IoT 興起起飛。
Linux porting 可大可小,有的工作是跟 vendor 買 solution (包括 SDK) 回來,
專門負責所謂的 build code,外加改改 (pin) config 之類的。
Linux porting 最重要的是很會 debug。
可以不是很懂怎麼設計架大型 software 架構,
但一樣要很會看 code, error message,熟悉各種 debugging tool。
寫 driver 和一般所說的 Linux porting 不一樣。
當然把 Windows 上的 driver 搬到 Linux 上重寫,也可以叫做 port,
不過一般會說這叫寫 driver。
Linux kernel tuning 這我沒有涉獵,推測比較簡單的是改 kernel config。
深入一點可能就像 PTT server,找出 bottleneck,打 patch 進 kernel。
以上共通點是都需要熟悉 OS/Linux 原理,
至少要對從軟、硬體交界以上的知識有深入的理解。
寫韌體跟 Linux porting 可以分開來看,
現在一般說的 firmware 是指 SoC 上的 software,
基本上不知道什麼是 Linux 也沒有問題,就是寫程式。
所謂的 low-level/embedded system engineer 並不會很侷限,
一般人普遍直覺這領域比較「硬 (難)」,
因此競爭反而沒有 front end/back end 激烈。
加上存在實際需求,且有機會一個人負責整個 device 端的軟體 (從 kernel 開始),
所以也很好 promote 自己,身價不會低。
領域知名 position:各種開發板背後的工程師
領域知名 project:Docker
至於對於 full-stack developer 來說,雖然 stack 的定義包含 OS,
但一般是從一個穩定的 platform 以上開始著墨。
所以日後若是想要走 full-stack engineer,會有更深厚的基礎知識,
硬體對你來說不會像對其他人而言是個黑盒子一樣。
Server 端需要的知識也很廣,不論是 DevOps 或 back end,都不用耽心受到侷限。
領域知名 case:AWS
※ 引述《a5334x (max)》之銘言:
: 資工新鮮人 有爬過職缺和文章 但還是對領域不太清楚
: 想請問 如果選擇遊戲server開發
: 以後的工作會不會就限制在遊戲server了
: (下份工作還是只能找遊戲server相關)
: 還是說該選擇台灣目前比較穩定的韌體類的Linux porting 嵌入式下手呢
: 想選一個對未來比較能累積自身價值的工作
: