如何自學成為 Instagram iOS 工程師?Jacky 與 Facebook 教會他的事
“I don’t want to be the next Michael Jordan, I only want to be Kobe Bryant.” — Kobe Bryant傳奇球星 Kobe Bryant 的逝世雖然帶給全世界的球迷無盡的思念,卻也持續帶給更多人深刻的影響。在 Kobe 的自傳 The Mamba Mentality: How I Play 中,傳達了他對自我的要求:不要成為比不上原作的複製品(lesser version of someone else),而是不斷追求成為最好的你自己(best version of yourself)。Kobe 的勤奮常為人所稱頌,也是他成功的重要原因之一,象徵其堅韌與永不放棄的「曼巴精神」更是激勵了許多粉絲,包括本週《科技職涯》第二季第 12 集的嘉賓 — Instagram iOS Engineer Jacky。大學主攻電機專業的 Jacky,靠著 3 個月的自學和積極態度,在毫無相關工作經驗的情況下取得了第一份軟體工程師的 offer — KKBOX。之後,渴望成長與跳脫舒適圈的他又在一年內挑戰了台北、香港、加州與紐約四個不同的地區,從新創 9GAG 到矽谷大型科技公司 Facebook Instagram。想知道 Jacky 如何過關斬將嗎?對於自學與轉職、Facebook Instagram 工作樣貌甚至是 Jacky 由自律追求自由的哲學有興趣的話,推薦本集的《科技職涯》Podcast 給你!Podcast 各節摘要02:20 請 Jacky 跟我們分享正在參加的 sofasoda「問問先輩」mentorship program03:50 Jacky 是如何想要從硬體背景轉職成為轉體工程師的?05:40Jacky 是如何自學 iOS 並拿到第一份 offer 的?09:30 為什麼離開 KKBOX?怎麼加入 Facebook 的?12:15 矽谷科技公司在乎人才的 CS 基礎嗎?16:15 Jacky 在 Facebook 負責什麼產品?17:20 後來 Jacky 是怎麼加入最心儀的 Instagram 的?在Instagram負責什麼功能?19:30 Facebook Instagram 的開發文化與團隊編制有什麼不同?22:05 聽說Facebook 的資深工程師會被要求有 PM 的思維與能力?25:55 在 Instagram 遇過最大的挑戰?在Facebook Instagram 最深刻的學習是什麼?32:00 請 Jacky 跟我們分享目前的遠距工作與生活33:40 Jacky 如何快速融入不同城市?台北、香港、加州與紐約的職場文化?37:20 想與 Jacky 聊聊自律成就自由的生活哲學41:20 Jacky 目前在台灣的規劃1. 從電機系畢業生到 Instagram iOS 工程師
為何及如何轉職
因為台灣注重硬體產業, Jacky 在大學時主修電機系,卻在畢業時發現相關工作都要研究所的學歷。而在當時,2013 年的美國,軟體工程師不要求碩士文憑,薪水卻是硬體工程師的 2 倍。
後來 Jacky 因緣際會回到台灣,等待服兵役的期間,他在 iTunes University 中的史丹佛大學課程自學了 iOS。然而,相較於本科系出身的求職者,一個自學、轉職的人對於企業來說風險較高,正因如此,Jacky 需要比其他求職者更加積極,他會在投完履歷後主動打電話跟對方聯絡,每次面試時都會帶著自學做的 sample app 展現自己的能力與熱情。
「Fake it till you make it.」Jacky 說自己一直很相信這句話,每份工作一定都有自己原本不會的東西,但是一定要相信自己做得到。先培養相當程度的硬實力,搭配熱忱跟軟實力爭取到了機會,然後再拚命學習讓自己成長進步、相配甚至超越 Title。延伸閱讀:APP 工程師找工作 大全 - iOS/Android 工程師薪水、應用程式發展趨勢一次掌握
從亞洲到美國
很幸運地遇到了給予機會和大量幫助的主管和同事,Jacky 在 KKBOX 開始了第一份軟體工程師的工作。在 KKBOX 度過了充實的兩年後,Jacky 決定轉換工作、踏出舒適圈。一剛開始他到了位於香港的新創 9GAG,但是因為不喜歡香港的生活步調,加上心中其實一直都有前往矽谷探索的目標,他毅然決然地買了單程機票回到美國,參加了 Apple 的 WWDC(Apple Worldwide Developers Conference),開始進行 networking。
擁有破釜沈舟決心的 Jacky 借住在朋友家,大量閱讀自學 CS 的基本概念(例如 Cracking the Coding Interview)、LeetCode 刷題等,盡力補足自己非本科系出身所缺乏的基礎。Jacky 分享,儘管他擁有實戰經驗,但是像 Facebook 這樣的大公司應徵者眾多,面試過程趨向標準化,因此一些最基礎的技能像是 algorithms in data structure、design system 仍然是非常重要的。Jacky 回憶當時先找了很多小型新創公司做面試練習,把最心儀的 Facebook 擺在最後一位,把反覆練習後的熟稔成果呈現給最理想的職缺。除此之外,referrals 在美國求職也非常重要,而剛好當時借住朋友的室友就是 Facebook 的工程師!
從 Facebook 到 Instagram
喜歡攝影的 Jacky 其實最想做的產品是 Instagram,但是當時剛好沒有職缺,因此他先加入了 Facebook 做 Messenger 一個與新聞相關的產品。時值 2016 年底的美國總統大選,Facebook 上大量的種族議題、假新聞造成輿論沸騰,被指責助長特定風向的傳播並影響選情。在這個時空背景下,Jacky 的團隊被迫解散,鑽研了半年的產品也無疾而終。
然而,Jacky 並沒有因此就放棄,加入 Facebook 後他仍然持續尋找加入 Instagram 的機會、與 Instagram 的主管們接觸並保持聯繫。Messenger News Team 團隊解散的時刻,Instagram 紐約辦公室剛好釋出了一個職缺,Jacky 即時地把握了這個機會,前往同時富含人文與科技的大蘋果 — 紐約。在 Facebook 半年後,因為團隊重組,Jacky 終於有機會加入嚮往的 Instagram,前往充滿人文氣息的紐約工作。2. 在 Facebook 與 Instagram 工作是什麼樣貌?
Engineer Driven 的 Facebook vs. Product Driven 的 Instagram
相信使用者也有觀察到,Facebook App 的功能較多、更新也較快,Instagram 則是相較單純,有許多功能都會先在美國或是主要市場測試一陣子後,才逐步開放。
造成產品有這樣的差異,跟兩邊的開發文化不同有很大的關係。在 Facebook,工程師們百家爭鳴,可以自由開發多種豐富的功能。但是在 Instagram,因為極度重視使用者體驗,功能與介面之間的互動必須經過縝密的設計,要發布新功能較為困難。
Jacky 分享,他也常經歷做很久的 project 最後被砍掉,儘管覺得很可惜,但是完善的使用者體驗讓他更喜歡這樣子的開發文化。也因此,雖然 Jacky 主要負責 Instagram 的 Discovery,但是各組間的合作緊密度非常高,他幾乎接觸過所有功能。
在 Facebook,工程師不只是工程師
在 Facebook,雖然有 PM 的角色,資深的工程師也常被要求要具備 PM 的思維,除了產出以外,也要具備規劃、評估與溝通協調的能力,能夠與 PM 緊密合作甚至能夠做 PM 做的事。Jacky 分享他們有個績效指標「Direction」,就是用來檢測這位 Senior Engineer 是否具備幫助團隊組織規劃、驅動產品前進及進行決策等等。
他以「Good Click」為例。Good Click 是 Search 功能中的一個指標,根據使用者的互動以及停留時間等,協助評估搜尋結果的優劣。當時大家都有共識想要開發這個項目,而 Jacky 被 PM 指定為 owner。接下來他需要找相關的夥伴討論,包括設計師、後端與介面工程師,一起研擬如何改進 UI、優化搜尋結果等。
有個初步的方向後,Jacky 再去找資料科學家,利用數據判斷每個 projects 各自需要投入多少資源、能獲得多少成果,再去權衡各 projects 的優先順序以及決定負責的夥伴。在整個過程中,比起實際 coding,溝通反而花費了更多的時間,除了硬實力以外,Facebook 的資深工程師同時也累積了滿滿的軟實力。喜歡 Jacky 的職涯冒險嗎?來看看 Jacky 完整的 Cake!
如果你也喜歡 Jacky 的履歷,歡迎使用 Cake 製作獨一無二的履歷 🙌🏻
在 Facebook Instagram 最大的挑戰與學習
(1) 5 億活躍用戶的即時回饋
因為用戶量極多,任何的錯誤都會被放大,相反地,每個出色的功能也能夠嘉惠大量的使用者,成就感自然非同凡響。也因為用戶數量極多,數據資料豐富、可以盡情地 A/B Test,有助於產品的優化與決策的進行。
(2) 成功的工程師不只要會 coding
一個產品絕對不只有生產的人重要,隨著資歷增加以及觀察公司內的 role model,Jacky 發現成功的 Software Engineer 絕對不是最會寫 code、產量最高的人,而是能夠將自己的影響力發揮到最大的人。這樣的影響力可能是在各種地方,包括表達自己的想法、組織團隊、分配工作以及與團隊一起成長。
(3) Kill your darlings
這句話是知名作家 Stephen King 的寫作哲學:“Kill your darlings, kill your darlings, even when it breaks your egocentric little scribbler’s heart, kill your darlings.” 意指時刻謹記客觀地審視自己的工作成果,不要捨不得去蕪存菁或是情緒化地面對變化。「Fall in love with the problem, not your solution.」Jacky 以一句饒富意味的話作結。Jacky 在 Facebook 時,數位政委唐鳳來參訪。3. 自律與自由並存的生活哲學
不同城市的職場文化
2016 年對於 Jacky 來說充滿變化,那一年他離開了 KKBOX、前後待過香港加州,最後在年底於紐約落腳。Jacky 說之所以可以快速適應不同的城市,可能是因為自己本來就是很積極在踏出舒適圈的人,在這個過程中他堅持持續參加活動、認識新的人還有 networking,發現其實很多人都很 nice 也很熱心幫忙,這些都有助於他更快融入新生活。
Jacky 鏡頭下的台北、香港、舊金山及紐約。Jacky 覺得加州非常 tech focus,同事們大多自己開車或是坐接駁車上下班,生活較為單調。但是紐約的產業豐富多元,有不同於加州的風格和活力,做事步調更快更有效率,下班後有許多有趣的事情可以做,同事們也很常聚會。
留在台灣的計畫
Instagram 現在全體遠距工作,但是本身興趣多元、也嚮往回來台灣生活的 Jacky 其實早在疫情前就想嘗試遠距工作。看似無拘無束,喜歡嘗試新鮮事物的 Jacky 實際上一個很自律的人,像是他為了轉職而自學新技能、為了拿到面試機會而事先做了大量準備、為了加入 Instagram 持續 networking。他也曾仿效偶像 Kobe,堅持了近兩年每天早上 5:30 起床,一直到今年因為遠距工作才改變習慣。 Kobe 的自律與努力對 Jacky 有深刻的影響。
Jacky 相信自律與自由不是相悖的,有自律才能享有成熟的自由。也因此,回到台灣後他也不吝於為自己安排滿滿的行程,像是單車環島、爬玉山、辦讀書會等等,最重要的是,他希望能像當初雇用他的 KKBOX 主管一樣,利用自己的影響力給予更多科技人才機會,因此他加入了 sofasoda 的「問問先輩」職場諮詢服務,希望可以幫助更多人求職路上不孤單。有問題想要問 Jacky 嗎?前往「問問先輩」讓Jacky 為你解答「產業現況、職場升級、履歷健檢、模擬面試」四個不同主題!我要發問🙋🏻對於 Jacky 的精彩見聞意猶未盡嗎?歡迎到《科技職涯》Podcast 聆聽最完整的分享!如果想要 follow Jacky 的消息或是欣賞他鏡頭下的美景,也歡迎追蹤他的 Medium、LinkedIn、Instagram。更多人才的精彩分享,敬請鎖定 Cake 的《科技職涯》Podcast!《科技職涯》是由 Cake 創立的 Podcast 廣播節目,專門邀請在科技、數位和新創領域的工作者來分享職涯趣事及觀點,每週三固定更新,目前可以在Spotify、Apple Podcast、Google Podcast上收聽,歡迎追蹤