天天看點

微軟工作這二年

16年元旦頂着大風來北京面試,一天6輪,在回去的高鐵上感覺面試可能挂了,一個禮拜後收到了Offer。由于自身各方面的原因,18年元旦,選擇離開微軟。It is hard to say LEAVE, 這裡整理了一下我在微軟的兩年經曆,算是我這兩年的總結。

微軟工作這二年

我眼中的工作環境

我沒在其他一線網際網路公司呆過,我個人覺得微軟(北京)的工作環境是相當不錯的。公司大樓靠近北四環,丹棱街5号,周邊街道基本不怎麼堵車,地鐵有四号線和十号線,開車的話直接走四環,到亞洲最大的居民區天通苑大約也就40來分鐘。

上下班比較自由,公司沒有這方面的考核制度。我一般早上11點到公司,晚上8點離開公司,如果有事就會更晚一點。有的同僚下午需要早走,是以上午來得比較早,但是工作時間這些都沒有明文規定,各人視情況而定。

平時如果有什麼事情需要請假也比較簡單,一般跟leader說一聲就行,回頭在系統裡面補一下即可。每人每年有15天帶薪年假,我覺得一般人基本用不完。如果半天的話,大部分都不需要在系統裡申請,直接說一下即可。微軟關于假期這方面的福利還是比較好的,每人還有3天志願者假,15天病假,女同僚120天産假,男同僚有6周的陪産假,沒錯是陪産假,我前段時間剛修完42天的陪産假。

公司内部環境不錯,比較空曠,各種小的focus room,meeting room,一周七天随時都有保潔在上班,至于免費的水果、飲料這些當然是必備的了,相信一般好點的公司都有這個福利。

我做過的項目

在微軟呆兩年,做過的東西不算少。如果讓我給我做過的項目評一個分,10分制的話,大概在6分左右。我覺得我比較客觀,不存在我在這裡呆過是以吹噓,也不存在我即将要離開了是以去故意抹黑。

剛進來的時候做過一段時間的UWP,具體是什麼我就不說了。整個team都比較賣力,可能微軟上層上司早已看透了一切,早已知道Windows 10 Mobile命數已盡,是以高層老大基本不重視這塊的工作。要知道那還是16年初,微軟還并沒有官方宣布放棄Windows 10 Mobile。當時隻有我們Manager支援以及他手下一幫子兄弟在埋頭苦幹,最終的結果大家都知道了,微軟宣布停止更新Windows 10 Mobile。我不知道沒有移動端這塊,UWP存在還有什麼價值,體驗不如傳統win32,又不能跨平台到Android和iOS。HoloLens、Hub和Xbox?這個使用者能有多少?個人以為UWP的初衷是相當好的,隻可惜微軟并沒有翻盤。

做了差不多四五個月的UWP,16年下半年開始接觸Cortana的開發工作。Cortana是Windows 10預設自帶的一款智能助手,不知道有多少人用過這個智能助手,認為她到底智不智能。Team大約花了4個月做了一個Vision的feature,大概就是讓Cortana不僅能夠說、聽,還能夠看,能夠識别圖檔中的文字資訊,自動為你設定提醒,為你安排會議,個人覺得這個feature還是非常實用的。可能你就要問了,這個東西看似很簡單,為什麼要花這麼長時間,因為整個Cortana的代碼結構超級複雜,前端涉及到Windows 10作業系統的Code,背景涉及到Bing的Code,你不花個把月根本不清楚你應該動哪塊的東西。再加上Cortana整個項目的Owner在美國,你往裡面check in一行Code,都得需要别人Review,跨國的開發工作效率尤其低下,這個後面我會說到。由于各種原因,最終這個feature并沒有在RS3中對外開放。聽說RS4會上?後來我轉到其他項目中,是以也就沒有再關注這個事情。說到代碼結構複雜,不得不說很多開發的思想還停留在十幾年前,像Cortana、Edge這種App都是跟随系統綁定的,半年一更新。類似這種App就應該釋出到Windows Store上,更新友善,完全符合移動網際網路開發程式。關于為何Edge不能發到Store中而必須綁定到系統上,知乎上有相關的回答,真相讓人哭笑不得。

今年5月開始,進了新的項目,也就是我目前正在做的,Edge for Android。當然Edge for iOS也是我們team另外一部分人在做。說它是Edge,其實跟Windows 10上的Edge沒有任何關系,Android上是基于Chromium開發的,iOS是基于Control弄的。Android這邊的dev最開始大約有16個人,dev全在中國,design在美國,從項目開始到最終Publish一共花了将近6個月的時間。Android版目前可以在Google Play上下載下傳,國内Android市場也有同步過來的,感興趣的可以下來用用,自認為跟國内幾個主流浏覽器還是有一定差距。相比前兩個項目,可以看到這個項目很受公司重視,是以相對來講還是比較有前途的。Satya也在用我們dogfood内測版本,上次還回報了一個bug。當然還是有幾個地方需要吐槽的,公司内部已經吐槽過,是以我把它寫在這裡:

1) 公司組織結構太大,一個芝麻小的改動可能涉及到的人全世界都有。溝通全靠郵件,今天發的郵件可能明天後天才能回。是以溝通不暢是經常的事,design改一遍又改一遍很常見;

2) 由于微軟公司的Policy,出于各種Security的考慮,Chromium版本需要不斷地更新,從一開始53,5個月的時間連續更新4次一直到63。可以想象,每次merge需要消耗的人力,由此産生的bug又是多少;

3) 不得不說,微軟對App的design真不如國内大廠,UX不夠好,不多說了。

我對項目的反思

拿着SDE2的錢,操着CVP的心。我這種級别也隻夠在底層寫Code。事實上,大部分都是我這樣的人。還是那句話,公司組織結構大,做一件事情牽扯到的人太多。而且不在一個地方,溝通起來相當困難。想象一下,小團隊作戰,出現一個問題,馬上就能面對面開會,可能當天就能高效解決。雖然微軟在中國的的研發人數全球第二,但我所在的部門而言,很多東西都沒有拿到話語權,國内的團隊沒有得到美國那邊足夠的信任。我很肯定的說,我身邊的同僚都是比較優秀的,Coding Skill、思維以及溝通表達都是超出平均值的。但是就是這麼一群人,做出來的東西很多都沒能取得成功,作為一個搞技術的,可以想象,做出來的東西沒有被認可是一種怎麼樣的體驗。另外,有人的地方就是江湖,哈哈。

我眼中的微軟面試

來微軟面試的SDE(據我所知包括SDE1、SDE2以及Senior SDE),面試官基本都隻會問你資料結構算法相關的問題,其他的東西幾乎不問或者不是Hire你的标準。雖然我了解這其中的原因,一般這種面試如果能過,基本說明這人靠譜。但是,從我微軟兩年的實際經驗來看,招一些熟悉具體技術、業務的人進來或許更适合。我也參加過公司的一些面試,面試官的Feedback中隻有以下幾項:

1) Coding Skill. 大概就是讓你在紙上寫code,比如寫一個連結清單反轉,看看怎麼樣。至于拿什麼語言寫随意;

2) Data Structure & Algorithm. 問一些算法資料結構的題目,看你的答案;

3) OOP & Design Pattern. 問一些常見的OO和設計模式之類的問題;

4) Hire or No Hire. 要不要你?

關于離職

選擇一個公司,我覺得應該全方位去考慮,不僅僅是能做的項目,其他比如待遇、文化、發展、福利以及自身條件限制等等。綜合來看,我呆過的部門還是不錯的,我之是以選擇離開,完全出于自身原因。在北京的同學,如果有希望加入微軟的,還是不錯的選擇。也非常感謝我來微軟的第一任Manager,是他招我進來,在我離開的時候,又非常熱心地托人給我在武漢介紹新的工作,哈哈。感謝微軟,加入微軟也是我學生時代的夢想。希望以上這些對想加入微軟的同學有幫助。

[以上隻代表我個人觀點,且僅限我所在的部門在這短時間内所接觸的東西,其他部門機構不清楚,特此聲明,防止給大家造成誤解]

本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。

本文轉自周見智部落格部落格園部落格,原文連結:http://www.cnblogs.com/xiaozhi_5638/p/8109517.html,如需轉載請自行聯系原作者

繼續閱讀