[心得] 文組轉職前端軟體工程師心得
網誌好讀版: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 NinjaComplete 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),我是重看到第五遍才懂,但那沒關係,最終有弄懂才是重點。
求職的最後階段是投履歷與面試。作為一個傳統定義的文組生,我的經驗是求職時沒有太吃虧。我開始投履歷後一共投了十多家,其中九成有一面,完全沒有因為學歷是文組而拿不到面試機會。拿到面試的也有七成有二面,沒有二面的也是因為白板題炸掉,不是因為自己的背景。開始投履歷的第二週拿到第一個工作機會,在拿到第四個工作機會後終止了剩下的面試。
回顧整個過程,我認為文組生轉職最大的障礙是自己的心態。能不能熬過自我懷疑,能不能在第一次沒弄懂後繼續堅持下去學習才是重點。轉職之路不容易,確定是自己想要的方向才是重要的。假如在過程中發現當工程師實在不是自己的路也沒關係,所學的不會白費,就像也有同為文組的朋友,學了程式後轉產品經理,雖然沒成為工程師,但依然轉到自己理想的職涯。
希望這個經驗分享對正在讀的妳與你有幫助,也祝福大家都能順利發展出自己理想的職
涯
--
好文
加油
太厲害了
好文,寫的很好
好文 祝原po發展順利
好厲害,你一定很努力
加油 搞不好本科生都沒你這麼熱心自學了
強者!y
推 這個意志力真的令人佩服
推
同為讀管理轉職工程師 期待後續
推 謝謝分享!
推
推
好文 感謝分享
推
推
非常佩服,謝謝分享
好強!!
厲害 祝福你
從開始學到找到工作花不到一年也太強
好勵志,感謝分享。也恭喜你
推 很棒
用心,轉職前端也是一級棒
推
認識的以為資策會上完課就可以轉了 跟您的心態天差地遠
推
推
推~
推
推經驗分享
太強了
推
太厲害必須推
超強的 推
好厲害!
cool!
推
謝謝分享!
強者
推,另外分享外文系同學是上資策會的課,目前已成功當軟
體工程師,花錢但會更快一些的方法
很棒的分享
推
推
聽說文轉資工薪資上限還是會比本科資工低,請問您覺得如
何呢
推
推
謝謝分享
有天花板但比文組高就好(泣
推 辭職全新衝刺 真D勇敢
超讚的分享~推~
一開始比本科低正常吧人家練4-6年都在專門學這個
推好文 同為文組轉工程師
推
推啦 哪次不推
推
ultra learning
mini laziness 真的超美 你的經驗跟我一模一樣太巧了
哈哈太勵志了 謝謝分享
好文!推
強
謝謝原po分享
推
49
[心得]非本科轉職後端心得自己一直在想要不要寫這篇心得文 自己私立學店出身 沒有任何名校光環 甚至連靈壓都感受不到 但自己取之於PTT 用之於PTT 以及各方各路大神分享 還是決定將自己的轉職心得分享出來 希望能幫助到任何想轉職的人 「轉職只是起點,並非一個終點」43
Re: [心得] 非本科轉職軟體工程師的勸退文本肥宅也算是非本科自學(原理組) 工作年資約七年 有鑑於最近一年來面試了不少人 尤其是一堆文組轉職仔 以下我會以一個面試者的角度32
[心得] AppWorks School 轉職心得 Data EngineerHello 各位 300 萬大大好,小的是轉職生,之前在 Ptt 上獲益良多,所以來回饋一下我 的面試經歷,如果有公司不想被分享,請來信告知,我會儘速刪除,謝謝! 求職時間:2021/07 - 2021/08 Medium 好讀版:22
[心得] AppWorks School 非本科前端轉職心得## 前言 嗨嗨,版上的各位朋友好,小弟我是個轉職生,這段期間參考版上的各種心得,從中獲 益不少,趁著面試告一段落,也還沒開始正式上工,把這一年的過程紀錄下來,也讓這 件事情有個完美的落幕。 所以想分享一下我的經歷,不論是正在猶豫不決,還是已經在 轉職的人,希望這篇文章能幫助到你。16
[請益] 前端無經驗轉職請益大家好 小弟今年30快要31 私立學店文組科系畢業 想要轉換工作當軟體工程師 開始學習網頁前端相關技術 目前做了一點點作品 這幾天開始投履歷 不過都沒有公司找我去面試QQ14
Re: [心得] 文組轉職前端軟體工程師心得這篇把技術面要做的事情都講完了,我分享一點心理層面的自身經驗。 個人背景:私立大學化學系肄業,重考私立大學經濟系畢業,在金融業打滾前後七年的時間 轉職時33歲。 我在決定轉職的時候才到當時的新公司兩天,發現這行業只剩下我討厭的部分了,換公司根 本改變不了這個事實,就在當天報名了資策會,但是當時的梯次只能候補,所以原本是抱著12
[問卦] 轉職當IC Layout難民比前後端難民好賺?如題,近些年來有一堆主打著非本科系零基礎轉職前後端開發的bootcamp,讓那些大學主 修文組的非本科系,隨便學一些工具皮毛,就成為所謂的前後端工程師,這些人也被戲稱 是前後端難民。 這些前後端的轉職難民,估且先不論他們能否存活到最後,他們的第一份工作,無論是薪 資還是工作環境或WLB,都真的完全吊打一些文組工作。- 工程師日本轉職分享會- CLUB HOUSE 90分鐘限定 2021/03/20(土)21:00~(日本時間)參加連結: -主講工程師背景 ·台灣遠端日本工程師
- 想要「入門」軟體工程師,到底怎麼開始才是對的呢? 你該真正思考的不只是選哪個程式語言而已! 誰說成為軟體工程師一定要本科系相關? 過往經驗甚至會是面試的自身優勢 如果你想要讓跨領域成為一個可行的選項