黃得源–在Netflix工作的自由與責任 (Te-Yuan Huang)

TeamUp Taiwan
7 min readSep 28, 2020

工作經歷

Senior Software Engineer at Netflix

Research Intern at Technicolor

學歷背景

史丹佛大學資訊工程博士 (Ph.D. in Computer Science, Stanford University)

台灣大學電機工程碩士

交通大學資訊工程學士

Netflix是什麼?

Netflix是一個網路影視平台,提供線上電影和電視節目的訂閱制服務,相信喜愛電視電影的人,對它都不陌生。自2002年創辦至今,目前在全世界已有九千三百萬用戶,使用者橫跨全球190個國家,在任何智慧行動裝置上,登入帳號就能隨時收看各種類型的電影、電視影集、紀錄片等。早期Netflix只是DVD影片通路商,而創辦人Reed Hastings最早的願景之一,是要將許多小眾的獨立製片和紀錄片,傳達給更多人。以往這些影片的發行量小且成本太高,許多好作品都無法獲得更多關注,現在透過Netflix的平台就能接觸到數以萬計的觀眾,也帶起了很多社會議題的討論。近幾年Netflix開始跨足影片製作,推出多部原創影集包括,紙牌屋(House of Cards)、女子監獄風雲(Orang is the new Black)等都非常賣座。我們今天要和Netflix的軟體工程師得源聊一聊在Neflix工作的想法。

我在Netflix做什麼?

Netflix是一個媒體串流服務平台(media streaming service),將影片編碼成不同格式,分送到世界各地的伺服器,以提供使用者下載觀看。因此也需要和各國的網路商合作,確保使用者有足夠速度跟頻寬播放影片。在這個過程中,我負責的工作是找出最適合的串流演算法(streaming algorithm),也就是在網路客戶端(Client)觀察使用者在播放影片時遇到的狀況,例如播放延遲,找出問題的原因,究竟是使用者自己的無線網路太慢、或是網路主幹壅塞?根據各個因素去設計演算法以處理不同的狀況。設計出的演算法可以根據使用者的頻寬、去決定使用者看到的播放品質,藉此提高整體的觀看經驗品質 (QoE, Quality of Experience)。

至於如何測量觀看品質呢?我們一般使用三個指標:播放中斷、播放延遲、播放畫質。而這三個指標很難同時兼顧。例如你若要高畫質,就必須將一開始的緩衝時間拉長,造成播放延遲的狀況。相反地,YouTube就比較強調播放速度,因此它們會選擇先以比較差的播放畫質開始,到後面才漸漸提高畫質。我的工作需要寫程式去分析許多客戶端的資料,但是又牽涉到網路伺服器的速度,所以也必須和各地的網路商密切合作。

Netflix 的企業文化 — Freedom and Responsibility

每位Netflix的新進員工,都會收到一份有關公司文化的文件,名為Culture Deck。裡面特別強調的就是「自由」與「責任」。公司給你非常大的自由,但是平時你也要對自己的工作負責,這是一個正向循環。例如我們公司的員工假期是沒有限制的(unlimited vacation),但是請假前要跟公司其他同事協調,請別人幫你代班。很多人擔心無限制假期的制度會導致惡性循環,因為同事之間有競爭關係,而你放的假期越多,工作績效就越低,所以為了在績效上不輸給別人,反而很少休假,到最後大家都不休假了。然而事實上Netflix非常鼓勵休假,因為以公司角度來說,不放假是破壞一個平衡,所以我們的主管都還勸說員工休假。很多制度要能運作,必須跟公司文化相輔相成。

Netflix的企業文化中,還有另一種自由是指context, not control。舉例來說開會時主管要求改善使用者的觀看經驗品質(QoE),他會先告訴我公司目前的發展策略,只要跟公司大方向是符合的,如何設計演算法這部份完全交給我負責,在這一點我覺得比學術界的自由度還高。以前面試找工作時,不少學長姐會告訴我,學界的好處是自由,而產業界看到的是實務。但是後來漸漸發現因為研究經費有許多限制,系所也有自己想發展的研究方向,導致學術界未必能享有更高的自由度。以我自己經歷過的幾次面試來說,面試官雖然對我提出的研究計畫很感興趣,卻也委婉地告訴我希望能改成另一個方向,以配合系上整體發展。

公司一方面給你自由發揮的空間,同時也要求高水準的工作表現,Netflix在業界是有名的「不適任就解僱」,只留下最適合的員工,讓公司業績繼續維持指數性成長,這就是責任的部份。在徵人的時候就儘量把需求寫得非常清楚,找到最好的人來擔任,幾乎不收實習生,公司想找能有即戰力的員工,一上任立即開工。

公司對人才品質的控制很嚴格,Netflix一直希望可以維持人數精簡,所以目前全球約1000位工程師,這以公司規模來說人數是很少的,而負責伺服器的團隊也才不過幾十人。我的團隊是負責串流演算法的最佳化,主要工作是如何準確偵測使用者的網路流量,再根據這些資訊來決定要用多少畫質播放影片,猜猜我們的團隊幾個人?兩個!但是人太少如果有一個離開公司,來不及交接該怎麼辦?公司有想辦法處理這種事嗎?有,因為其實平時程式碼寫好提交前都會被另一個人看過(Code review),所以可以確保兩個人都對系統有一定了解。如果負責的人離開了,而沒有人知道程式碼怎麼寫的時候,就只好直接去看程式碼本身。

雖然工作壓力不小,但是我覺得Netflix裡的員工是種良性競爭關係,我的同事們都樂意給我許多建設性的意見。我覺得這跟哪個族裔沒有關係,而是公司主管經營者很重視這個東西,才能建立這樣的企業文化。有一次我跟老闆說我覺得他決定要裁員人的決定是錯誤的,後來我的老闆就來跟我說,我能夠誠實說出自己的想法很好,但若能更委婉的話別人的接受度會更高,我從主管身上學到很多處理事情的態度。

我觀察到Netflix的另一個特色,是大家都對新想法保持開放,對自己的工作很有熱情,有些同事甚至會跳著進公司,說他昨天晚上想到一個很棒的idea,太興奮睡不著覺。我覺得這個充滿熱情的企業文化,在最開始徵人時已經就非常強調,每次面試都確保收進來的人對她/他做的事情很有熱情,不斷的面試不斷地找,很堅持一定要找到最符合工作需求的人,不輕易妥協,因為進來公司後若是無法融入的話也就會被裁員,這樣只是浪費彼此時間,寧願一開始就多花時間找到對的人。

附註:Netflix Culture Deck

http://www.slideshare.net/reed2001/culture-1798664

我的side project

推薦好用資源

聯絡黃得源

https://www.linkedin.com/in/tehuang

Original Published in 2017.

--

--

TeamUp Taiwan

尋找從台灣出發,航向世界的年輕人, 在全球各個領域中努力著的你, 透過這個平台聯繫彼此並分享人脈。我們致力於建立跨領域的人際網絡,鼓勵異業結盟,擦出創意火花,打造台灣人才新契機!