兩年前,我開始了我在微軟Azure云計算平臺的實習(xí)生涯,并在大學(xué)畢業(yè)后,在同一個團隊中繼續(xù)工作了8個月,一直到最近。
我決定把我過去8個月中的所見所聞總結(jié)一下。也許這聽起來毫無意義,但事實并非如此。其實任何人在任何一家大企業(yè)中都會發(fā)現(xiàn)類似的問題,而這些問題中的大多數(shù),并非只針對于微軟。每個公司都有自己的問題。我寫這篇文章,并不是因為不高興,或者要抱怨什么,它們僅僅是我在大學(xué)中并沒有意識到的(類似與理想與現(xiàn)實的差距這樣的)問題:
Expect no documentation in corporations
我發(fā)現(xiàn)很多知識是通過溝通和手把手實踐去傳播的。有一部分知識僅僅依賴于電子郵件,而且它們根本不會永久的存儲在某些地方。這跟數(shù)字世界中的信息流動概念完全是背道而馳的。設(shè)想一下,有一部分人,一旦他們某天突然出了意外(撞車之類的),沒人能繼續(xù)他們的工作。好吧,如果這是我自己的公司,一定會有成百上千的WIKI文檔,以便讓人查閱。
你做了什么無關(guān)緊要,關(guān)鍵是你賣了什么
你可以花好多天來讓你的代碼更易讀更強健,或者幫助別人修改錯誤。但這些只要沒有商業(yè)價值并且你不能發(fā)布它們,實際上你所做的就變得毫無意義。沒人會感激你對于他們核心程序的代碼風(fēng)格和結(jié)構(gòu)問題的優(yōu)化,實際上他們還有可能會產(chǎn)生抵觸。這是我在學(xué)生時代沒有意識到的。
并不是所有人都充滿了熱情
你并不會一直和那些想要創(chuàng)造出優(yōu)秀產(chǎn)品(軟件)的人共事。大多數(shù)時候,人們有很多其它事情要處理,比如家庭和小孩。對大多數(shù)人來說,寫更好的代碼并不是首要任務(wù)。好吧,我忍了。我學(xué)會了不要期盼任何人都充滿了熱情。
每天能有兩三個小時用于編程就很不錯了
在這份工作之前,對于我的個人項目,我一天可以花8至10小時的時間去寫代碼。然而在現(xiàn)在的環(huán)境下,對我來說,哪怕2兩小時的純粹編程時間也變得不太可能。大多數(shù)時候,我用來弄清楚沒有注解/文檔的代碼是如何工作的,調(diào)試各種奇怪的bug,或者參加例會。很明顯,每個人都是這樣,并且有時候,一連幾天都可能沒有一個單一任務(wù)會推送給代碼控制中心。好吧,我又忍了。
只索取不奉獻,這是常態(tài)
在微軟中,我沒有遇到過任何一個博主(Blogger)或者是開源者會花一部分時間去回饋社區(qū)。每個人都是那么的喜歡從Stack Overflow上找尋答案,卻沒人愿意回答問題。好吧,我理解。
外面的世界怎樣,沒什么人會關(guān)心
我敢打賭你每天所讀到的最新技術(shù)和工具往往出自于博客、Reddit或Hacker News。但是這種情況在微軟并不普遍。我驚訝地發(fā)現(xiàn)在微軟Azure中,我遇到的任何人都沒聽說過他們的直接競爭對手,比如Heroku 或者是Rackspace(同樣兩個云計算平臺)。好吧,這也能接受,畢竟不是每個人都需要知道這些
在公司中,只看結(jié)果
如果你老板讓你弄出一個按鈕來實現(xiàn)某些功能,沒人會在乎你究竟后邊的邏輯做的有多讓人惡心。只要功能實現(xiàn)了,就Okay了,至于其它的,如果有必要,以后總會修復(fù)的(這一點,我之前也沒見過)。大學(xué)期間,我所學(xué)得是代碼質(zhì)量是最終產(chǎn)品中非常重要的組成部分?,F(xiàn)在看來,不是那么回事。
復(fù)制粘貼很Okay
跳出公司范圍,如果有人看見你在復(fù)制粘貼代碼,也許你會被迎面的一拳打蒙。但在公司內(nèi)部,我見多了這種存在于項目之間的復(fù)制粘貼行為。只要達到目的了,沒人會管你是否弄出了一堆難以維護的代碼。
可以跳過code review,敏捷開發(fā)嘛
作為我們團隊的一個傳統(tǒng),如果你覺得某人寫的代碼太惡心了,可以要求他做code review,不然這種工作通常根本就沒人做。而且,即使你要求他們做code review,你也得等好久,甚至在無數(shù)的PING他之后,他才可能回復(fù)你。
最新的軟件?怎么可能
并不是這兒的每個人都喜歡最新版本的軟件。我的同事中,有幾乎90%的人用老版的Office,Windows,Visual Studio和.NET 框架。他們普遍認為,新版的軟件會打斷現(xiàn)有的工作流程。這也許也是為什么一些企業(yè)仍然使用Java 1.3-1.5 。所以,我學(xué)會了在這種環(huán)境下,不要期盼使用最新的軟件。
你的特長顯得不那么重要了
每年有上千剛出校門的人被雇傭,并且通常都是被隨機分配到某個team(一年半你都不能換team的)。那么,你是不是擅長MongoDB,是不是能寫iOS 應(yīng)用,是否能成一名Apache Committer,是否能建立自己的網(wǎng)絡(luò)庫,是不是能設(shè)計UI,甚至是否能成功引導(dǎo)自創(chuàng)業(yè),都顯得無關(guān)緊要了。你被雇傭去做那些需要做的事。這并不是我想要的。在企業(yè)內(nèi)部,你很難找到一個和你愛好匹配的職位。
最后,你實際上是在為你的上司,和你上司的上司的薪水工作,僅此而已。這也是我在大學(xué)期間沒有認識到的。
-
微軟
+關(guān)注
關(guān)注
4文章
6741瀏覽量
107864 -
工程師
+關(guān)注
關(guān)注
59文章
1603瀏覽量
71034
發(fā)布評論請先 登錄
電子工程師設(shè)計要點與經(jīng)驗分享
什么是BSP工程師
電子工程師設(shè)計要點與經(jīng)驗分享
想成為硬件工程師?我教你??!你得先學(xué)會這些...... #硬件工程師 #電子工程師 #電子愛好者 #電子行業(yè)
作為一名PCB質(zhì)檢工程師,我為什么在用手持式面銅測試儀?
硬件工程師看了只會找個角落默默哭泣#硬件工程師 #MDD #MDD辰達半導(dǎo)體 #產(chǎn)品經(jīng)理 #軟件工程師
如何成為一名合格的KaihongOS南向驅(qū)動開發(fā)工程師
如何成為一名合格的KaihongOS北向應(yīng)用開發(fā)工程師
如何成為一名嵌入式軟件工程師?
一名工程師在微軟工作的那八個月
評論