2021 年底了,簡述我轉職前端一年多來的心得

Eason Lin
Dec 19, 2021

--

https://unsplash.com/photos/Mu_9w7l1koI

其實從今年三月就想針對轉換跑道寫個心得感想,也不知為何就不了了之,趁著現在年底了,這個階段挺適合做個回顧的。

大約是 2019 年,實際時間老實說我也忘了,因為意識到原先職涯的困境,開始尋求轉換跑道的機會,因緣際會投入了 Alpha Camp 的課程,在將近一年結業後,投了幾間公司,也確實拿了幾份 Offer,最後進了一間以健康瘦身平台為主軸的公司擔任前端。

一個多月前,我離開了該公司,現在轉換到了一間以網路平台為主的公司擔任前端。接下來,就記錄一些我在這一年多來的心得。

身為 Junior,是不是應該有個 Senior 帶比較好

我必須說:「如果當時有人手把手帶我進入狀況,在我卡關時能引領我完成需求並直接告訴我解法,現在的我一定比沒人帶要弱上許多。」

還記得我第一天上班時,公司主管就派給我一個用 Vue CLI 為底開發出來的後台套版,這個後台套版架構非常之大,光 Scss 原始碼就有 1MB 左右,組件有多少我想就不需要贅述。

對於一個當時寫了一陣子 Node.js、Vue 反而接觸較少的我來說,簡直把我嚇傻了,第一周的我每天回到家都是 burn out 的狀態,因為用腦過度導致頭痛欲裂,但還是繼續研讀套版,希望能快速進入狀況。不誇張地說,因為該套版幾乎沒有文件作為說明,我花了整整一周,才找到它的進入點。換句話說,我整整花了一周才知道要怎麼改一個基於 Vue CLI 開發的套版。

雖然花了一周,甚至該周周末我都還埋頭苦幹,但我終究還是找到了,在這數十小時的奮鬥中,我對 Vue 及常與之一起使用的 Vue-router, Vuex 等都有更進一步的了解,也有不少「啊!原來可以這樣去實現某個功能」的時刻出現。

不得不說,在這一年多,絕大多數時間我卡關時是沒有人可以在技術上給予救援的,也因為這樣,當我真正無法解決眼前的困難時,我就必須逼自己把問題簡化,慢慢收斂成一個外人能懂的問題,才能向外部求助,而很多時候,在這簡化的過程中,答案就出現了。

所以,如果你問我是不是應該有個 Senior 帶,我覺得這不是必要的,至少在沒有人帶著我手把手做的環境中,我還是活下來了。

轉職至今學習了哪些新技術

我被第一個派的專案是將一個財經社群網站的前後台整個打掉重做,後台正是使用上面提及基於 Vue CLI 的套版進行開發,前台則是 Nuxt.js。在正式投入開發前,我完全沒有接觸過這個基於 Vue 的 SSR 框架。直白地說,我是邊開發邊學習使用這個框架。

雖然實際花費的時間不多,我也斷斷續續地補強了演算法及資料結構,並在 Leetcode 解了一些題目。也許有人會覺得:前端花時間做這些幹嘛,幾乎用不到啊!拿去加強 HTML, CSS 和 JS 不是更好?在這裡我想說:你是對的。至少在我的工作項目上是幾乎用不到的。

然而,我認為學習它的必要性及價值還是非常高的。首先,現在用不到,不代表以後就用不到,不論是在實務還是面試;再來,我覺得練習解題帶給我一個很大的幫助是,它幫助我了解到看懂並拆解問題的重要性,也有效地幫助我降低了在碰到複雜問題時的焦慮感。

因為實務上的需要,我接觸了 Tailwind CSS、數個 UI 元件庫(e.g., Ant Design, ElementUI),因為有個專案在架構上使用了 Laravel + Webpack Mix,我也花了時間學習了一點點 Laravel 和 PHP 語法。

基於好奇與興趣,我也學習了 React.js,不過除了作為練習切了一個頁面之外,至今一直沒有在什麼場景上運用到它。

工作上最重要的一件事是什麼

我覺得作為前端,最重要的是:了解自己所使用的技術。有個以往我很喜歡,現在正努力改善的壞習慣,就是「每種作法都試試看,看哪個可以動」。

CSS 排版不如預期,就打開 Devtool 找到元素,這個勾勾拿掉、那個屬性改成別的值,試出了一個符合需求的排版,就把它貼回原始碼,卻沒有真正去理解為何原先的寫法不行、更改後的就可以;在使用外部引入的函式庫時直接跳去 Demo 看 Example Code,運作不如預期就把問題整理成一句話丟給 Google,而非花一半甚至更少的時間把官方文件的 Get Started 看完等等。

很多不知道為什麼會發生的問題,其實都能在看了 MDN 或其他文件後很自然地就找到答案,偏偏有時候因為急著實作出需要的東西,就忘了這個步驟。如果有確實了解自己寫的這一行代表什麼、改了這個設定可能造成什麼狀況,我相信在工作上自己是可以花更少時間做更多事情的。

會不會後悔轉職

直白地講,我覺得轉職是我在職涯、甚至人生道路的選擇上,做得最正確的一個選擇。投入前端開發後,我才知道其實自己相較簡單穩定,更喜歡有挑戰性、變化大的工作,相較轉職前我有了更好的收入,正常的上下班時間及休假也讓我能好好規劃自己的生活。

然而,投入前端開發或其他開發領域,我覺得是轉職前必須要確定的,就是有沒有熱情。成為開發者就意味著必須要花費額外的時間加強自己的所學,尤其前端技術的更迭非常之快,現在所學的框架、函式庫等等,也許在兩年甚至一年後就會被取代。不斷學習並迭代新知,我覺得是這個領域所必須要做的。

更不用說,這是一件沒有盡頭的事情,因為不論投入多少時間都學不完啊!

延伸閱讀:

如何看待deno项目github源码issue栏目出现“求不要更新了,老子学不动了?”?

Triton Ho: 說過很多次對「全端」看法了

今年有了什麼改變

最後想分享個比較無關的,是我在一個多月前做了一個決定--我刪光了手機上所有需要持續投入,背後有公司不斷經營更新的手遊,而一個多月下來,我的感覺是:這也許是我今年做得最好的決定了。

以上就是我針對轉職一年多來的心得,也作為省思記錄成一篇文,希望明年或更未來的自己都能比現在的自己更好,希望這篇記錄也能分享給路過看到的你。

--

--

Eason Lin
Eason Lin

Written by Eason Lin

Frontend Web Developer | Books

No responses yet