#分享 轉職軟體工程師的路上困難重重,分享身為面試官到底怎樣看轉職工程師?
最近網路上多了很多人詢問關於怎樣轉職加入軟體工程師行業
有些是看上IT行業的高工資
有些覺得可以避免戶外工作
有些覺得可以實現長時間在家工作
因應這些需求
洐生了很多網上課程、Boot Camp教導IT小白在幾個月內學會寫code
這些課程能不能幫小白找到理想的工作?
幾個月的成果能不能比得上電腦科學出身工作了1-2年的同行?
自己能不能靠努力追上同行的進度?
Hi,大家好!我是Programmer小K
在軟體工程界工作的8年期間
也為公司面試過不少軟體工程師
當中不乏已經有幾年工作經驗想轉職的朋友
我會從team leader和面試官的角度來分享對中途轉職的人的想法
如果螢幕前的你是想轉職的IT小白
透過了解我們對軟體工程師的要求
會有助你制定學習方向和轉職計劃
首先我說一下對應徵者的要求
徵才廣告上所寫的技術能力基本上不一定要全部都會
每一家公司需要的技術能力不同
本來就不容易找到100%技能樹符合的人
有時候公司想找到不同背景的人來刺激一下團隊也會列出一些非必要的技能
而且我認為如果是有學習能力的話,要掌握新技術不需要很長的時間
(我自己應徵時更會說2星期總能完成一些功能、2個月左右能初步掌握、往後就需要深造了)
但是如果廣告上的技術不會,作為面試官我一定會問應徵者打算如何快速掌握新技術
聆聽應徵者怎樣制定學習計劃也是我很喜歡聽的項目之一
另外面試中一定會問的就是講解以前參與專案/負責開發的功能
我絕對不建議只用1-2句帶過這題目
比如說我曾經聽過一位說自己參與過一個網上購物平台的開發
平台有顯示貨品、購物車及付款功能
然後就沒有了
這種過於表面的講解很容易給面試官覺得應徵者沒有親身或深入參與過
有些面試官會追問但也有些不會
我們想聽或想知道的是透過這些專案
了解應徵者怎樣發現難題、尋找解決辦法、學習並實踐
以購物平台為例
跟第三方付款平台溝通時遇到什麼困難,怎樣解法
萬一第三方平台延遲或服務暫停時的處理方法
這些資訊可以令我們知道如果應徵者加入團隊的話
會不會需要很多支援以及有沒有能力為團隊/公司作出貢獻
站在面試官的角度
我會把一場面試視為選擇一款投資產品
產品本身價值多少
有多大升值潛力、投資風險的高低
因為除了公司要出工資之外,我/團隊也要花時間/心思去培訓
如果新人是沒有學習能力將來為團隊貢獻的話
這樣就不用懷疑可以下一位了
回到轉職的問題
市場對於不同出身剛剛進入職場的人很難避免會有一些刻板印象
本科出身的,不用問都知道會有知識基礎
(實際寫程式就不肯定,見識過太多Free Rider了)
Bootcamp出身的,系統知識不太深也不太廣,但是會市場上比較新的技術
(公司需要馬上能上手處理專案的未必會考慮,相反願意花時間培訓團隊的可能OK)
自學的,很需要靠面試和看以前做過的專案來了解技術能力
(風險相對較高,但是如果主管/老闆是同樣出身的,通常對這類人很有同鳴願意給予機會)
如果你是轉職小白最近在尋找工作機會的話
我有4個建議
1. 一邊透過面試獲得反饋和了解自己的不足
(可以把最心儀的公司放到最後才面試,爭取時間了解自己及改進)
面試是驗證市場的經歷
有機會面試能夠了解不同公司需要的技能樹,對應徵者的要求
獲得反饋後制定學習計劃,增進自己的技術知識
因為在軟體工程界上想要混得長久,靠的是不斷自學增值自己
而面試就是最直接獲得反饋的方式
2. 關注軟體工程界的最新趨勢
除了埋頭苦幹外
有空可以關注社區/國家/世界在軟體工程界的最新趨勢
有很多渠道可以獲得這些資訊例如Youtube、討論區、TED
(Google Trend也是一個我常用的工具了解市場技術發展)
面試時有些面試官會有這樣的問題
你覺得[當前國家/地區]的軟體工程發展如何?
你平常會在什麼平台關注市場軟體工程的發展?
對於AI你有什麼看法?
這類開放式題目我應徵時也被問過
如果沒有關注市場發展和學習一下的話,競爭力相對上會比其他人低
3. 尋找同好開發小系統/參與開發開源項目
有些工程界的老手或小白會組團開發小項目
例如瀏覽器的外掛程式、Discord bot
他們不太介意小白參與開發,前題是願意學習和請教(不要當伸手黨)
如果你有一些實際與人合作開發的經驗,當中學會的知識在工作上比較有應用的地方
像是團隊溝通、如何使用Git這類合作開發才需要的能力
所以很多徵才廣告都會把Good team player列為必要要求之一
4. 刷題
我把刷題放到最後因為我覺得刷題的主要功用在於面試
並不是提升個人價值 (不過定期刷題可以培養學習習慣,鍛練思維)
無可否認轉職小白的基礎會比本科出身的有段距離
要追上同行一定要花好幾倍的時間來訓練自己的邏輯思維
刷題時我自己一點小心得是先畫流程圖,再把大功能分拆為小功能,最後才寫程式碼去解題
最後不一定能得出成功或最佳的解法,但過程中會慢慢體會到工程師的思維方式
額外有個小提醒
轉職小白面試時不妨可以想想原本的職業對於轉職有沒有幫助
比如說以前是當銷售的,需要經常透過溝通來了解客戶需求,推介合適的產品
你的溝通技巧會比很多軟體工程師強
有了一定開發經驗,知道系統的功能後
絕對有能力代表團隊去參與客戶需求的會議
到時候更可以考慮專案經理的職涯方向
如果你看到這裡有興趣了解更多的話
歡迎私訊跟我聊聊或者在下面留言
我會儘量回答你的疑問
