[心得] 文組轉職前端軟體工程師心得

作者: gobears5566 (golden bear 5566)   2020-11-28 20:43:40
網誌好讀版:https://studio1729.tech/2020/05/turning-swe/
大家好,我是 C。大學讀管理,在畢業後進到軟硬整合廠做供應鏈管理相關的工作。雖然
如願進到科技業,但開始工作以來一直覺得不開心,臺灣硬體製造以加班聞名,而我就職
的公司也不例外,從入職開始便常常加班到晚上八九點,回到家多半處於筋疲力盡的狀態
,只想躺在床上當爛泥。除此之外,因為生產時程需要跟著工廠走,又常常會遇到物料採
購的問題,多數的時候是處在壓力大的狀態。
這樣的生活久了,覺得人生好像除了工作還是只有工作;最終決定不能再讓自己這樣,於
是我開始利用週末的時間參與一些科技的社群,也在參加活動時因緣際會接觸到史丹佛大
學教授寫的《做自己生命設計師 Designing Your Life》這本書,也參加了相關的課程。
在書中有一項叫「奧德賽計畫」的工具,是要大家練習寫下三種截然不同的未來五年。三
個計畫沒有誰好誰壞沒有誰好誰壞,每個都是好計劃。其中,第一種人生規劃是目前做的
事 (現在的人生的延伸);第二種人生則是萬一事情生變,你會做的事;第三種人生是假
定錢不是問題,面子不是問題,你會做的事。
在寫下截然不同人生後,我問了問自己「假如真的那麼不喜歡現在的生活,那為何不試試
看過個從沒有想過有可能的人生? 大不了最差就是回到現在這樣」。因為這樣的想法,加
上朋友的鼓勵,我決定做一個以前完全不曾想過的職涯決定 — 轉職軟體工程師。
#為什麼是轉職工程師?
因為大學讀管理學院,是在傳統臺灣教育被歸類成「文組」的科系,所以即使在高中時數
學是拿手的科目,我也從沒認真覺得自己可以成為工程師。但在參加一些科技的社群後,
我很清楚地意識到我對工程思維很感興趣,也喜歡工程師務實解決問題的工作型態。
特別是做營運與管理類的工作,很多時候不是想法好就好,權力政治才是決定誰說話大聲
的關鍵。工作時常常因為覺得主管交派的方法不是最佳化,但反應了也沒辦法的無力感。
相比之下,工程是黑白分明,相對來說更靠實力說話的職位,是我更嚮往的。
除此之外,因為之前在臺灣傳統軟硬廠工作的生活實在讓人受不了,想要轉換、想要出國
到有更好品質的工作環境,是一直都種在心中的想法。而工程師的國際移動能力是相對其
他職位更好的,所以各種考量下,最終決定已轉軟體工程師為目標前進。
當然決定這個目標不代表一切就會自然到位,對於傳統文組生轉職軟體工程師之路最多人
會遇到的一個大難關 — 自我懷疑,也是我最開始的心魔。好在當時看到《工程師作家的
轉行人生》,看到粉絲團版主從讀創意寫作轉行成功的例子 (她還是在要養女兒的同時轉
行,真的無比佩服,推薦想轉工程師的人,一定要追蹤!),給了我許多的信心,也讓我
相信「我能做得到」,而能堅定地跨出第一步。
#如何開始第一步?
決定轉職後,我先上《工程師作家的轉行人生》推薦的 freeCodeCamp 上學習。
freeCodeCamp 是透過一個個小關卡,帶領你一步步學習最基本的網頁開發,包含 HTML、
CSS、JavaScript,由於是完全免費的,相當推薦還不確定要不要真的轉職的人,無成本
學習。除了 freeCodeCamp,有另一個很類似的網站是 Codecademy,介面比較美,但有部
分的學習內容要付費。
在最開始的階段,我常常在吃午餐或晚餐時,會順便看一些軟體工程師相關的 Youtube
影片,例如 Clément Mihailescu、TechLead、Code Drip 的影片。這些影片協助我更了
解軟體工程師的生態、各種名詞,例如前端是做什麼、後端是做什麼。因為不是太硬的技
術內容,但對初學者又算有知識含量,配飯還算剛剛好。
#有了初步認識後進一步學習
在 freeCodeCamp 的關卡都做完後,我進一步學習的路徑有分成兩個部分,一部分是全端
網頁開發 (後來我都集中在前端),以及基礎的電腦科學與運算思維。
全端網頁開發我有買過一個月的 Treehouse ($25 美元一個月的那個,不是 $199 美元
的 TechDegree),也有買《工程師作家的轉行人生》推薦在 Udemy 上的 Andrei
Neagoie:The Complete Web Developer in 2020: Zero to Mastery。
Treehouse 的優點是在一個月內可以內容看到飽 (除了全端網頁開發,也有演算法、資訊
安全等等不同主題),但相對地假如是在職的人,可能就沒那麼划算,因為下班後能看的
時間也不多。而 Udemy 則是買了課之後就能永久看。對於想要跨入全端網頁開發的新手
,我覺得 Udemy 的課已經非常足夠了,假如是在職的人,可能一個月也看不完一堂課。
Udemy 課程的另一個好處是老師很多,同個主題妳可以有很多不同老師,加上有三十天內
不滿意退費的機制,我覺得對初學者很友善。畢竟學程式這種艱澀的東西,找到頻率對的
老師很重要。雖然我一開始是看 Andrei 老師的課,但後來發現不太對頻率,所以改買了
另一個同樣在 Udemy 的 Angela Yu : The Complete 2020 Web Development Bootcamp
課程,就發現頻率很對。雖然兩個的內容差不多,但頻率對了就學得更順手。可能上面這
兩個都跟你頻率不對,但沒關係,Udemy 很多老師可以選,選適合的才是最重要的!
除了全端開發之外,我也看了哈佛大學的 CS50 課程,來打電腦科學與運算思維的基礎。
只能說實在太愛 CS50 的教學了,不論是 David Malan 教授教得主課程,還是 Brain
Yu 講師教的 CS50 Beyond (偏前端網頁開發) 與 Web Programming (偏後端網頁開發),
都是非常精彩、深入淺出。
#辭職專心衝刺
在開始看 Udemy 與 CS50 後,由於已經很確定自己要轉職,我就辭掉工作 (不然本來的
工作實在太耗神) 全職衝刺。在全職衝刺的期間,我寫了兩個專案,一個是電商專案,一
個是 CRM 專案。因為這時候很確定要往前端發展,所以也開始學 React (前端最多人用
的框架之一)。我是透過 Udemy 上的 The Complete React Developer Course (w/
Hooks and Redux) by Andrew Mead ($300 台幣) 課程,搭配 Youtube 上的 Net Ninja
Complete React Tutorial (& Redux ) 課程學。
邊學邊試著用 React 來寫我的專案,不會的、卡住的東西就上網查 (基本上就是靠
Google 與 Stack Overflow 來找)。舉例來說,想要在電商專案中做購物車功能,我就
去 Google 上搜尋 “shopping cart react” 這類的關鍵字找教學來看。
當初之所以決定做這兩個專案放到我的作品集,是因為我先找了幾間自己很感興趣的公司
,了解他們用什麼技術與語言,了解他們的產品,然後想我的作品集有什麼樣的專案,會
讓他們覺得我是即戰力,最終才決定要做什麼。
#面試準備的自我懷疑時期
花了兩個多月邊學 React 與做專案作品後,在開始投履歷前,我花了兩週多全力準備面
試。面試分成三部分準備,專案作品、JavaScript/React 考古題,以及演算法刷題。
專案作品就是要對自己的專案瞭若指掌,用了什麼樣的技術,為什麼選擇用該技術,都要
能說得出來。JavaScript/React 考古題就是上網找「前端面試題目」、「React 面試題
」等關鍵字找題目,題目看到後來都大同小異,這些題目多半也都能在網路上找到人分享
答題。其中我非常推薦 Huli 的部落格,裡面寫的超多篇都是在回答面試必考題 (例如
淺談 JavaScript 頭號難題 this:絕對不完整,但保證好懂、我知道你懂 hoisting,可
是你了解到多深?)
而演算法刷題就是大家耳熟能詳的 LeetCode 題目。刷題前我有買一本資料結構與演算法
的書來讀,但後來發現網路上的資料也都寫得差不多,也有許多 Youtube 頻道有相關教
學 (例如這個 CS Dojo),所以後來覺得沒有特別買書的必要。實際刷題我主要是刷
Easy 與 Medium 的。每次遇到新的題目會先自己想,真的解不出來才會上網看別人怎麼
解。
上面這些或許有點輕描淡寫,但其實在轉職時,有好幾度覺得自己撐不下去、懷疑自己沒
辦法做到。不論是專案卡關,或是刷題時怎麼都不懂。事後回頭看,我覺得建立良好心態
很重要,不要期待所有觀念自己馬上就會懂,慢慢來,有些觀念看了好幾天才懂,也是常
發生的事。上面提到的 CS50 有教一個 C 語言的指標 (pointer),我是重看到第五遍才
懂,但那沒關係,最終有弄懂才是重點。
求職的最後階段是投履歷與面試。作為一個傳統定義的文組生,我的經驗是求職時沒有太
吃虧。我開始投履歷後一共投了十多家,其中九成有一面,完全沒有因為學歷是文組而拿
不到面試機會。拿到面試的也有七成有二面,沒有二面的也是因為白板題炸掉,不是因為
自己的背景。開始投履歷的第二週拿到第一個工作機會,在拿到第四個工作機會後終止了
剩下的面試。
回顧整個過程,我認為文組生轉職最大的障礙是自己的心態。能不能熬過自我懷疑,能不
能在第一次沒弄懂後繼續堅持下去學習才是重點。轉職之路不容易,確定是自己想要的方
向才是重要的。假如在過程中發現當工程師實在不是自己的路也沒關係,所學的不會白費
,就像也有同為文組的朋友,學了程式後轉產品經理,雖然沒成為工程師,但依然轉到自
己理想的職涯。
希望這個經驗分享對正在讀的妳與你有幫助,也祝福大家都能順利發展出自己理想的職
作者: seark1219 (Seark)   2020-11-28 20:59:00
正面給推
作者: zhuzii (UsualMan)   2020-11-28 20:59:00
推 非常有意義的文章
作者: c800910 (c800910)   2020-11-28 20:59:00
好像很強..自嘆不如..
作者: ChangeXD (欠舉)   2020-11-28 21:05:00
推推,我的背景跟你差不多,現在也正在求職中
作者: kyrie77 (NTU KI)   2020-11-28 21:11:00
作者: mioaria   2020-11-28 21:23:00
感謝分享
作者: newhandfun (新手方)   2020-11-28 21:36:00
很正面,給推
作者: Kagami3421 (卡加米)   2020-11-28 21:46:00
作者: MyNion (Nion Lee)   2020-11-28 22:36:00
原PO應該是台清交的文組吧?一般人類沒辦法這樣
作者: a3698521tw (Mikemic)   2020-11-28 23:07:00
文組轉工程師剛上班一個月推
作者: longlyeagle (長鷹寶寶實驗室)   2020-11-28 23:18:00
nice nice
作者: jeffguoft (十年磨一劍)   2020-11-28 23:37:00
我學習歷程跟你的好像,目前在做作品集,希望也能轉成
作者: rr8r8r8r8tw (amp)   2020-11-28 23:44:00
高中數學好,吃飯配techLead,他語速不慢,其實底子滿好的
作者: a8989332 (天創)   2020-11-29 00:06:00
正確要一杯馬克杯配TECHLEAD
作者: jaff2532 (Jaff)   2020-11-29 00:11:00
優文推
作者: sheldonlord (S.C)   2020-11-29 00:30:00
作者: hank8451 (hank)   2020-11-29 00:34:00
厲害 推一個
作者: ppc ( )   2020-11-29 00:40:00
push
作者: zmcx16 (zmcx16)   2020-11-29 01:15:00
正面推, 超勵志
作者: b10130402C (WinJamison)   2020-11-29 02:39:00
我也是系統廠管理職轉職,也是看 Designing your life才轉,哈哈,還以為是我自己的鏡像,上班後是新的挑戰,加油
作者: ttsung2 (宗宗)   2020-11-29 04:05:00
作者: socon15 (魔人秋秋)   2020-11-29 04:18:00
作者: bellalai   2020-11-29 08:59:00
謝謝分享 推推
作者: kangan987 (Jon.Snow)   2020-11-29 10:01:00
看完覺得超有決心~~佩服~~Youtube 推薦 Traversy media你 CS50的作業都有做完嗎?話說看了這麼多轉職文,發現學習什麼的倒是其次,決心才是最重要,決心夠,就能突破任何困難...
作者: shaomi (kerker)   2020-11-29 10:59:00
想知道你投了哪幾間佩服
作者: tiramisu0225 (Th'S)   2020-11-29 11:22:00
作者: lairx (lairx)   2020-11-29 12:38:00
你準備好紮實,自己也是文組轉前端,工作後真的好多知識要補,同推最困難的是心態,完全能體會反覆的自我懷疑與無助,總之恭喜
作者: Y78 (Y78)   2020-11-29 13:21:00
推推
作者: alihue (wanda wanda)   2020-11-29 14:24:00
心態炸裂問題其實連本科都會經歷過。寫程式必經路程
作者: newhandfun (新手方)   2020-11-29 16:36:00
自己找工作時很少二面,請問這幾次有什麼不同?
作者: sharku (明珠求瑕)   2020-11-29 18:21:00
作者: disney82231 (菜逼八YOYOYO)   2020-11-29 18:30:00
請問你幾歲決定轉職的
作者: opallin (Opal_Lin)   2020-11-29 23:16:00
幫推,但必須說覺得Treehouse cp值普普但原PO自學規劃的這麼完善真的佩服
作者: uopsdod (pcman)   2020-11-29 23:53:00
大推
作者: samuel1988 (小羊快跑啊)   2020-11-30 07:17:00
笑了。就是個前端工具人還自稱工程師xd
作者: shaomi (kerker)   2020-11-30 07:58:00
純噓樓上
作者: jeffguoft (十年磨一劍)   2020-11-30 07:59:00
樓樓上被搶工作笑死XD 這樣就知道轉行轉對了
作者: justaID (快樂崇拜)   2020-11-30 12:22:00
推,很有條理的規劃也很自律努力,不簡單
作者: botherbother (老弟)   2020-11-30 16:45:00
推,不過你以為工程師就靠實力說話,那你就錯了
作者: oyyyo (yyz zzzz)   2020-11-30 21:39:00
謝謝分享!
作者: jack931018 (jack931018)   2020-11-30 22:00:00
作者: DonkeyLiu (Donkey)   2020-11-30 22:15:00
推分享,目前也在轉職路上努力
作者: f26724309 (番薯)   2020-12-01 23:00:00
推 28才開始想轉 壓力真的大
作者: rhippo99 (阿阿河馬阿)   2020-12-02 08:27:00
勵志給推!
作者: passing815   2020-12-02 20:30:00
心態真的很重要 推
作者: summerleaves (內湖全聯先生)   2020-12-03 13:20:00
列得那些課 全部都做完 是滿強的
作者: deeeplove (想不到ID)   2020-12-06 11:50:00
讚讚 我也拿到offer啦
作者: cotbel   2020-12-06 14:12:00
推 在台灣 工程師也是職場政治的一環,也沒有辦法實力說話
作者: kaorusora (KS0624)   2020-12-14 08:53:00
給推

Links booklink

Contact Us: admin [ a t ] ucptt.com