黃美玉(Microsoft)



訪談對象:黃美玉學姊(台大資工第六屆)
訪談時間:2013年12月14日
訪談人員:梁惠賢(b01902123) 盧俊輝(b01902127)
背景:台大資工系畢業,於CMU取得博士學位,現任職於Microsoft.



當初為什麼會選擇唸資工系?

  當初為什麼唸資工系啊,因為我覺得不是唸電機就是唸資訊嘛。我是想唸理工科的,不是理科就是工科,當初想就是工科容易找工作,那麼資訊跟電機兩個要選擇的時候,我覺得資工系比較適合女孩子吧。

那麼你讀這個系之前,有寫程式的基礎嗎?

   沒有,我們那時候資工系才第六屆,然後交大的資訊系好像也才第二、三屆,那時候台灣在資訊系還是才剛起步,甚至於我們的師資都沒有純Computer science trainning出來的,都是別的系啊,數學系、電機系的老師過來充數的,所以我們那時候師資不夠充裕。那高中、初中更不可能有甚麼編過程式的經驗的。



那沒有基礎讀起來會有遇到甚麼困難嗎?

   不會。這個學東西不光是在於你的年紀。我是學資工的,今年剛滿五十歲,如果我今天打算去做生物化學,真的有興趣,我現在就去學,也沒有甚麼吃虧或跟不上啊。這完全在自己Self-driven,自己的Motivation,自己想不想學而已。我覺得這個沒有差別,你夠聰明,你願意學,一下就可以Pickup。但是如果你基礎不夠,又不願積極進取,那就真的困難了。

系上有的同學沒有寫程式的基礎,在學程式方面可能會遇到一些困難。對於這方面有問題的同學,你會有甚麼建議?

我覺得寫編程式有一個,我自己感覺很好的學習方法。剛開始要讀那個最基本的書,例如C++的那個專門的書,Hello world的這些。大概讀完一個Chapter就會有基本的概念。然後自己可以編寫一些很簡單的程式,不要太難。然後再下來,你要去讀別人的Code,去讀別人的程式,去看懂它。最好是讀高手寫的程式,那可如獲至寶,功力很快就會上去的。當然最後還是自己經歷過一次又一次的coding,一切技能才會變成自己的,運用自如。

我發現自己的工作上招進來的新生,有些人很奇怪。如果說我給他一個任務,叫他去編程序,他自己可以編。他就會自己想我要怎麼Design我的Data structure,我要怎麼寫。但是假如我今天是已經有某一個人寫好的一份Code,然後那個人已經離職,或者現在是assign去做別的工作了,然後新進來的員工再接手別人的工作,他卻沒有能力去讀懂別人的code,然後去把它吸收過來再Improve。這個是一個很奇怪的現象。

我覺得很會寫Code的人,也應該有能力去看懂別人的Code。所以一個學習Coding的方法,是要去讀別人的Code,而且是要看那種好的Code。譬如說你知道說某某學長或學姐寫的程式,大家風評都很好,你就去看那種好的Code。

我當初在CMU唸博士班博一的時候,我就是看李開復的Code。首先,你要先唸理論,像是我們那時候做語音識別,是用HMM那個Model。我先把那個基本、基礎理論看懂了,然後再去看他的Code,知道說他是怎麼樣對應,怎麼樣把理論對應到我實際、真正拿到的Data,怎麼樣去Match。其次,我在看他的Code裏頭,有一些地方,他用了一些很聰明的Trick。那種聰明的Trick,有可能是他自己想的,也有可能是去網路找的。網路雖然能找得到,但是要知道用甚麼Keyword去找,這是很困難的。所以你看那種很會寫Code的人寫的Code,你就會學到那種很好的技巧。

譬如我知道台大資工系的林智仁老師,現在有一個SVM,很多人在用,很蠻受歡迎的。所以我猜他的Code寫得不錯的,像那種Code就值得讀。但是那種Code要讀得懂的話,一定要先唸SVM的理論,然後才能看得懂。那這個不是那種剛上大學的人可以看得懂的。因為這個還有理論基礎要先學會,我只是舉個例子。但是你要是大學生,想看看人家怎麼編程序,大一的就去找大三、大四的學長,問他以前有沒有做過甚麼Homework,那個Homework題目是甚麼,你先把題目弄懂了,然後看看人家的Code。我覺得這個對於一個學生學習自己編自己的程序是有幫助的。

你覺得有那些課對將來的工作會有幫助?

我覺得學資工,大致分兩類,一是專門走軟體工程。軟體工程的話就是要很會寫Code。通常學硬體的人比較會碰到那麼Low level的Code,我們資工系大概都是寫High Level的Code,你用C++、C#或是Java這些Language去寫。那寫這些Code,如果你是從事Software Engineering,Coding很重要。Coding要寫得好,邏輯、推理的能力要清楚,你寫出來的程式才能夠比較Logical,別人看得懂你的Code也看得比較容易。所以假如你只是純粹走Software Engineering的話,Coding經驗很重要,Coding base on your logical trainning,所以一定要做一些邏輯的訓練。我們以前大學大一的時候,邏輯是必修課,是哲學系的老師教的,他講得比較理論性。當初我看不懂我這個邏輯跟我每天在做的這個Program有甚麼關係,但是事後寫了這麼多年Code以後,覺得寫Code的也是需要邏輯能力。不過我不確定,去修一門理論性的邏輯課,就一定能幫助你的邏輯思考。我覺得當偵探需要極大的邏輯思考能力。或許多看點福爾摩斯書籍,會有幫助。

另外一種是要走比較用數學的模型去做Research的。現在最Popular的Topic,Machine Learning,建議最好去修一下。Machine Learning 就是用一些統計學的方法,然後根據你收集到的Data,去推導,去Predict你還沒有見過的Data。譬如說,氣象預報。你收集到很多資料說氣壓怎麼樣、濕度怎麼樣,那麼明天下雨的機率就怎麼樣。所以The Probability of going to rain tomorrow是一個Function of底下幾個Variables,一個是當前的濕度,當前的氣壓等等這些因素,然後就根據以前幾十年來,或是幾百年來Collect的Data,怎麼樣用這些參數去Predict下一天,這是要用統計的方式。如果學這個東西的話,統計學一定要學。

現在Machine Learning 是非常非常Hot的一個Topic。因為你如果數量很多的話,你可以找到一個最佳的方式,去Predict下一件事情會發生的機率,With the minmum prediction error。這種Machine learning 的Approach不管你用哪一個Algorithm,現在是Apply到很多很多的領域證明都是可以Work的。所以如果你們想走這方面的話,一定要修統計學,然後數學要好。那你剛開始學的時候就是去上這些課。上Machine learning的課的話,就去學一下說甚麼樣的問題用甚麼樣的統計學方式去解決,有甚麼樣的結果。

將來你唸的PhD的時候,要培養自己有這個能力說我今天發現了這個問題,那你怎麼樣去Formulate這個Problem using a mathematic formula。當你把一個Problem用一個數學式子表示之後,要修微積分,你就可以微分,然後看看可不可以導得出來一個Close form的solution,去找到你最佳的參數,找不到的話是不是用那個牛頓求根法或是Approximate的一些數值分析的方法,去盡量去找到至少一個Local optimal的Point。

所以如果你要走Machine Learning,統計學這方面,你要學統計學、微積分、Machine Learing。這些對我現在的工作來講,這些是非常非常需要的。但是如果你是要走第一條路,軟體工程,寫寫Code,這個數學沒有那麼重要,邏輯比較重要。

你覺得台大的資工系的學生比其他地方資工系的學生有哪些優劣?

台大一般來講有它自己的文化背景跟歷史背景,進入台大的學生對自己都有一定的期許,所以再怎麼差的系也有一定的水準。我們講台大資工系跟電機系,因為這兩個系比較接近。我覺得跟台灣其他大學的學生相比,台大的學生一般來說是比較優秀的(當然會有例外)。




但是我跟中國大陸的學生接觸也很多,我可以說中國大陸最近這十幾年來,進步得非常非常快。這是一個Youtube採訪,講述今天中國大陸的發展情況,它不是講學術界,講的是工業界。因為我現在人在大陸,剛好來中國大陸工作滿一年了,我一年看到的這些東西,跟這個Youtube 這段Video講的,我非常認同這一段影片的內容。我很鼓勵大家好好聽聽這個影片。

整個中國大陸,就像美國的那個矽谷一樣,美國的矽谷是全世界IT,Technology最活躍的地方,然後很多小公司,StartUp。很多人自己有一個Idea,不願意去當人家的員工,選擇自己出來創業。剛開始你要有那個天使投資客幫你投資,然後你就慢慢做大,有很多公司都是從小開始做起。像apple從家裏車庫開始辦工,美國 這種從小公司到成功的這種例子很多,所以在加州,矽谷那邊,很多有錢人願意投資這種小小的公司。

今天很多這些投資客,都是來自於中國大陸的有錢人。在中國大陸國內,到處都是這種StartUp。甚至於政府都非常鼓厲你出來StartUp,你有什麼好的Idea 就出來創業,然後政府會給很多的那個資金的獎勵,會給你一個StartUp 的 Funding。它也很鼓勵國外的人進來中國大陸,它會給國外人特別有一些激勵。比如說現在我是從美國過來,出來創業,那我可以申請,很容易就申請到中國大陸給我個五百萬、一千萬的人民幣的這種補助。所以整個中國大陸在工業界非常非常的活躍。

然後這段Youtube 就是告訴你說,中國現在有哪些Amazing ,中國人口多,教育也非常的普及,能夠上網的人,會用網絡,或許是手機的人,那都是幾百個Milloin 當作單位的。因為工業界這麼活躍,學生如果只是唸Undergraduate大學部的學生,都很容易在業界找到工讀的機會,去看看業界需要怎麼樣的技術,看看業界想的是什麼,現在最紅的Topic 是什麼。

這些學生從大學一直到碩士班、博士班,都是在業界有很多工讀經驗的。這和美國很像,這些工讀經驗除了讓你看到外面怎麼做,讓你真的是做實際的產品,有寫Code的經驗。所以我覺得這些年來,一般來說中國大陸的學生畢業程度, 比我們台灣畢業的程度還要好。

所以這個台灣真的是要能夠自覺,我知道台灣現在有一些制度,就是送台灣的學生到國外做交換學生,這是很好的。但是交換學生到另外一個學校,畢竟還是學校,台灣能夠到業界去工讀的機會還是少。而且台灣的業界做的東西,一般都是別人已經研究好的,然後你去讀他的Paper,再重新做一遍。在中國大陸因為很多外商投資,像微軟這種外商進來,所以慢慢改變中國國內一些大公司像百度、騰訊。這些大公司現在也開始很熱烈的參與國際的conference的活動,他們也會送他員工去這些Conference、或者是去visit,也會讓很多大學部,碩士班的學生過來做 Intern。這些公司,他做的就比較前端,尤其像Microsoft 做的。你來Microsoft 來當 Intern ,別人可能一天只工作8個鐘頭,你工作8個鐘頭只是把你份內事情做完,如果你還想學點別的東西,跟你工作可能無關,都可以找到專門的人教你。

所以你到工業界,尤其到那種比較前端的工業界去工作,你可以學到很多很多的東西。中國大陸,有着這麼多的公司, 提供學校這樣一個很好的環境,我們台灣還是缺乏。我前一陣子,有找一個台大的學生來這邊工讀,但這是剛開始起步。我是希望說,台灣要把眼光放大一點,不要只是在國內看到而已。國內的Training不是不好,但是你一直在同一個學校裏頭,你看到的就是那個學校的Style 而已。你沒有去接觸過別人,也沒有到業界去看過業界到底需要的是什麼。



你當年是排球校隊,現在你還有沒有做運動?

有啊,我現在還打排球啊。 排球這種東西啊,就是會打跟不會打差別很多,排球是需要受訓的。你沒有受訓的人的話,除非你很有運動細胞,否則對你來說排球是很Suffering,因為打起來很痛,什麼的。 但是我覺得只要受訓過會打排球的人,一輩子就會愛排球。你跟本不可以跟這個運動失去聯絡的。你會沉迷的。我也很喜歡書法、國畫和園藝。只是還沒有學會怎麼在百忙之中,把這些也穿插到生活之中。那也看出去,排球在我心目中還是占著更重要的地位了。



怎樣分配學習運動的時間呢?

你們現在可能課業比較重吧, 因為我覺得現在師資很好,我好幾個同學都在資工當教授,還有幾個學長我認識的學姐的。我覺得我們那時候師資不夠,我到大四我就沒課可修了, 所以我大四的時候就在工讀,我一個禮拜有兩天根本不在學校。我覺得我那時候功課沒那麼重耶。我覺得師資不夠所以很多東西要自己學,我的C也是自己學,有很多課都是自己看書自己學。

至於分配時間,身體一定要好,這是第一。所以我覺得我打球其實對我是只有幫助,沒有壞處。因為我們那個球隊訓練是Regular的,不是說偶而打一次的。我們練球每個禮拜兩次。 然後到了大專杯比賽之前,又有集訓,這樣訓練下來,體力就比較好,所以我很可以熬夜。而且我做什麼事情都特別興奮,我喝咖啡沒有用的,我只要累,我喝完咖啡我都可以睡覺。 喝什麼都沒用的,我累了,我就睡;但是我要醒來,我想說我今天想學什麼,我今天想做什麼,我就興致勃勃, 我就真的全力下去衝。

我讀一些喜歡的書,比如說這個Switching theory,我不知道你們有沒有這門課,我們以前是必修課,然後那時候用的那個教科書,很難。教的是一位老教授, 他教得不是很好,但是他選的這個教科書很好。那個教科書就是從那個理論,到練習作業,後面有Homework,非常非常的邏輯,很容易Follow。然後它後面那個Homework,Homework都是optional ,老師沒有指定我們做,但是那個Optional ,老師有指定我們做幾題,但是,他每一個章節,Homework 是很多的,有一些簡單的,有一些很難的,然後老師一般都是挑一些比較中等的給我們做。然後我做完了之後,我還自己去 Challenge 自己,挑一些一兩題難的。那我當初不知道,這種教科書其實都有教科書那種Solution book 可以讀,我不知道有這種書可以讀。所以自己要去絞破腦筋,那這個跟老師指定的功課無關,是因為我喜歡這門科目,我自己會花時間。我想如果你找到自己的最愛,你也會這樣的。

所以我剛剛也在講,中學的時候沒有寫過Program,現在才上資工系,現在才學Program不會比較吃虧。你自己想學,你就會去很賣力去學,你早學晚學一樣會學會。假設,你今天資工系畢業,你大學時候都沒有做過 Intern ,另外一個人,也是資工系畢業,但是他大學的時候在外面做過Intern,他寫的Code 比你多,你這樣去應徵的時候,去應徵一個工作,那有經驗的那個人肯定會比較吃香,這是 First Impression 。但是如果說,那個公司有兩個 Opening ,他兩個人都給你僱進來,然後僱進來之後,你自已也非常賣力,你可能第一年表現沒有另外一個有經驗的好,但是你自己很 Motivated ,你自己學習得很快,你有可能第二年就跟上啦。

這是你個人的Self-drive, 你自己願不願意說,像我就是。我可能是一個偏激的人,我有興趣的,我就拼命拼命往前衝。像是 Switching theory ,我很喜歡就拼命做,老師沒有交代的,我自己也做。然後另外有一門課叫電子學還是什麼的,那個完全就是Hardware,講電子那個 Transistor什麼什麼,電流這個方向那個方向,第一,我沒興趣,第二,我們那個老師超級爛, 用的書也不好。那個科目我就差點被當。

你將來出去找工作,我不能保證,每一個 Interview 你的人都是這樣看,如果是我Interview 你,我要的是 Machine Learning Background 好的人 ,然後你這個電子學很爛,你這個英文是普通,你英文不能太爛,因為我們這是美國公司,美國公司我們會經常會需要跟外國人Communicate 。英文還可以,你電子學不好,這些我根本不管你的。 我要的是你我需要的專科方面你好不好,你邏輯思考怎麼樣。

但是我不能這樣的告訴你,然後你就說:好,我不喜歡的科目,我就隨便過關就好了,到時候你申請學校申請工作,被叼難說:都是那個黃美玉學姐害的。

我就可以講,我個人是這樣子,但是,我一般來說,是盡量均衡發展,我是碰到那種很討厭的科目的時候,我實在不知道怎麼辦的時候,我才會放棄。這個電子學跟甚麼經濟學,這兩個科目是我唯一放棄的,這是勉強過關的,其他科目我沒有放棄。我國父思想也考得很好,我覺得國父思想因為要背書嘛,我很討厭背書。但是我可能運氣比較好,我們那時候期末考的時候老師問了一個題目,然後叫我們發揮,我就決定豁出去了,我就想說反正這個科目我本來就很討厭,考試也大概考不好的,我就發表自己的意見。我自己的意見不一定跟孫中山一樣、不一定跟現在當政的一樣,我就洋洋灑灑寫了一大篇。老師很欣賞我,還給我蠻高分的,所以我國父思想還好。中文也還好,我一般課程都還是蠻balance的啦。就是一兩個科目我實在是沒辦法的,這個我不喜歡就是不喜歡,這個我覺得強迫自己唸下去我就開始哭了,只好投降。




在升研究所跟出來就業你怎麼選擇?

我自己出身寒微,所以出國讀書,當初只有一個想法,如果不是很好的學校給我奬學金,我就不出去了,我自己想得很清楚。我覺得你自己的前途自己要想清楚,去不去。我當初就想,要不然就留下來資工系唸碩士班,要不然就出去工作,那如果我要出國的話,一定要讓我覺得值得去的,如果是一般的學校,那不一定比臺大好啊,然後我又沒錢。如果美國學校不給我奬學金那就別談了。那剛好是因為申請到CMU的奬學金,這是美國top three 的學校,沒有理由不去的。但是我當初是已經考了碩士班了,我知道說如果我學校申請不好,我可以留下來諗碩士班。




所以當時已經決定要唸碩士班?

不是不是。我是這樣子。我大學畢業的時候,工作了一年,留在在系上當助教,因為你申請研究所,你要甚麼老師的介紹信啊,還要準備很多材料嘛。我大四就在外面工讀,已經太忙了,我已經沒有時間弄這個,還要考TOEFL,GRE。我這個背到英文生字我就很頭痛的,我是一提到背書就想哭的人,我實在是沒有那個精力去處理這個TOEFL、GRE,然後甚麼申請書,甚麼甚麼這一大堆事情。這是其一,所以我沒有大四的時候申請,我畢了業一年就當助教,一邊工作一邊弄這個。然後第二個原因是,你申請學校要交申請費,我這個窮書生,大學工作的錢都是交學費去了,所以我一毛錢也沒有,所以我就利用工作的時候,那個每個月月薪存下來,然後到了要寄那個application form的時候再付錢。所以我一方面是沒時間,一方面是我沒錢,還得貼補父母家計,所以我就留在系上工作了一年。



那麼我想問一下關於你的工作的內容,聽說是語言翻譯,可以介紹一下你的工作嗎?

我現在是做Language understanding。Language understanding就是說,有個人講了一個句子,講了一句話,譬如說,我想從北京飛臺北,如果你做語音識別,那你就出現這些Character,你就說我想從北京飛臺北,對不對,你就把這個文字弄出來,可是你不知道它的意義,你必須要知道它的意思是說,我需要去訂機票,然後我的出發是北京,我的到逹點是臺北。對,這個要去了解這個語意,所以叫Language understanding。我現在做的是這方面,我之前最開始做的是做語音識別。做了大概從博士班一直做,在微軟做,大概做了二十年,然後換成機器翻譯做了四年,然後現在做Language understanding做了一年多。




除了國語和英文外,您還會其他語言嗎?

我會一點點日文,大學的時候修過一年,可是, 那一年我常常翹課,所以其實我什麼也不記得。那個時候修日文,是因為每個人都說那門科目營養,老師給的分數都很高,我覺得滿悲哀的。然後我去上課,沒有興趣,我這個人就是比較率性,沒有興趣我就是上不下去,就常常翹課,翹課的結果就是不怎麼樣,所以我也不記得了。

然後後來是在微軟工作的時候,我們要做 speech recognition,我們從英文開始做,做完以後要開始做別的語言。那時候美國人的想法就是:我要不然就去做歐洲語言,因為美國跟歐洲的經濟貿易很多,那要不然就是做日文,因為他們也覺得日本也有錢。 那個年代,台灣也好、中國大陸也好, 沒有人花錢買軟體的。所以他們就不願意做中文,所以就做日文。那要做日文呢,我們組沒有人懂日文,所以公司就讓我們修日文課;所以我就修了一年。這一次,碰到好老師,我學得很起勁,融會貫通。修完一年之後,我那時候離開微軟, 我去了University of Washington。我離開微軟之後,我自己還自費繼續修同樣的課,修了一年,所以我日文總共修了二年。



對於你的工作來說,你會覺得只要會英文就夠了嗎?其他語言呢?

英文是必須的,因為你不管是做學術,或者做生意,你都要會英文,比如說將來你在公司工作,或者是你自己開公司,你最後的市場不會只限制在國內而已,你一定會弄到國外,那國外,你不管跟哪一國人作生意,或者歐洲、亞洲、那個中東那些國家、東南亞、美國,都會講英文,你只要會一個英文,就可以跟這些其他國家溝通了。所以英文變成是,我覺得是必修的。

我覺得從資工系的角度看,我覺得其他語言沒有那麼重要。比如說我們現在做語音識別,我們其實做了二三十個Language,如果做我們做到意大利文,那我們去找懂意大利文的Linguist,我們做語音識別只要知道說,每一個Word,它分成多少個音,比如說,中文的話,我們用ㄅㄆㄇㄈ... 有37個音符,然後你只要知道這37個音符是什麼,怎麼樣把它拼成音節,有多少個音節,你只要知道這些基本的理論。 所以我今天要做中文,我就去找一個中國人給我這些Information, 我今天要做意大利文,我就去找意大利人給我這些Information,that’s all。所以,我覺得,學外語不是那麼特別重要,但是,是看你個人的興趣,你有興趣你多學沒有壞處。我女兒會中文、英文、西班牙文、法文,她會四個語言。學習要符合興趣,你就會學得快,學得開心。是不是對未來事業有幫助,我覺得是其次。

學語言是你自己的motivation,但是英文是必須。然後我剛剛說,我們台灣的學生不如中國大陸的學生,可是有一點台大的學生比中國大陸的學生好的是,英文比較好。中國大陸他們這邊,所有的IT的課,全部都是中文,中文教科書,每一個名詞都是中文,然後老師連原來英文名詞都沒有介紹。剛開始的時候,我interview那些學生,那些學生就這樣洋洋灑灑從頭到尾到跟我講中文,裏面一大堆名詞,我完全不知道他在講什麼,我說,你停一下,你剛剛講的是什麼字,再講一次,然後他又講一次,我說請問這個英文的名詞是什麼,然後他就楞在那,他的態度就是說:為什麼問我英文名詞,我怎麼會知道。那這個很不好的。

假設你今天是唸PhD,做Research, 你的文章如果不是英文寫的,只有中國人讀而已,it’s not going to be recognized。你的文章一定是要用英文寫的。那你自己做的東西,連英文名詞都不會,你怎麼寫出一個英文的文章,不可能嘛。



有在工作上會遇到甚麼因難嗎?
 
一個是學術上,譬如說我們從Speech recognition變成Machine translation好了,我從Speech recognition己經換到Machine Translation,完全是一個新的領域。我要去開始學,我要開始去看這個Machine Translation的理論是甚麼。後來發現跟Speech Recognition很像,所以我從Speech Recognition到Machine Translation,換得很快,一下子就PickUp了。然後Again,Self Motivation,如果我要學的東西我有興趣的,我就是全力以赴。不是說因為我老闆在旁邊逼才要這麼勤快的。我當初到Machine Translation的時候,要學Machine Translation的理論,要看別人的Code,還要學C#,因為我以前都用C++,突然間變成C#,所以我一下子就要學三個東西,我就拼命學,越讀越高興。
我有東西學我就高興,後來還要學Big Data,因為Mahcine Translation它也是Statistical Model,只要是Anything About Statistic,就是要大量的Data,你碰到大量的Data的話,你就不能一個機器去處理那個Data,你處理了老半天的做不完,有時候不光是時間的問題,有時候是Memory根本不夠,你再大的機器也容不了那麼多的Data,所以你要做那個Mapreduce Big Data那個Processing,所以我要開始學Mapreduce,學這種東西很好玩。
寫那個Code跟寫傳統的Code完全不一樣,你的思維完全要改。學有甚麼因難,因難就是說你每次碰到新的領域,或新的技術,你要很快的PickUp。然後你PickUp的時候,有時候我是可以自己PickUp,有時候碰到一些比較難的,我還是會去請教別人。那我就覺得說在Microsoft的工作,一個最大的好處就是它甚麼人才都有,很多很多比我還更聰明的人。所以我不會我可以找得到人來請教。我覺得這個Stimulation,我在臺大沒有找到很多。我覺得我在台大唸書那四年,唸到大四真的很boring,老師不能給我Stimulation,我沒有課可以修,我覺得我的同學對我的Challenge不夠。然後我到美國來,到CMU唸書,到Microsoft工作,真的碰到太多聰明的人,自歎不如。自歎不如一方面很難過,可是別外一方面很高興就是說,我知道我只要果碰到甚麼困難,我絶對可以找得到人,他知道怎麼樣幫我思考。



是因為有興趣才轉換領域?

Both。一方面是有興趣,一方面是剛好工作需求。譬如說我現在在做language understanding,這個Language understanding的input可能來自於User Typing Text,也有可能User用說話的,那你要經過Speech Recognition才能得到那個Text。然後他們就看看我的經驗說,你做過speech recognition,Speech Recognition學了很多那個Machine Learning的經驗,可以Apply到別到Field的。雖然是不同的Field,所以你看我從Speech Recognition到Machine Translation 就轉得很快,因為Speech Recognition那些基礎可以Apply到很多領域去,所以他們就說你有這個基礎,你有speech Recognition的經驗,所以You are the best person,Best candidate for this job,然後就叫我去做了。那我想我Language Understanding我沒做過,但是我稍微看一下那些理論基礎,是很多Machine Learning的東西,也不會比Speech Recognition複雜,我說好,我覺得這個我可以學。然後我就Take了。所以一方面也是興趣,一方面也是剛好工作的需求。




那想問一下當初你為甚麼會選擇去Microsoft?

其實我當初一直覺得我CMU畢業應該是回台灣教書的。我從來就沒有想過留在美國。那後來留在美國是因為我小孩的關係。那留在美國的話就很多工作可以去了,因為當初有很多公司找我。但我怕冷,所以我東岸的工作我就全部都劃掉不要。我就只選西岸,那西岸當初因為我的指導教授已經來微軟了,他很希望我過來,因為我跟他,我做的論文的東西他想要帶到微軟來,那我做的部分,他理論上懂,可是他從來沒有碰過那些Code,所以他如果要從頭看,自己弄過去的話,要花的時間力氣太大了,所以他就一直拜托我,他就說,你就過來這邊吧。所以我就到microsoft,然後把那個我所以PhD的System通通帶過去了。




在Microsoft裏工作的氣氛,感覺怎麼樣?有挑戰性?

是的,很有挑戰性。我是1994年加入Microsoft的,那時候Microsoft的步調很快,今天想要做甚麼,然後就很快做做做,做甚麼事情都很有效率。現在的公司已經大了太多倍了,我覺得現在一樣是有挑戰性的工作,但是他甚麼Product從這個Idea形成,到執行,到最後把Product送出門,這個Cycle實在太長了。我覺得任何大公司像Google慢慢越來越大,這種問題就會越來越嚴重。所以公司大到這種地步,一般人留下來的原因就是因為這個工作很穩,因為他這麼大公司,他還有Windows賺錢,Office賺錢,Xbox賺錢,其他不賺錢沒關係,他用賺的錢去養那些不賺錢的部門,這個對公司來說就是一種投資。譬如說Bing的search到現在還沒有賺錢,沒關係,公司繼續投資,你的工作還在,不會不見。就算我今天understanding這個部門被關掉,我們決定不做understaning了,我一定可以在microsoft再找到另外一個部門,一樣的薪水,只是換到不同的組裏面,所以很多人留在微軟是因為他的這個job security。那有的人留下來當然是這個有挑戰性啊,可是我覺得挑戰性是一回事,最重要是這個product push出去的速度太慢了,這一點是我比較不滿意的地方。

然後是工作環境,這個要給所有的學弟一個警告,外面業界也好,將來你到學校教書也好,就是你假如是學校畢業了,出去工作,你要不然就在業界工作,要不然你就留在學校。留在學校當教職員,學生的環境已經比較單純了,但是你一到社會去工作的話,你跟同事之間的關係,是非常複雜的。同事跟同事之間這種關係,是我們在學校裏頭很疏忽,沒有學到的。可能也學不到,因為你每天都忙著在上課,在學校裏頭上課。你了不得在外面公司做Intern,但是Intern的話,通常跟公司裏的員工不會起任何衝突,所以你不知道那種人際關係的利害。
你要真正變成一個Full time employee的時候,你才會知道人際關係的複雜程度。那這種東西只有走一步學一步,我只能給你建議就是說將來你們入了社會工作,不管你到那一個公司或是學校,你心裏找一個Mentor,好像你的導師一樣那樣子,一個比你有經驗的人,對你賞識。因為他如果對你不賞識,他管你啊。因為Mentor你要花人家的時間,你有空沒空就跟他聊聊天,然後你工作上碰到甚麼困難,甚麼事情不會處理,甚麼的。我當初我進業界工作的時候是沒有人教的,然後就是跌跌倒倒啊,撞來撞去的慢慢學起來。



在人際關係上有遇到什麼困難嗎?

有啊,我初初不是跌跌倒倒的嗎?言者無意,聽者有心,我說我在E-mail 裏說了某句話,我指的是A這個意思,可是聽的人卻聽成B。沒有人跟我講,我就不知道。當有人跟我講說:你為什麼講B什麼什麼的,我說:哪有,我不是這個意思啊,我是A,對不對。那你就是要說,E-mail 要怎樣寫,寫給誰To,這很重要。

有的人不願意聽到某些話,你這個就不要放在To裏頭,或者有些Sensitive的話,根本就不要放在E-mail 裏頭。那這種事情,反正你工作之後會碰到的,慢慢就會學習,假如你有個Mentor,你就少跌倒幾次。你沒有一個Mentor就是多跌倒幾次。但是跌倒了你自己要記得,要學到Lesson,不要跌倒了很多次,又一直在犯同樣的錯誤。這種我沒有辦法給你實際的例子,我只能說給你一個警告。 當你從學校畢業到社會去的時候,不管你是在學校的環境裏頭,或是在業界,都是一樣的。 因為你一旦出了社會,你現在講的是竟爭、是生存、你在學校裏頭沒有。我就是個學生啊,我是一個消費者,我來這裏交學費,我在這裏學東西,就這樣而已。你到了業界,你每個月拿薪水的。你是在跟其他人競爭一份工作的,那個,畢業了以後人際關係一定要小心處理,就是這樣。最後送給學弟妹的,生活要全面。要有自己的健康嗜好,事業不是人生的全部。

這個網誌中的熱門文章

王瀚宇(R02網媒, 赤燭遊戲共同創辦人)

林于智 (B01/R05, Google Software Engineer, Youtuber [史九87])

劉邦鋒 (台大資訊系教授)