從自身經驗談談職涯上的選擇

Photo by Alexander Schimmeck on Unsplash

每到了程式導師實驗計畫進入尾聲的時候,就會有許多學生跟我討論 offer 選擇的問題,應該要去 A 公司還是 B 公司?對於這類型的問題,如果你預期我能給出一個確切的答案,沒錯,你是對的,確切的答案就是:「窩不知道」

圖片來源似乎不可考

沒在跟你開玩笑,我是真的不知道。我覺得選擇是一件很「個人」的事情。

通常在給這類型的建議時,都會回想起自己以前是怎麼選擇的,換句話說,就是:「你會給 N 年前在選擇第一份工作的自己什麼建議?」

我自己其實相當滿意我的第一個選擇,有興趣的可以看回顧文:成為前端工程師的四週年回顧,那時候我也不確定自己想做什麼,進了公司以後先學了 Node.js,寫一些簡單的後端小東西,也複習了 Android,修改了自家提供的 SDK 以及回覆廠商的問題,後來也學了 React,把前端的一些地方用 React 來重構。

前端、後端跟 Android 我都碰過了。對於這樣的工作內容,有些人就會覺得太雜了,樣樣通樣樣鬆,這樣到底有什麼用?但回頭來看,確實還滿有用的。正因為每個都懂一點,所以在討論相關知識的時候我都可以插上一腳,能比別人更快理解背後的脈絡以及系統的全貌,我覺得其實滿有幫助的。

有關於職涯的選擇,其實我過往的文章也都有談到一點,像是在 2016 年年底的:《一個資淺工程師年末的自我省視》中,我談到了廣度跟深度以及小公司跟大公司的選擇:

我自己第一間是待新創公司,待一年多之後其實想換到大公司去工作。為什麼?因為我想體驗大公司的開發流程。在很多新創公司,開發都沒有什麼流程,規則比較鬆散。例如說我自己一個人負責那整個專案的話,我要不要寫測試、程式碼風格要不要統一,這一切都取決於在我。有也可以,但沒有也可以,沒有人會管你,但是也沒有人會給你一些建議。優點是非常自由,缺點就是沒有人帶。

所以待久之後,就會想體驗一下大公司的開發流程到底長怎樣,想要試試看跟別人分工,而不再是自己一個人做一個專案。有人可以互相討論、互相指點,彼此教學相長。

不過無論是哪一種類型的公司,我覺得最重要的還是「找一份可以學到東西的工作」。這個道理很簡單,你一天必須花八個小時在這一份工作上面,如果你在這份工作已經找不到什麼可以學習了,那你的成長就停滯了。雖然當個薪水小偷領這些薪水也很不錯,但我覺得你也必須考慮到你之後的職涯發展(除非這份工作你本來就是要養老用的)。要找一份學得到的東西的工作,你才能邊工作邊成長,對你自己的生涯發展也會更順利一點。

在 2017 年 4 月份的:《該進大公司還是新創?》一文中,我給出的方向是:

再者,其實「我應該進大公司還是新創」這個問題其實也問得不好。如果對方真的只問:「我該進大公司還是新創?」這種問題,那我也會覺得這個很空泛很爛。但就算對方這樣問,其實我們也還是可以再追問幾個問題,才會更明白提問者想要問的到底是什麼,例如說:

1. 你為什麼想(或不想)進大公司?

2. 你為什麼想(或不想)進新創公司?

3. 你目前猶豫的點是什麼?

以我的經歷來說,通常會問我這個問題的人,可能是已經拿到一間新創公司跟一間大公司的 offer 了,這時候才會提出:「我該進大公司還是新創」這個疑問。

而他們通常會提出這個疑問,其實背後的點有可能是:

1. 以職涯發展來說,大公司的經歷會不會比新創更吃香?至少大公司大家都聽過

2. 聽說新創做的事情比較雜,會不會到那邊之後什麼都要做,反而比較像打雜的?

3. 聽說在大公司只能當小螺絲,只負責其中一部分,會不會很無聊?

4. 聽說人很少的小公司因為培養新人的成本很高,來了就不想放他走,是真的嗎?

5. 在新創公司如果公司倒掉怎麼辦?

6. 新創公司的升遷跟獎金制度聽說都不完整,那選大公司是不是比較好?

因為原本的問題範圍太大,所以我們必須把這個大問題切成很多的小問題,其實這些小問題才是重點。而且你把這些小問題解決以後,大問題也就跟著解決了。

接著在 2018 年年底的《兩年過後,我能夠被稱為資深工程師了嗎?》,我重新回顧了兩年前的文章,並再次針對廣度與深度的問題給了一段回答,覺得先廣再深很不錯:

兩年前我覺得自己廣度比深度多很多,因此我寫了一大堆文章針對不同的主題深入研究,讓自己對技術的理解變得更深。

那廣度呢?有了深度以後,我對廣度便不是這麼在乎了。我在第一份工作時還沒決定好自己想往哪裡走,因此我用 node.js 寫後端,用 react+redux 寫前端,還用 Java 寫了 Android 的 App。

可是在那之後我變成了專職的前端工程師,因此對後端技術便不是那麼關注,有哪些新的潮流我都不知道,更不用說 mobile 了。還是會維持一些基本的敏感度,例如說知道新出的 Flutter 之類的,但也僅僅知道這個關鍵字而已。

這其實也是我想走的方向,我覺得先廣再深其實是很不錯的一件事,你得先廣才能去找到自己想走的方向,並且也在這段時期累積一些對其他領域的基本理解,接著才走深,去深入理解你選的那個領域。

以我來說,我在廣度時期讓自己理解後端、Mobile 開發或是一點架構層面的東西,這些都對我之後的職涯很有幫助,至少我有基本的概念,不會什麼都不懂。

而 2019 年 2 月的大雜燴文章《程式相關問題一網打盡:談自學、轉職、出國、職涯、教學、補習、騙錢、產業以及努力》中,對於工作的選擇我給出了一個比較大方向的建議:

選工作的時候應該優先考量什麼因素?

我自己會優先考量的是發展空間,在聽到工作內容時就差不多能知道在這間公司的發展性如何,我這邊指的發展性不是指說在公司內部是否能升官,而是指說個人能力的提升。

舉例來說,我現在這間公司找我的時候跟我說他們要把整個平台砍掉重練,所以我就知道如果進來的話,能夠跟著一個中型專案從無到有一路建立起來,我覺得這是很寶貴的經驗,所以對我來說會覺得很有發展空間。

這個邏輯可以套用到另一個問題:「什麼時候該離職?」,當你覺得發展空間有限,能學到的東西不多時就差不多可以離職了,到一個更有挑戰性的環境去。

除此之外,還有很多人會選團隊,覺得團隊對了整個就都對了,因為你有那個氛圍、有那個環境,就會是一個很適合發展的地方,大家互相砥礪一起進步。不過我從以前到現在都沒進過什麼大團隊,同事也都沒有真的到很厲害所以我還沒有機會體驗到就是了,或許等我進這種公司以後再來寫篇文章跟大家分享。

一直到 2020 年 4 月我自己重新出去求職,從《關於求職,連我自己都不知道我要什麼》一文中可以看出,其實我自己也不知道該怎麼選擇:

在求職的時候,有一些問題很常被問到,像是:

1. 你這次求職想看一些什麼類型的公司?

2. 你的職涯規劃是什麼?

3. 你在工作上的目標是什麼?

有些問題我以為我知道答案,但沒有,我不知道。

舉例來說,一開始我都說這次求職沒有特定喜好,想要到處看看,所以公司類型都可以。想要到處看看是真的,但是都可以是真的嗎?這次也看了博奕業,但如果拿到 offer,我真的會去嗎?可能不會。如果公司很遠在南港,我會去嗎?也可能不會。

一開始也看了滿多小公司,直到真的面試之後才發現,小公司我真的 ok 嗎?還是我這次其實想要找比較大一點的公司?我不知道。

沒有限制是一種自由,但也是一種困擾。

你想找什麼職位?資深前端工程師?好啊。那如果有 team leader 的位置呢?好啊,也可以試試看。那如果是全端呢?好啊,我也不排斥。到處看看是好事,問題是最後要怎麼做選擇。因為最後能選的只有一個,沒有什麼我全都要這種事,很多工作條件是互斥的,不相容就是不相容。

如同我開頭所講的,我覺得選擇本來就是一件很個人的事情,別人的最佳選擇不一定是你的。而以我的個性來說,我相信所有的選擇都是好的選擇,相信每一個選擇都有價值,也相信自己有能力改變環境。我不相信有什麼「一失足成千古恨」的選擇,就算真的有「比較差」的選擇,我也覺得自己能換個角度從中得到收穫。

所以對於選擇這件事情,如果以我自身出發,我通常給不了什麼好建議。我講出來的話大概都是:「不錯啊,可以試試看」或是「OK,沒什麼問題」之類的,因為我是真的覺得問題不大。

但如果直接把這一套用在學生上面,似乎就會顯得失去了身為一個導師的價值。對於職涯選擇的問題,我期望自己應該要能給出更有價值的答案,或是對他們更有幫助的答案。

大多數人都害怕選錯,都希望選到價值最高的那個,但是怎樣才叫做價值高?薪水高嗎?那如果薪水很高可是都用一些很偏門的技術,導致下一份很難找呢,這樣算是價值高嗎?

為了避免在這個問題打轉太久,我就先把價值定義成是「對自己成長性最有幫助」好了,從這個價值觀出發,有兩條路我都覺得不錯。

第一條是我以前的老路,進入一間你做的事情會很雜的公司。你或許會寫一點後端,也會寫前端,甚至寫到 App 去也都有可能。會推薦的原因有三個,第一個是我親身經歷過以後覺得這樣滿也幫助的,第二個是如果你對於職涯還沒有明確的規劃,都先做做看也不錯,再看看自己喜歡哪個。第三個是假設你真的很篤定要走前端,那你未來很有可能碰不到其他領域的東西了,如果不趁著第一份工作玩玩看,之後工作上就玩不到了。

第二條則是直接往想要的方向走,例如說想做前端的話就專門去做前端,只要認真工作個一兩年,大概就能把前端的技能練到一個深度,跟第一條路相比,這一條路在前端上的專業技能會更多也更深一點,但就是缺乏了一些廣度,我也不確定之後能不能補得回來。

在團隊型態跟工作方式上,最理想的形式應該是有制度化的,例如說有個完整的開發流程,跑個 scrum 然後各種 meeting 都有開,上版也很有制度,開發上也有 code review,團隊裡面還有資深的前輩可以指導,這樣當然是最理想的形式。

我自己是一直到最近兩間公司才有比較完整的開發流程,也是這時候才知道原來完整的流程是長這樣。雖然說完整的開發流程並不代表比較快,也不代表比較好,但好處是你可以先知道全貌長什麼樣子。未來到了小公司或是新創公司,你可以決定是否導入這套流程,就有一個依據可以參考。

理想的開發環境很少,因此競爭的人也多,需要衡量自己是否願意為了這個機會付出更多時間在找工作上面。我自己的建議會是設個停損點,例如說一兩個月沒找到就先去上班了,等你磨練個一兩年之後,進這些公司的機會就變大了,就可以再去挑戰一次。

對於轉職的人來說,無論去哪間公司都會學到東西,花三個月等一個理想中的 offer,不如先花三個月去上班看看軟體工程師的工作長什麼樣子。

在談選擇的時候,害怕選錯背後的原因大部分都是因為重新選擇的成本很高,例如說魷魚遊戲的那個二選一踩玻璃好了,選錯就掉下去,就會很害怕選錯。但如果選錯只是退到上一格呢?應該就不會害怕選錯了,因為選錯的成本很小。

在工作上也是這樣的,選錯的成本可能沒有你想像中的高。我身邊就有幾個進了公司可能幾天或是幾週就發現不適合,立刻辭職然後找尋新工作的案例。很多事情真的只有進了公司才會知道,面試的時候再怎麼相談甚歡,都不如工作個一兩天來得實際,有些可能面試聽起來都不錯,進來才發現一團糟,或也有可能相反,面試不怎麼樣,進去發現是天堂。

在現今軟體相關的工作需求還是滿多的,因此選錯頂多就是辭職開始找下一份工作,對自己跟對公司來說即時止損都是不錯的選擇,既然不適合就沒必要勉強繼續待著。

好了,這篇寫到這邊我也不知道自己想表達什麼。我一開始寫這篇本來標題取叫:「工程師的第一份工作該怎麼選?窩不知道」,後來想想應該還是有些建議跟面向可以參考,就改成現在的標題了,但寫一寫還是發現這個主題我寫得滿差的。

追究於其根本原因,我想還是因為我自身的價值觀吧,我相信不管去哪個環境都可以學到東西,而「繞遠路」也不一定是真的繞,看似繞路的那些足跡,或許在未來會成為不可或缺的助力。只要能夠幫助自己成長,我都認為是好的選擇。

最後還是給出幾個在選擇工作時可以先問自己的問題做個總結:

  1. 你理想中的工作型態是什麼?
  2. 你討厭的工作型態是什麼?(通常要工作過才講得出來就是了)
  3. 你在這一份工作想獲得什麼?假設一年後離職了,你的履歷上想要有什麼成就?
  4. 你未來三年的職涯規劃是什麼?你的履歷想長什麼樣子?
  5. 你目前猶豫的點是什麼?是害怕選錯以後成本很高嗎?

--

--

--

重度拖延症患者,興趣是光想不做,有很多想做的事,卻一件都沒有執行。無聊的時候喜歡寫文章,發現自己好像有把事情講得比其他人清楚的能力。相信分享與交流可以讓世界更美好。Medium 文章列表請參考:https://aszx87410.github.io/blog/medium

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Huli

Huli

重度拖延症患者,興趣是光想不做,有很多想做的事,卻一件都沒有執行。無聊的時候喜歡寫文章,發現自己好像有把事情講得比其他人清楚的能力。相信分享與交流可以讓世界更美好。Medium 文章列表請參考:https://aszx87410.github.io/blog/medium

More from Medium

Lean In to Love with Frank Ostaseski

Is Impulsivity Controlling Your Life? How We Can Control Our Impulses

How to find the best antivirus software for windows

Saying No to Peer-Pressure