「我想轉職做軟體業,是不是該{條件A}跟{條件B}...?」
一直覺得這種提問有個很基本的誤會。
所謂「軟體業」不是單一個業界,而是一堆用上同樣技能的不同業界。
不會有哪個放眼全台軟體業皆通用的標準或必要條件。
好比說 Excel,他是個非常強大的萬能工具
- 你可以用它畫座位表跟參加者名冊
- 你可以用它記帳甚至做財報(如果公司夠小)
- 你可以用它連接 SQL Server 拉資料做產品生產報表跟生產計畫
- 你可以用它做問題單管理系統,還附精美統計圖表(日本人真的厲害)
但如果有人問說「要怎麼學 Excel 才能符合業界需要」
相信做上面四個工作的人給出的答案都會不一樣
所以回到你問的外部單位職前訓練(資策會、勞工局、巨匠...)
- 有的公司愛死這種職前訓練,只要面試你能說人話就會錄取你
- 有的公司喜歡看到你做過什麼小東西(有些職前訓練會帶著你做)
- 有的公司只要你穿你爸的員工外套去就會錄取,不在意你的職前訓練
- 有的公司會在面試的時候用技術問題把你電到天上,不在意你的職前訓練
(以參加過的面試來說,appworks 出來的人在第二點做得相當不錯)
職前訓練對不同公司的加分效果不同
而且上面幾間公司的員工到其他幾間不一定能有(也不一定不會有)好的表現
業界很大,徵人條件不包含「會寫程式」的軟體公司也是存在的,薪水也不差
面試是一種自我行銷,不同的行銷方式或包裝能吸引到不同的客人
職訓單位會吸引到...喜歡職訓單位的客人
如果課程有含媒合,那就是先把客人過濾一輪
職訓不是唯一的行銷手段,也不知道是不是最適合你的行銷手段
而且行銷跟實際工作也會不太一樣
====================
附帶一提,以泛用性技能來說,我認為最重要的技能是:
- 什麼都多懂一點的雜學力
- 快速用搜尋引擎找到文件並且能認真閱讀快速消化
這裡講的雜學力,有點像是這種感覺:
「會寫點 css 跟 js,隱約知道盡量不要讓網頁需要 reflow;大概知道
mysql db 的 index 實際上是 b-tree;大概可以想像 HTTP header
裡面有哪些東西;大概知道 huffman encoding 在幹嘛,甚至知道這
年頭一堆壓縮演算法都會用到它;隨手就能列出一堆雜湊演算法跟加密
演算法也知道什麼是 hash collision;對 jpeg 壓縮原理有點概念;
知道什麼是 ddos / injection / bufferoverflow;能說出瀏覽器網址列
按下 enter 後到看到頁面中間發生多少事情;知道快速統計數量有
Hyperloglog 可以用;知道怎麼幫介面挑顏色.....更多...更多...」
這些都是零碎的單點知識,每個知識單獨看都...不能幹嘛
但這種雜七雜八知識多到一定程度的時候,對於面對的各種問題都有能力
快速發現解決問題的方向
這種知識儲備很難量化,但什麼都知道一點的人解決問題的速度通常比較快
所謂的本科系最大的強處,除了上課內容本身就是一堆很深入的雜學以外
更重要的是泡在那個環境下,就算只是跟同學聊天也會聽到各類亂七八糟知識
讓孩子自然而然變成雜學大師
(這也是念名校最大的好處:在那個環境下自然而然會吃到一堆聰明人的口水)
但有這個環境是一回事,多的是在環境中什麼都沒吸收到的人。也有更多在非本科系
環境下成長茁壯的不像話的人(認識最強悍的 iOS 工程師是新聞系出身,而且或許
是本科系訓練的關係文件寫的超級好)
於是就會看到有人堅定地認為本科系很有用,有人認為不需要本科系
兩種說法都正確,面向不同
善用搜尋引擎(包含快速過濾無用資訊)也非常重要,有點像是雜學不放在腦袋裡
而是放在外部儲存裝置上,很大幅度影響工作產出能力
這裡就不多著墨了
------
BTW,本科學習的東西很有價值,但不是每個人的工作歷程都會感受到
而會感受的人又有不少是工作多年之後才明白,等後悔當年沒學好的時候
只能驀然回首我才發覺你已遠走,愛情像流水不會為誰停留...
--
https://xkcd.tw/
這裡翻譯某個關於浪漫、諷刺、數學、以及語言的漫畫
--