非本科系轉職軟體工程師指南

文/GoatWang

台灣這幾年對人才的想像似乎圍繞著這幾個詞彙: 跨領域人才、T型人才、協槓青年。隨著這個風潮,最常見的大約是各domain人才希望踏入資工領域,今年已經有不下十個朋友詢問我相關問題,所以整理了一些想法跟大家分享。現在想想…

其實最應該開設跨領域整合研究所的並不是法律系,而是資工系。

非本科系學生找工作的選擇

非本科系如果跨入資工領域,我想以後的發展方向可能必須先思考一輪,我不會說你必須先決定要走哪個方向,但是設想這件事情的過程中,一方面我們可以挖掘程式可以帶給自己什麼價值。另一方面,我們也會發現在找工作上,並不一定會如想像中美好,畢竟台灣的產業環境並不會因為你的改變而改變,以下幾個發展的方向,可能都必須親身經歷與嘗試之後才會有答案。

原產業對資工人才的需求

首先,必須先看原產業對於資工人才是否有需求,如果你原本待的產業相對保守、沒有創新空間(在我的認知裡,台灣很多的大企業大約都是這副德性),以會計產業為例,無論他們再喜歡說「T型人才」、「跨領域人才」這些炫砲的詞彙,他們也不會因為你擁有的技能或經歷比較特殊,就撼動那強不可破的公司規定。

當然,如果你待的產業已經開始投入相關領域,擁有雙背景的工程師就會變得極度吃香,像是銀行產業早已開始積極創立AI部門,如果你同時具有金融跟軟體技術的背景,相信會非常容易找到工作。或是我目前所待的公司興創知能,如果有土木、水利或防災的背景,又同時兼具資訊開發能力,大約很容易被邀請來面試。

新創公司切入的空間

再者,你也必須考量原產業給予新創公司切入的空間。如果原產業的門檻讓新創公司不得其門而入,那也是一大危機。絕大多數的產業他們可以不創新又歷久不衰必定有它的原因,像是資本壟斷性質(如海運或石油),或是客戶壟斷性質(會計或法律)。

像是法律產業的lawsnote算是極少成功的案例,成功了提供原產業一些更方便好用的工具作為切入點,讓原產業的老闆買單。不過,整體來說,這樣的新創公司要如此成功,創業者還是必須承擔極高的風險與代價,還是要看個人的能耐與家庭奧援。

創業

當然,創業也是一個選項,如果你所處的原產業既沒有創新可能,也沒有可期待的新創公司,那麼就只有靠自己了。如果厲害一點,家裡也沒有經濟壓力的話,可以選擇創業,不過風險、成本與生活品質還是很大的考量,畢竟要開發出有商業模式的產品真的比想像中難上百倍千倍,每解決一個問題,就會發現背後更多問題,最終沒有辦法解決的問題只會如指數般放大。

但是創業有個絕對的好處,如果你的公司真的有一些實績,你回去原產業推銷時就不是拿著履歷唯唯諾諾的指望那微薄的薪水,而是依照你產品的價值與原產老闆相對平起平坐的談判,當然,是不是相對還是依照你產品的強度而定了。

完全轉職工程師

最後,你還有一個選擇,就是放棄原產業,完全轉職工程師。這種選擇最可怕的地方在沉沒成本,當你在原產業耕耘的越深,你要轉換跑道的心理障礙也就越大,畢竟那是一個你付出了幾年心血的地方啊…。

學得越多,包袱越重。

另外,有一個重要的考量點,就是我們要有足夠的心理準備,我們將會跟資工本科的畢業生放在同一平台上面比較,當我們失去原有的專業,我們真的有把握可以脫穎而出嗎?

培訓機構或是自學

選擇培訓機構或是自學,最大的考量點當然是在自己的自制力。如果你真的有把握,在剛開始入門程式時、最枯燥乏味的時間,坐在電腦前面,不會莫名其妙滑FB或是Youtube就過了幾個小時,那麼你可以試試看。

其次需要考量的就是,培訓機構營造的環境,畢竟可以讓自己有一群跟自己一樣背景的人可以討論(或競爭),還是會讓人比較有動力去學習。當然相對應的,進度掌握上就有可能要比較跟著整個班級走,無論太快或太慢。

不過必須要注意的是,不管是看網路課程,還是去培訓機構,想要成為優秀的工程師,就必須擁有自學的能力,具體來說,就是沒有人給你問問題的時候,你仍然可以透過Google把問題解決了。這個技能最好的培養手段便是,心中都要有幾個渴望想用資訊技能解決的問題,如此才能不段讓自己對於新技術產生熱情,然後快速地運用所學開發新的專案。

另一方面,也無須期待課程結束之後,就可以找到多好的工作,以我個人為例,我在課程結束之後,仍花了一年的時間,在政大資科系以及Coursera上修了幾門重要的課,參幾次黑客松,然後才開始找工作,詳細的狀況可以看我上一篇文章 —2017 資料分析師的練成之路 。當然也不是說大家都必須這樣安排,也可以一上完課就開始找工作,只是真的不用期待培訓機構出來,可以直接找到很好的工作就是了。

如果真的選擇培訓機構,以下跟大家介紹一下幾間自己比較熟悉的機構。

資策會

資策會算是比較傳統的培訓機構,他比較適合尋求穩定工作的人。

我自己曾經上過資策會微軟C#全端班,現在是AI班機器學習課程的講師,以下跟大家分享一些經驗。他跟另外兩個培訓機構最大的差別是,他會一步步帶你實作,真的是老師做一步、同學做一步。然而這個過程有個很難解決的問題 — 班上同學的進度不一,不是你跟不上老師,就是同學跟不上你。

從技術面上面來說,我上完C#全端班的感想是這樣的,他們很多技術是停留在上個時代的技術。因為他們會考量到,大多數會去他們那邊徵才的廠商的需求,即便這些技術已經過時,為了迎合台灣軟體傳產的需求,以及提升他們的就業率,他們還是會花一部份時間來教授這個部分的知識。

還有,如果你是鎖定AI班,有一點必須提醒的是,他們前半段(前兩個月)的課程都在上跟AI無關的技術: 網頁、基礎語法…。這是好處也是壞處,好處是一般半路出家的AI工程師很少可以同時兼顧網頁的技術,在找工作上多少可以有點幫忙;相對應的,你必須忍受不是AI的課程XDD,多少會有期待落差啦。不過,其實網頁的前後端溝通技術與框架並不是太簡單,甚至比AI演算法還複雜,所以如果有人真的可以帶你操作一次,是真的滿有幫助的啦。

人工智慧學校

比較適合方向比較明確的人,甚至已經有一些問題想用AI解決,想快速學習AI技術的人。

目前我所知道的狀況是,平常日他們會把第一期錄好的影片拿出來給大家看,假日時他們會邀請一些學界或是業界的大老回來演講,但是實務上的學習成效很看個人。這種看影片配演講的方法,讓他們可以北中南平行化處理,號稱一年可以培養5000個AI工程師。

當然,這種作法有好有壞,好處是個人可以按照自己的節奏學習。壞處是有人覺得很沒誠意XDD。喔不是,壞處是個人的自制力也會相對重要,我有看過裡面出來就技術直接突破天際的,也有看過有人畢業後連python基礎語法都不太熟悉的。

不過他們就很純粹的是AI課程,沒有其他像是網頁前後端技術。

Appworks School

比較適合自學能力較強的人。

其實Appworks School算是這幾間培訓機構中個人比較欣賞的。他們充分利用了現有他們覺得比較優質的網路課程,搭配她們設計好的課綱,以及一位導師,幫助大家按進度與節奏學習,並提供同學討論、導師問答與部分的硬體環境,讓整個學習流程變得最有效率。

當然,相較於資策會,你就很難一步步按部就班地完成某些專案,我想這大概是對於某些人比較大的心理障礙吧。

在這邊上課還有一個絕對的好處,就是他們對於自己培養的學生有信心,所以學費的來源是來自於,學生畢業後找到工作時的獵人頭仲介費,所以你找不找的到工作,其實也攸關導師的KPI,當有人比自己更擔心自己的前途時,自己就不用擔心了是不是XDD。

綜合比較

圖片來源:GoatWang

非本科工程師應該鎖定的公司類型

在我看來,台灣的軟體業求職生態大約分成三塊: 大型軟體公司、傳統接案公司或傳產資訊人員、新創公司。

大型軟體公司

從大型軟體公司說起,這裡所指的大約就是Google、Amazon、微軟、蘋果…等。這種公司人人稱羨,畢竟說你是Google工軟體工程師,就跟早年說你是醫生一樣,街頭巷尾的的阿姨都想介紹兒子/女兒給你認識,所以大家削尖腦袋往裡面擠也是在所難免。

在開始談論競爭力之前,我們要先理解大型軟體公司的(研發工程師)人才需求樣態。他們在做的事情幾乎是開發一般軟體工程師用的軟體工具,如雲端系統、作業系統、瀏覽器或是IDE,換句話說,他們是幫助工程師的工程師,他們對於系統、資料庫、演算法甚至資料結構底層的了解要求程度極高,不得不說,在這個層面上,非本科學生幾乎沒有機會根本科學生競爭。

另外,有一個重要考量就是學歷本身(不包含能力的部分),這很有可能會因為公司不同而改變,說白了就是人資是不是台灣人、專不專業或偷不偷懶,畢竟他們一天可能真的要看上百封履歷,如果偷懶或不夠專業一點,就會直接按照學歷來分了,我想台灣人資大多數時候也是這樣。

即便這些大型軟體公司是外商,他們內部進了台灣可能早就本土化,我昨天作夢時不小心夢到,朋友們分享的一些故事。像是M聽說已經本土化的很徹底,最近因為在台灣增設研發部門有好點;G聽說正在走在本土化的路上,畢竟看到H工程師的薪水價碼之後,後面進來的工程師薪水都沒有太好。

還有,另一個難關就是白板題,他們的面試環節可能有3~5個環節,除了人資、技術面試之外,對我來說,最不想面對與練習的約莫就是白板題了。如果你跟我一樣不愛刷leetcode,那麼這些大型公司軟體公司,真的就不用考慮了。

夢想還是要有的,萬一實現了呢

寫了這麼多,其實我想表達的是,雖然機會渺茫,不過如果能力真的不錯,也有耐心慢慢刷leetcode,還是有機會的,不過不要抱太大期望就是了。像我這種毫無資工基礎訓練的半路出家工程師,也還是接過亞馬遜的面試邀約的,不過當時年輕不懂事,沒有去面試就是了QQ。

傳統接案公司或傳產資訊人員

這種工作對於資工背景的要求就不會太多,畢竟他們對於技能的要求也不高。如果是傳產的資訊人員,大約就是維護現有系統,頂多做一點小功能的開發;如果是接案公司,大多就是使用大廠的解決方案,比較誰更能夠快速串接大廠開發好的各項工具(或點擊下一步),然後在時限內繳交成品。

由於其複雜性相對較低,薪資自然不是特別優渥,也不太具有創新空間,不過有個絕對的好處,就是很穩定,餓不死。如果你想選擇這一條路,就去資策會待半年吧,大約畢業時就可以找到這樣的工作了。

新創公司

總體而言,我總覺得新創公司才是我們主要下手的對象。大多數的新創公司對於工程師的要求比較偏向: 快速從產品發想中實作出公司需要的功能(當然也有一大部分的新創公司屬於「技術型創業公司 」,像是Appier對於技術的扎實程度要求就極高)。這種公司雖然在學歷上與札實的資工基礎上有所退讓,不過他們相應的就會有其他要求。

首先,一定要快速累積作品。這方面可以讓他們快速的瀏覽你所具有的能力與他們需求的契合程度,如果真的剛好有牽涉到他們團隊所需要的技術,就可以比較有共鳴跟交集,也容易快速地讓他們對自己感興趣。當然,相應的你所實作的作品就會有比較深度的討論,這方面可能有需要找到相應專業領域的人來問一下實務上的實作方式與技巧,面試的過程比較不會一直尷尬地回答不知道。

再來,很有可能不能只做特定領域的工作。因為人數較少的關係,以AI工程師為例,很多時候除了演算法研究跟撰寫之外,資料格式解讀、資料取得、資料儲存、資料標記、資料清洗、模型部署甚至是網頁的前後端,都會有機會涉略,就算真的分得比較詳細,可能多少還是會寫到API。所以如果有機會,多多培養基礎的全端工程師技能,就算公司不直接要求,對於自己跟其他工程師順利溝通也有很大的幫助。

還有,是一些基本技能,像是口語表達能力或是英語溝通能力,就是看公司啦,大多時候這些技能不會直接決定是否有機會進入某間公司工作,不過很有可能會決定自己在公司裏面的個人魅力或受尊重程度。

總體來說,我很建議非本科系轉職軟體工程師,可以多把焦點放在新創公司試試看,或許會有比較好一點的結果。

找工作是一個滿長的過程–關於心態…

先拿到offer再選擇公司,把主動權拿在自己手上

其實我高中開始,便慢慢發現,自己是個極度容易自我膨脹的人,因此,在找工作的過程當中,常常把自己放在比較高的位階與公司談判,也因此至少失去了兩份工作機會。

其實很多時候,沒有真正與老闆聊過,你並不會真的知道他們公司最近真正在經營的業務,也不會真正清楚他們希望你在公司扮演的角色,所以正面一點來思考,這其實是給自己留條後路、留個機會。

雖然,直至今日,我仍然覺得,硬是要去說自己多喜歡貴公司(即便我前一周才知道貴公司存在,並按下應徵鍵),是一件很虛偽的事,不過實務上,為了把自己放在最有利的地位,我也虛偽了不少回合。

CV在新創公司與大型軟體公司的差異

新創公司講求即戰力,在寫他們的履歷的時候,盡可能把自己會的技術mapping到職缺的JD上,做過專案側重在使用了甚麼樣的技術解決問題;大型軟體公司,尤其是外商,特別看重基礎能力及解決各式問題的能力,所以不需要把技能寫得太明確(像是SQL就不用特別去寫MySQL或是MSSQL,除非JD特別要求),做過的專案則必須側重寫解決了甚麼樣的問題,必須具體化實際效益,例如幫整個流程加速了幾倍,或是幫公司省了多少錢。

舉例來說,我有一個general版本的履歷,也是我投最多間公司的履歷,(約莫60間),而在這一波海投履歷當中,大公司大概只佔極少數約10間左右,不過進一步回信邀約的有Google、Morgan Stanley、Thomson Reuters,新創公司的回應就比較少。不過NLP版本的履歷,對技術的描述比較詳細,則相對比較受到新創公司歡迎。

提醒一下,因為我只有一個人,能夠測試的公司有限,也沒有科學一點的統計手段,大家參考一下就好。

想要找到好的職缺,必須跳脫正常手段

e04、linkedin這些丟履歷當然不可少,但是其實真正好的職缺與欣賞你的人,很可能在現今的推薦與檢索技術上仍會有遺珠之憾。可能「其實老闆會喜歡你,只是你沒機會見到老闆一面」,甚至「直到你見到了老闆,你才發現其實你會滿喜歡他們公司的」…云云,以上種種狀況都是我在求職期間遇到過的。

總之,多參加各種在你專業領域的社群或比賽,認識厲害的人,增加自己的曝光度,並傳達正在找工作的訊息,這對於非資訊背景、卻要找資訊工作的我來說,特別重要。畢竟履歷上面的學歷只到大學不說,還是一個毫不沾邊的財政系,找工作真的極度困難。總體而言,我後面幾個比較重要的面試機會,大都是在PyCon(講者如果上不了,可以衝衝看閃電秀)跟AI+ Solution Match上拿到的。

這邊題外話一下,在AI+ Solution Match上面,我把自己最後一頁的簡報放上我的CV。我早就做好打算,如果台下反饋良好,就打開最後一頁PPT說我在找工作,如果不如預期就把最後一頁藏起來。於是報告快結束時,我被大家炯炯有神的眼睛所擄獲,便很幸運的解鎖最後一頁PPT,不只拿到技術優異獎,也拿到許多間公司的面試邀約,亞馬遜後來的面試邀約也是在這一次的活動中賺到的,如果你們對於自己的黑客松作品內容以及簡報能力有一點信心,不妨可以跟我一樣不要臉的試試看。喔對了,照片在封面頁,大家可以觀察順便想像一下這一頁投影片放出來時,那如雷的掌聲跟笑聲XDD

找工作很可能是長期抗戰,找個技能或興趣學習

其實找工作的過程當中,耐心的等待是一個必要的過程,而如何把等待轉化為一個有意義的歷程,找到一件可以轉移自己注意力的事情便極度重要,也能讓自己在不斷被拒絕的過程當中,淡化打擊的嚴重程度,使得自己比較不情緒化。

因此,在找工作的這段過程中,培養新的技能與興趣,我在這段期間…學會把論文中的演算法透過程式實做出來、學會寫tensorflow、接了一個聊天機器人的案子、參加了兩個比賽其中一個拿獎了,總之一方面轉移注意力,另一方面,持續累積自己找工作時的武器。

最後…

轉職這件事,對我來說並不是一個瞬間的決定,其算是誤打誤撞的結果。當時的我,已經拿到來荷蘭萊頓大學國際稅法碩士的入學資格、雅思也通過了,但是有半年的空窗期,幾乎就是在等出國了,於是想說可以好好利用一下,去資策會學寫code。

沒想到這一學下去就覺得,無論考量到未來發展或是興趣,都比原本規畫好的路好上十倍百倍,於是就繼續留在政大蹭個學生身分,到處修習跟本身系所沒什麼關係的課,然後轉職之路就走到今天了。

必須要說,這個過程當中,我很幸運地並沒有活得太痛苦,雖然期初砸了很多時間進去,但更多的是興趣、驚喜與成就,但這樣的幸運適不適用在大家身上,希望這一篇文章可以幫助到大家。

本文由 GoatWang 授權,原文連結

瀏覽 2,672 次

覺得不錯的話就分享出去吧!

發佈留言

Back to top button