2021-12-27|閱讀時間 ‧ 約 12 分鐘

【跨領域轉職】要準備到什麼程度才可以找第一份前端工程師的工作?

在 2021 年 6 月的時候,我帶著前端學習者的身份,第一次用影片的方式跟大家分享了自己學習前端的歷程。
老實說,即便當時的我非常有目標地在準備轉職,也了解只要自己持續努力,最後有一天一定會轉職成功。
但在心中依然會有一些自我懷疑的聲音:「我真的可以嗎?」
「我半路出家也可以為其他人提供服務嗎?」
慶幸的是,當時自己做了一個對的決定:在還在學習時就開放自己的履歷,並且在收到面試邀請後,認真打磨自己的履歷及技能。
雖然外表看起來的我,是看起來很有目標的,但內心一直有個拉鋸的聲音告訴自己:「妳還沒準備好,妳確定要找工作嗎?」
當時我花了非常大的力氣告訴自己:「所有的害怕都來自於自己對於未知的恐懼,嘗試了才會有機會!」
我甚至以為當自己找到工作後,就不會有否定自己的心態了,可以因為自己有工作理直氣壯的肯定自己,然而在自學七個多月,順利的找到工作後,才發現這個想法真的大錯特錯!
在日常的工作中,犯錯是家常便飯,除了大量仰賴 Google 來尋找答案外,我更常做的是轉向隔壁資深工程師,帶著自己準備好的 「question list」,開始喋喋不休的提問。
隨著專案的難度越來越深,越來越趕,我發現自己質疑自我能力是否能勝任工程師一職的內心聲音依然很強,絲毫沒有減去的狀態,甚至不太相信自己寫出來的東西到底對不對,常常思考自己寫的東西合不合理。
我甚至會因為自己不是本科生而感到不自信,也會在週休二日時,大量惡補自己的程式技能。
後來我問了公司的前輩,也詢問自己身邊的朋友,意外得到很一致的答案:「妳會不會想太多啊?寫程式這種事本來就會一直遇到問題呀!」
此時我才發現:「軟體工程師根本不會有準備好的一天!」只要你還在開發、寫程式,每天一定都會遇到新的問題、懷疑自己。
既然資深的工程師們都有這樣的感覺了,那我常常懷疑自己不就是很正常的嗎?
於是我開始學著與自己的「自卑、不自信共處」,當別人稱讚我時,學著肯定自己的努力。
在這個過程中,我了解到一旦被自己過多的疑慮糾纏,可能就會像是當初的我一樣,懷疑自己究竟能不能勝任這份工作,因而錯失許多寶貴的機會。
事實上,從零到可以找工作,並沒有想像中的這麼難。
這篇文章中,我會跟大家介紹在第一份工作中,根據在職場的所見所聞、觀察,我認為一個最 Junior 的前端工程師需要具備怎麼樣的技能才能找工作,以下我整理了五點 Junior Front-end developer 需要哪些必備技能:


必備技能一:滾瓜爛熟的 RWD 切版技能

身為一個前端菜逼八,在一開始對於前端領域不是很熟悉時,對自己幫助最大的技能絕對是「切版」。
通常在接到需求時,你會發現對一個剛進入軟體開發領域的新手來說,會花非常多時間在熟悉職場、工作環境,再者,每個團隊會有自己的開發節奏、協作習慣,光是要跟人溝通就會花掉很多時間。
更不要提建置開發環境、測試資料了,光是要確認資料是不是能用,專案資料架構要怎麼規劃,就會花去你大部分的心力,根本沒有時間讓你慢慢想畫面該怎麼刻。
因此,我會說滾瓜爛熟的切版能力絕對是前端必備的技能,當你發現自己經驗不足,API 接的又慢時,至少你還要有拿手的地方,或是可以分擔團隊開發壓力的技能。
試想一個狀況:你要接 API ,但不熟專案架構,當你好不容易看懂資料流向,卻發現:「啊!我畫面怎麼動不了」,此時一定會感到壓力很大, 尤其是當其他人嘗試教你,但你卻因為自己的壓力而無法吸收,進而感到更大的壓力,形成惡性循環。
如果你正為自己切版技能不夠熟而感到煩惱,我很推薦這門課給你。


必備技能二:半熟的 JavaScript

在 2021 年時,基本上前端的職缺基本上都會需要使用到 JavaScript ,那什麼樣的程度可以求職呢?
通常來說,一個合格的前端工程師,只要在需要用到某項工具時,可以透過網路資源找到做法就很夠了,於是有些人會誤會,只要會使用 jQuery 就可以當工程師了吧?
但實際上,你最好對 JavaScript 有相當程度的認知,你不必需要知道所有 JavaScript 的語法,但你至少要知道當你接到需求時,你要去哪裡找到你想要知道的解答,並且在了解程式碼如何運作的狀況下把流程寫好。
有人會說,難道這樣還不算滾瓜爛熟的程度嗎?
當然不算!
當你寫了越多的程式碼,會發現 JavaScript 是一門很深的學問,略懂略懂的人很多,了解:型別、宣告、函式、物件方法、陣列方法、字串方法、運算子、DOM、BOM、Promise、AJAX、Prototype、ES module、this 等概念只能算「半熟的 JavaScript」、JavaScript 小菜雞。
要再對 JavaScript 有更深的了解時,都是在開發的過程中踩雷,才會慢慢有方向的去探究 JavaScript 更深層的實作概念,希望之後有機會可以慢慢跟大家分享相關的技術。
聽到這,你大概能知道要把 JavaScript 練到滾瓜爛熟再去找工作,是一個不太實際的想法,你隨便問一個資深的前端工程師是不是百分百了解 JavaScript ,我相信很難有人給出肯定的答案。
想要確認自己是不是有對 JavaScript 有基礎的認識的朋友,我很推薦你直接開放履歷、投遞工作,藉由多了解工作職缺的技能敘述,來了解自己對於距離上工還有多少距離。
相信我,直接去找工作並多方嘗試不同的面試,可以讓你的技術能力快速提升。


必備技能三:會使用 AJAX

除了全端工程師外,基本上大部分的軟體開發公司會採「前後端分離」的開發方式,在這個狀況底下,你就必須了解如何透過 HTTP Request、Websocket 來介接 API 並且正確地獲得來自資料庫的資料,並且呈現在畫面上。
AJAX 可以說是現在業界非常主流的前端技能之一,也會是前端工程師面試時,非常常被詢問到的面試題目。
如果不了解 AJAX 可以找到一份前端工程師的工作嗎?很遺憾,這難度應該會非常非常高。
不了解 AJAX 進行網路請求,也很有可能代表你目前不太了解「前後端分離」的概念,或是你其實不是很懂「網頁開發」是怎麼一回事。
在這樣的狀況底下,我會非常建議你隨便挑一堂相關課程來上、實作,畢竟 AJAX 不是前端的大魔王,還只是非常幼幼班的技能而已。


必備技能四:熟用第三方套件

在新手前端的工作中,很少會有要自己封裝難度較高的元件的狀況,主要原因在於,要快速封裝出合乎專案架構的元件,本質上很有難度,通常有規模的公司也不會交給菜鳥前端做,畢竟做的不好可能還會幫倒忙。
在這樣的情況下,你就必須可以快速上手前輩所提供的專案環境,不論是自己可以把專案弄起來,或是依照前輩既有的開發脈絡進行開發,都是非常必要的技能。
再來就是:一定要熟悉使用第三方套件!
由於網頁開發這個領域,相比後端、APP,是高度自由的!你常常可以看到社群中的厲害開發者,為了要解決大部分開發者遇到的問題,而自己自幹出一套新東西,像是我們常見的:Vue、jQuery、D3.js 等各式各樣的第三方套件,都是社群中的產物。
身為前端開發者,絕對不要硬著頭皮、埋頭苦幹,這樣其實是非常浪費時間,也很沒有效率。
最好的辦法就是,每當遇到問題時,要試著讓自己多看一點前人的作法,好的學習,不好的作法就引以借鏡。
「站在巨人的肩膀上」,大概是前端開發者們最常掛在嘴邊的一句話了吧?
切記,一定要習慣使用別人的東西,一開始用不熟、裝不起來都很正常,在習慣解決問題的過程中,自己的技術也會淺移默化變強。


必備技能五:Git 版本控制

對大部分自學轉職的朋友來說,Git 絕對是一個很難上手的工具,但這也是非常正常的,因為 Git 這個工具本來就是因「多人協作」而誕生的一種版本控制工具。
在一個人在寫程式的狀況下,你很少會遇到程式碼與程式碼之間的衝突、覆蓋的狀況,也不會有所謂「統一程式碼風格」的問題。 簡言之,一個人寫 code 怎麼爽怎麼寫,除非是多人協作、為了管理程式碼,才會使用到 Git。
對於毫無經驗的新手來說,面試官也一定知道你不太能解決版控上的問題,因為基本上你不會有「多人協作」的經驗。
對於公司要應聘一位毫無經驗的工程師,只要有基本的版控概念即可,譬如說:版本控制是為了方便多人協作、管理程式碼,有稍微使用過隨便一種版控工具,有 push、clone 的概念,其實就很夠面試用了。
如果你還不曉得 Git 是什麼,我建議可以在面試前花至少一到兩天研究,並可以獨立進行操作,若有不懂的地方,可以嘗試在社群中發問尋求協助。
過去自己在就職前,曾因為不熟 Git 而感到焦慮自卑,但其實這也是不必要的,因為 Git 是非常典型「進了公司才能學」的技能之一。
除非你曾與有經驗開發者共同建置 Side Project,但那又是另外一個話題了。


常見問答

相信看到這邊的朋友們,可能會覺得:「咦?就這樣嗎?傳說中的三大框架呢?」讓我娓娓道來發生在朋友身上的故事。
朋友 A 是一位兼職學習的文組人,在 2021 年底時,我接獲這位朋友順利轉職的消息,十分替他感到開心。
朋友 A 有基本的切版及 RWD 的技能,也會一些基礎的 JavaScript,雖然他不會 Angular、React 或是 Vue 等其中任一框架,公司依然提供大量空間、資源給 A 學習。
當然類似的故事不只發生過一次,我曾經聽過一堂講座:破釜沈舟的轉職路,講者為鐵人賽文章的作者 Alec,Alec 在稍微接觸過框架後,在沒有很熟悉 Vue 的狀況下,順利地找到一間願意給他空間繼續打磨框架的公司。
Alec 在講座中分享當時面試官給他的反饋:「你不是所有面試者中最強的,但卻是最有熱誠的一位。」
透過這一次的經驗我了解到,若你不考慮大團隊、大公司,單純只是需要一份前端工程師工作的狀況下,基本上只要符合上述的五個必備技能:熟練的切版技術與 RWD、半熟的 JavaScript 、 AJAX 行為處理、會用第三方套件及基礎 Git ,就可以開始投履歷了。
但我還是得誠實地說:社會很現實,你的技能組合,及技能水準的高低絕對會決定你可以喊到的薪資價碼,及能走到的高度。
如果你不是很要求一定要到很有規模的公司,只是單純想要「求有」,只會 JavaScript 而不會框架也是有機會的。
畢竟求職這件事,有時候本來就不是只有技術而已,有時候面試官更看重的是軟實力,例如:溝通能力、團隊協作、語言能力、對於技術的熱情等,都是有可能成為公司考核的重點。
希望說到這邊,可以讓還沒有進到職場,或是對於第一份前端工程師工作有所疑慮的朋友們一點信心,有時候不是你不夠強,而是因為自己遲遲不敢邁出第一步!
關於跨領域轉職你有什麼想要跟我分享的嗎?歡迎你下方留言告訴我!
希望今天的文章有幫助到正在閱讀的你,如果你喜歡我的文章的話,可以留下你的愛心或是收藏我的文章,也或者可以點選「贊助」,你的一杯咖啡絕對是我持續寫下去的動力!或是透過拍拍手,用你小小的行動支持我的創作!
我是Vivian,我們下次見。
關於我:
一名從英文系畢業的前端工程師,喜歡閱讀、寫東西及自我成長。
|聯絡我:vivian.enlife@gmail.com
分享至
成為作者繼續創作的動力吧!
從 Google News 追蹤更多 vocus 的最新精選內容從 Google News 追蹤更多 vocus 的最新精選內容

作者的相關文章

Vivian Yeh - 跨領域轉職的軟體工程師 的其他內容

你可能也想看

發表回應

成為會員 後即可發表留言
© 2024 vocus All rights reserved.