編輯嚴選
【轉職心得】從零到前端工程師,我到底做了哪些努力?

2021/10/01閱讀時間約 17 分鐘
原本最近學習學到一個段落,準備著手準備前端作品集,不曉得是不是上天看到我的努力,竟然在我只有將課程作品放上 cakeresume 的狀態下,收到不少面試邀請,也順利地收到 offer 。
要感謝、要記錄的過程太多了,於是我著手撰寫了這篇文章,希望可以幫助正在轉職苦海努力的你。
這篇文章主要會依照以下脈絡,由於文章會有點長,也可以挑選自己有興趣的部分閱讀:
  1. 關於轉職的起心動念
  2. 剛接觸到程式的那段日子
  3. 全職學習初期:抓不到方向的迷茫期
  4. 課程資源分享
  5. 全職學習中期:放上履歷、試試水溫
  6. 全職學習後期:準備作品、磨練底層知識
  7. 轉職小總結
  8. 給要入這行朋友的小建議

關於轉職的起心動念

先簡單說明一下我個人的背景:
  1. 英文系畢業
  2. 初入社會的時候當過補習班老師、業務
  3. 後來有機會到了軟體新創做 APP 行銷
在職場打滾的短短一年多,我因為工作換了又換對自己的人生感到「非常不安」,即便內心有對於理想生活的憧憬,但遲遲不知道該如何改善人生的僵局。
在那段「職涯迷茫」的狀況中,我聆聽了大量有關職涯、人生規劃的 Podcast ,其中我最喜歡的就是:佐編茶水間與大人的 Small Talk 。
在此篇內容中,整理了我認為「必聽」的集數,如果你也對職涯感到很迷茫,這幾集節目一定可以為你的現狀帶來一些改善的靈感。
當對職涯有一些全新的想法後,我決定做一些改變,碰巧當時我因為疫情,被迫離開產品社群行銷的崗位,於是我開啟了自我探索的道路,並且用了「產品開發」的思維重新規劃自己的職涯,在與其他平台合作的線上講座,我曾經分享過很精準的作法:
但簡單的來說我幫自己抓出幾個,若是未來要找工作一定要包含幾個要點:
  1. 職涯薪資天花板高
  2. 工作環境性別比平等,或是男性居多(因為我不太擅長與女性相處)
  3. 工作掌控性高、職涯技能較難被取代
  4. 工作內容可以較容易取得對方的尊重、信任
  5. 有遠端工作的機會
碰巧當時朋友建議我學學看程式,於是我就一頭栽入了,更多有關我的起心動念,可以參考這一篇我剛準備轉職撰寫的內容:

剛接觸程式的那段日子

老實說,我並不是一開始接觸到程式,就決定要投入我所有的資源來學習程式,而是經過一段時間摸索、沉澱,從免費的線上資源、買便宜的 Udemy 課程, 到我辭職真正用心專注投入所有資源(錢)來栽培自己,這中間大概花了約五個月。
對,沒有錯。我花了五個月的時間來探索自己,在離開產品行銷的崗位時,我因為生計的關係,到了一間軟體公司當業務,這段特別的經歷狠狠的教訓了我:人真的不要妥協於現狀,因為現實會在某一天狠狠地扇你一巴掌。
靠嘴吃飯的業務整個無法滿足我對於知識的渴望,於是我天天被主管鞭說,不要花那麼多時間研究知識,多打電話、跑客戶,這讓我感到無比的掙扎,因為我發現自己希望做一個可以常常鑽研知識的工作。
當時當業務的我,基本上是通勤的時間都在看 Udemy 的課程,到後期甚至午休也會看,我突然發現,我是時候辭職了,我不要再做著我不喜歡的事了。
2021 年初我向前公司遞交了辭呈,不顧主管慰留,把我所有的資源 all in,開始進入全職的學習狀態。
在辭職以前,我大部分都是寫 freeCodeCamp 的免費 tutorial , 與仰賴超便宜的 Udemy 課程,因為那門課程有點舊了,所以這裡就不推薦了, 如果想知道我初期是如何評估、挑選課程,可以參考這篇文章:

全職學習的初期:抓不到方向的迷茫期

老實說,辭職後,我花了至少一兩個月的時間調整自己的作息及寫程式的時間。
在一開始全職學程式的時候,前兩個禮拜時我一天沒有辦法專注超過「三小時」,沒有錯,你沒有看錯,我就是沒有辦法寫超過三小時。
於是當時我用了很多辦法來讓自己更專注,包括使用番茄工作法、看轉職文章激勵自己、看熱血動畫、看自我成長的書籍,其中最有用的就是使用蕃茄工作法,能讓自己看到明顯專注、學習的時間,讓我獲得成就感之餘,更有辦法掌握自己學習的進度。
其次對我最受用的是閱讀自我成長的書籍,其中我最喜歡的就是:原子習慣刻意練習這兩本書,我透過拆解日常任務、訂定目標的方式,讓自己慢慢從迷茫的狀態轉為類似於全職考生的狀態。
在我的 IG 有大量我推薦的選書,但我最推薦的還是剛剛說的那兩本,也特別寫了書摘來介紹:
我相信大部分的人,都滿容易受環境、學習方式、心態影響到學習的狀況,希望這些資源及方式可以給你一些學習心態建立的靈感。
另外我也有另外一部影片,是專門分享我自己規劃學習方式的手段方法,及用到的工具,影片中有提及我是如何使用蕃茄鐘提高我的生產力:

課程資源分享

我會大致整理從零到轉職成功這過程中,我實際上了哪些課程。
至於推不推薦的話,由於課程是很主觀的內容,尤其我這個人又屬於比較能通靈的人。
簡述我自己的學習背景:語言能力偏好,多益成績是 900 分金色程度,略懂日文。
會稍微提到我個人的語文造詣的話,是因為不只一、兩個人跟我提到我理解超群這件事,於是先跟大家說明一下,我之所以閱讀很快是因為以往的訓練,加上一點的語言天份,往後的內容會提到這件事。
因此課程與閱讀選書的部分大家就斟酌參考,以下課程我是依照我從學程式開始的學習順序:

系統性課程:

  • freeCodeCamp:Responsive Web Design
    國外很不錯的線上資源,有很多機上練習,初學者可以從中熟悉 HTML、CSS 的撰寫方式。
  • App Brewery:The Complete 2021 Web Development Bootcamp
    很有魅力的一位女性開發者,雖然他的課程內容很舊,而且是偏全端,但是講師會有一些鼓勵小片段,讓我撐過初期摸索程式的挫折感。
  • 六角學院:2021 春季 JS 直播班
    創辦人是我偶像,要不是有六角,我真的不知道該如何 Debug,更多詳細心得可以參考這篇文章:
  • 六角學院:使用 HTML、CSS 開發一個網站
    課程內容偏舊,但是我很喜歡助教批改的服務,算是台灣很新手友善的課程。
  • 六角學院:一變應萬變的響應式網頁設計
    可以練習 RWD 的課程,一樣的問題,課程比較偏舊,課程優勢就是助教問答的服務。
  • 六角學院:JavaScript 入門篇 - 學徒的試煉
    給初學者的 JS 課程,是 ES6 以前的內容,課程依然偏舊,課程優勢就是助教問答的服務。
  • 六角學院:JavaScript 核心篇
    偏 JS 底層知識取向的課程,初期上的時候你不會知道這門課強在哪,直到我去面試時我才知道這門課的底層概念就是屬於面試官超愛問的問題大集合。
    課程難度偏難,要有一定自學能力才看得起來。
  • 六角學院:2021 夏季切版直播班
    六角課程中CP 值最高的一門課,滿滿的設計稿讓你練到爽,記得直播班一定要想辦法撐到最後,因為直播班的內容通常你也不會想要在課程結束後再去複習,這個課程我也有額外撰寫文章:
  • 六角學院:Vue 3 實戰影音課程
    偏難,比較見仁見智,說個實在一點的評價就是,這門課是偏 Vue 功能「導讀」,不要期望上了課你會多猛,一定要額外做「大量」練習與研究,才會比較理解。
    我個人其他的想法就是,這一門課的助教有時候會回答不到我的點上,不曉得是不是我有程度以後,對於助教的回覆開始變得嚴格的關係。
    後來我都是自己研究作法居多。
這裡說個小結語,不論你是上哪一類型的課程,請務必堅持到最後,除了要勉勵大家不要半途而廢外,我還覺得:如果你沒有看過更好的風景,你就不知道該何從努力起。

閱讀教材:

  • MDN
    有前端相關的問題我主要都是看 MDN 文件居多,畢竟人家是官方的文件,一定會是標準的作法。
    身邊的朋友問問題,大部分我也只是轉貼 MDN 文件的內容給對方看,導致有朋友甚至戲稱我跟本沒娛樂:「別人在看漫畫的時候我都在看 MDN 」。
    另外我在看 MDN 時,我一律只看英文,對,我這個人的怪僻就是文件只看英文。
    文件只看原文的原因是,我大學的時候曾接案做過翻譯,如果文件翻譯的太爛我可能會看到生氣,有時候我看中文都感覺他不是中文,索性只看英文文件。
    這也是我前面說到,為什麼語言能力幫助我很多的原因。
    我每天都在看 MDN 嗎?當然這不是真的,我還是看多動畫、影集的(喂)。
  • 0 陷阱!0 誤解!8 天重新認識 JavaScript!:
    前端神書,我至少嗑了十遍以上,對,就是重頭到尾看十遍以上,我還做了不少的筆記,沒有整本看懂你不要說自己很懂 JavaScript ,雖然到現在我也沒有全部看懂就是了。
  • 重新認識Vue.js:008天絕對看不完的Vue.js 3指南:
    我目前學 Vue 還依然在持續閱讀的一本書,可能書中提供的不會是「最容易懂」、「最好的作法」,但一定可以在開發上提供一定程度的導讀及靈感。
  • 金魚都能懂的 CSS 選取器:金魚都能懂了你還怕學不會嗎:
    CSS 神書,在初學程式時我覺得 CSS 算是簡單易懂的程式語言,後來才發現大錯特錯,我花在 CSS 上的時間實際上並不亞於學習 JavaSCript 的時間,當我要合併 Sass 及其他設計模式做進階的 CSS 使用時,這本書真的給我幫上很多忙。

全職學習中期:放上履歷、試試水溫

從典型文組上班組,到前端工程師,我感受到最明顯的差異就是職缺的稀缺度。
我會建議大家在學習進度的中後期,也就是你至少對某一個語言有一定的掌握度時,或者說你有跟著課程,實作出一些小東西時,一定要在求職前放上求職平台,像是 cakeresume 或是 LinkedIn 等。
其實我是一個很沒自信的人,但我做了一個可以大幅提升我自己自信的行動,就是準備進入就業市場前,先將自己的履歷提前做好,在邊學習技術的過程中,只有有新的作品,我就會放上去,或是更新自己的學習技能。
這個舉動讓我在沒有主動投遞履歷前,讓我收到了五個面試邀請,其中不乏有國外新創、遠端類型的工作,這不僅讓我大幅提升自信,也能從面試的過程中,了解自己的目標在哪,了解自己目前還有什麼是不足的地方。
我強烈建議大家,如果你學習程式的最終目標是就業的話,絕對不要害怕公開你的履歷,也不要拒絕任何一場面試,每一次的過程都會成為你未來職涯中的養分。
另外我近期也收到一則讀者提問:「我目前在巨匠學習了 HTML、CSS 三個月,只有略懂略懂,請問我要投履歷嗎?」
不論你是在學習的哪個階段,投履歷都能立馬檢視出目前自己該往哪個方向努力。
如果沒有人要找你面試,要馬是你實力不夠,不然就是你履歷寫不好。
這時候可以試著優化自己的履歷,如果沒有用的話,就代表你目前的技能不足以應付你想要申請的職缺。

全職學習後期:準備作品、磨練底層知識

我認為作品是一個很基礎求職必備的要件,尤其是對跨領域轉職的朋友來說。
作品是一個能讓面試官最快了解你程度的方式,也是讓你的履歷更豐富的最佳方式。
至於要怎麼準備作品我覺得會分兩個面向:
第一個面向是,當你發現自己在課堂上已經有一兩個,可以「動」的作品,那就可以直接放上履歷,也許在你結束學習前,就會有人找上門來。
第二個面向是,當你的學習到了一定程度,對前端來說可能是學到框架了,那就要開始著手打造你的 side project ,這麼做除了是豐富你的作品集外,更重要的是在找到工作前,你要確保自己有持續學習,而不是上完課就覺得:「Oh! I'm done!」
至於作品集要往哪個方向準備,就看你自己對哪面有興趣,或是目前你在生活中遇到了什麼難題,但卻沒有現成的 Web App 可以協助你解決這個問題,那麼你就可以嘗試自己做一個。
說完作品集,接著我們來聊聊底層知識,所謂底層知識是什麼?也就是你目前專精語言的實作內容、常常被大家搞混的知識點。
為什麼要刻意增進自己的底層知識呢?除了能讓你在寫 code 的時候更知道自己在寫什麼之外,更重要的一點是,通常面試官都很喜歡拿這些底層問題作為面試題,舉例來說,我就曾經被問到以下問題:
  Q:如果有一個狀況是 const a = {};請問 a == {} 與 a === {} 的結果分別為何?
  Q:請問淺拷貝與深拷貝的差異在哪?什麼時候會用到淺拷貝?什麼時候會用到深拷貝?
  Q:cookie 與 localstorage 的差異在哪?
  Q:JavaScript 是多線程還是單線程的語言?
  Q:請問如果程式在執行的過程中,穿插了 setInterval 的函式,請問現在 JavaScript 會怎麼執行?
現在知道自己該往哪個地方努力了吧?
如果你現在在學習的後期,請記得一定要幫自己設定目標與期限,也不要一直狂做作品,而拖延到找工作的時間,畢竟時間是最貴的成本,你再怎麼學也不會有直接去工作來的學更快。

轉職小總結

在最後,我簡單交代一下我花了多少時間轉職成為前端工程師,及統整一下我的學習方式。 在我轉職前,我花了約 1000 小時在寫程式,這個時間是我透過番茄鐘計算出來的。
全職學習約七個多月,在四個多月的時候我就開放了我的履歷,並且在七個多月的時候轉職成功。
在這七個多月中,我做了這些努力:
  • 最基本的待辦事項( Todo List )我練了不下十次,從基本的純 JS 環境,到 Vue Cli 都練過
  • 上述的課程我有九成以上都有把最終作業交出來,並且通過六角學院的審核。
  • 008 天重新認識 JavaScript 我嗑了十遍有
  • 只要有不會的內容,或是學到什麼新技術,我就會把它做成筆記
  • 額外自己研究一些酷東西,像是硬要自己寫 Modal、或是硬是自己從頭寫了一個 Sass 的 library
  • 我經營了這個部落格及 IG ,我分享技術筆記及轉職心得,並且從幫助他人中獲得力量並持續走下去
  • 我在六角學院做了兩次志工,一次助教,批改過上百份作業、籌辦了技術寫作的活動
  • 最後被老師邀請到火箭隊訓練營,跟著第七梯的夥伴接受了約一個月的自主訓練
老實說,要說我學習很迅速,或是過程很幸運好像都不太對,但我收過很多讀者、同學的私訊說:「我不像妳這麼厲害」又或者說「我不像妳語言天賦造詣好」。
但實際上,所有那些旁人看起來很厲害的結果,都是我努力追求來的,舉例來說,在我學程式的初期,只要學院有辦活動需要志工,我馬上就會自願,於是我後來有了當助教的工作機會,及參與訓練的機會。
前面說到的「別人在看漫畫的時候我都在看 MDN 」,在別人抱怨很難的時候,我直接放棄掙扎,任命嗑 stack overflow,一次找不到,我就找兩次,兩次找不到我就找三次,反正我就是噎著一口「我不可能做不到,隔壁室友整天打遊戲都可以當工程師了,我怎麼不可以」的態度在寫 code 。
事實證明,程式這件事一定可以後天養成的,就端看你的人生方向有沒有與這個工作吻合。
還記得我在前一份工作離職時,我那時的主管跟我說:「Vivian 你確定嗎?工程師是一條不好走的路。」
我只想說,沒有一件事是簡單的,我連要假日在床上賴著時,要不要出門買午餐都會耗我很多精力,就不要跟我談你想要輕輕鬆鬆變成工程師了。
輕輕鬆鬆?你做夢比較快,真的。

給要入這行朋友的小建議

我在撰寫這篇文章的時候,還沒有實際 on board,所以我真的不知道所謂軟體開發這行,RD 這一行到底長怎樣。
但我可以很確定的一件事是:「你如果還在仰賴別人解決你的問題,那你不要來。」
工程師大部分的時候,都是要自己想辦法解決工作上的問題,因為你會發現,也許公司裡除了你或是你那個部門的人,沒有人會這個問題了。
撇除很實際的技術面問題,你要花很多時間閱讀、寫程式,更要時時作為一個「解決問題」的角色,也不會太輕鬆。
但如果你我一樣,對這個世界感到很好奇,看到什麼酷東西就是要去玩一下,那麼軟體開發就會很適合你。
畢竟以台灣整個大環境來說,軟體工程師的福利真的比很多職業的福利好很多,至於工作內容好不好玩,那麼就很見仁見智了。
最後,能成功跨領域轉職,要感謝的人太多太多了,謝謝這七個多月中出現在我生命中的人事物,不論是好的壞的,你們都讓我成功成為了一位「開發者」。
我的挑戰之路才正要開始,我們之後的文章再見啦。
如果你有任何的職涯問題想要跟我聊聊,歡迎你用 Instagram 的小盒子私訊我,我會很樂意提供你協助。
希望今天的文章有幫助到正在閱讀的你,如果你喜歡我的文章的話,可以留下你的愛心或是收藏我的文章,也或者可以點選「贊助」,你的一杯咖啡絕對是我持續寫下去的動力!或是透過拍拍手,用你小小的行動支持我的創作!
我是Vivian,我們下次見。

關於我:
2019年從英文系畢業,2021下定決心開啟轉職工程師的新生活,相信不斷學習會有成長的一天。
|聯絡我:[email protected]
為了追求可以窩在座位上、可以心無旁騖思考問題、座位可以亂七八糟沒關係、不需要到處哈腰點頭跑客戶,不用腳踩十公分、連妝都可以不用化的職場人生,文組少女毅然決然踏上RD的養成日常。
留言0
查看全部
發表第一個留言支持創作者!