『壹』 程序員真的是一份吃青春飯的活嗎
說程序員是一份青春飯,這個結論既正確也不正確。沒有哪個行業是絕對看年紀的,演員可以說是一個標准「青春飯」行業,即便是這樣,也會有「小鮮肉」無法輕易戰勝的「老戲骨」。
互聯網也有互聯網的「青春飯」,這里的「青春飯」是指新知識、新技術。在社會發展如此迅速的背景下,不僅是程序員,任何一個互聯網人都要不斷更新,不斷學習,不斷進步。如果你是20歲的青年,害怕十年之後被公司淘汰、被更年輕的人淘汰,那你要做的就是進行職業規劃並保持一個好的心態進行學習。
技術的更新發展是日新月異的,而所有程序員面對的挑戰都是一樣的,但是如果你的基礎扎實就能更容易地學習新事物、新知識。一個新技術即使再絢爛奪目也是利用基礎知識搭建而成的,就像武功一樣,我們都知道降龍十八掌很厲害,那為什麼不一開始就練它呢?原因很簡單,如果你連基礎功夫都沒學好,即使拿到秘籍也是徒勞。
相反地,如果你的基礎還不夠牢靠,每天下班之後也不願意花時間去了解行業內的動態,為自己充電,那你也只是靠年齡來勉強立足。
如果十年後的自己沒有任何進步,或者說進步得不夠多,捫心自問:你不應該被淘汰嗎?
任何職業的身價都取決於他的不可替代性,如果你的工作內容很容易就被他人取代了,那你就要小心了,要使自己不可替代,就要努力往上走,往高處走,當你和他人拉開距離的時候才能告訴自己的老闆,你值這個價。
多學、多看、多問。從項目中學,從網路中學,從失敗中學,涉足各種開源社區和學習論壇,並找到和你一起前進的「戰友」,積累自己的人脈和學習圈子,在關鍵的時候你們可以互相扶持。
在這場信息時代的革命化變革中,你願意做弄潮兒還是急流勇退?
有意思的是,很久之前看到這個問題的時候是這樣寫的:「程序員到了30歲就要轉行了嗎?」,現在問的問題是:「程序員到了35歲就要轉行了嗎?」
我發現這條年齡線已經被拉長了5歲,那麼我是否可以這樣推斷:等過了兩三年之後,這條年齡線將會繼續延長5歲,問題也會改成:「程序員到了40歲就要轉行了嗎?」
既然有程序員不斷地在問,也有程序員不斷地在解答,那就表示還有很多30+、40+的碼農仍然奮斗在編程的前線。隨著時間的推移這條年齡線還會不斷地往後移,等到碼農正式退休之後,大家就會恍然大悟:「原來程序員是可以做到退休的!」
『貳』 什麼是美國Oracle公司
Oracle公司CEO:Larry Ellison
Oracle公司(甲骨文公司)是世界上最大的企業軟體公司,向遍及145多個國家的用戶提供資料庫、工具和應用軟體以及相關的咨詢、培訓和支持服務。甲骨文公司總部設在美國加利福尼亞州的紅木城。甲骨文公司1989年正式進入中國。
幾十年前,當拉里·埃利森偶然看到有關關系型資料庫工作原型的一段描述時,他發現了一個其他公司錯失的機遇。當時,尚未有企業致力於商業化這一技術。埃利森和他的共同創始人Bob Miner和Ed Oates認識到在關系型資料庫模型方面存在極其巨大的商業潛力--但是他們當時可能還沒有意識到,他們將永遠地改變商業計算的形態。
今天的Oracle(納斯達克代號:ORCL)依然走在這一領域的前列。世界上的所有行業幾乎都在應用Oracle技術,且《財富》100強中的98家公司都採用Oracle技術。Oracle是第一個跨整個產品線(資料庫、業務應用軟體和應用軟體開發與決策支持工具)開發和部署100%基於互聯網的企業軟體的公司。Oracle是世界領先的信息管理軟體供應商和世界第二大獨立軟體公司。
Oracle是一家不斷創新的公司。今天,使業務應用程序通過互聯網可用的觀念已成為人們的共識,可在當初,Oracle是最初幾家實踐此觀念的公司之一。現在,Oracle致力於使所有軟體都能夠協同工作(即採用套件方式),其他公司、分析家和新聞媒體逐漸認識到Oracle是正確的。Oracle在未來會如何做呢?我們將秉承公司的傳統--不斷創新,引領行業發展,同時,我們要想客戶所想,急客戶所急,注重為採用我們軟體的客戶解決問題。
創新是為客戶創造出「新」的價值。把未被滿足的需求或潛在的需求轉化為機會,並創造出新的客戶滿意。創新的目的不是利潤最大化,創新的目的是創造客戶。以犧牲客戶價值為代價的「創造」不是創新,其結果只能是給企業,甚至是整個行業,造成災難。因此,發明未必是創新,除非該發明能夠被應用並創造出新的客戶價值。創業也未必是創新,只有其新的事業創造出了「新的客戶滿意」,否則,新創企業很可能對現有的產業造成破壞。
創新活動賦予資源一種新的能力,使它能夠創造出更多的客戶價值。實際上,創新活動本身就創造了資源。因此,創新是一項有目的性的管理實踐,遵循一系列經過驗證的原則和條件。創新是一門學科可以傳授和學習的。與在工商企業中一樣,創新對非營利組織和公共機構同樣重要。
在持續改進的過程中有時也能夠產生創新的成果,然而,更多的創新產生於對客戶需求更深刻的發掘和認識,從而創造出「全新的業務」和客戶價值,即所謂「顛覆式創新」。創新是有風險的,然而,「吃老本」或者「重復改進」比創造未來風險更大。創新的障礙並非企業的規模,我們生活中的很多創新源自大企業;創新真正的障礙是現有的「成功模式」造成的「行為慣性」和「思維定式」。
創新所釋放出來的生產力及其創造出來的市場價值推動了產業和社會的不斷進步,有效地避免了經濟的衰退和社會動盪。創新不但是企業可持續發展的源動力,而且是推動社會進步,避免暴力革命對社會造成傷害的有效途徑。
在高速變化的互聯網時代,創新正在成為每個組織和個人必須具備的能力。
Oracle公司的發展歷程
誕生初期
20世紀約70年代 一間名為Ampex的軟體公司,正為中央情報局設計一套名叫Oracle的資料庫,埃里森是程序員之一。
1977年埃里森與同事Robert Miner創立「軟體開發實驗室」(Software Development Labs),當時IBM發表「關系資料庫」的論文,埃里森以此造出新資料庫,名為甲骨文。
1978年 公司遷往矽谷,更名為「關系式軟體公司」(RSI)。RSI在1979年的夏季發布了可用於DEC公司的PDP-11計算機上的商用ORACLE產品,這個資料庫產品整合了比較完整的SQL實現,其中包括子查詢、連接及其他特性。美國中央情報局想買一套這樣的軟體來滿足他們的需求,但在咨詢了IBM公司之後發現IBM沒有可用的商用產品,他們聯系了RSI。於是RSI有了第一個客戶。
最先提出「關系資料庫」的IBM採用RSI的資料庫。1982年再更名為甲骨文(Oracle)。
發展壯大
1984年,三年內,先後進軍加拿大、荷蘭、英國、奧地利、日本、德國、瑞士、瑞典、澳洲、芬蘭、法國、香港、挪威、西班牙。1986年上市時,年收入暴升至5500萬美元,同年3月招股,集資3150萬美元。
1987年收入達到1.31億美元,甲骨文一年後成為世界第四大軟體公司。兩年內再進軍墨西哥、巴西、中國、塞普勒斯、馬來西亞及紐西蘭。一年後,收入再升一倍至2.82億美元。
1990年,甲骨文兩年內揮軍進入智利、希臘、韓國、葡萄牙、土耳其、委內瑞拉、台灣、比利時、阿根廷、哥倫比亞、哥斯大黎加及菲律賓等地,但是當年甲骨文的業績首次發生虧損,市值急跌80%,埃里森首次安排資深管理人員參與經營。
1992年,旗艦產品Oracle 7面世,使該公司業務重新步上軌道,年收入達到11.79億美元。曾被視為甲骨文接班人、但後來被踼出局的Raymond Lane擔任首席運營官。
收購與上市
1995年,埃里森宣布PC已死,把全數產品推向互聯網發展,並另組「網路計算機公司」(Network Computer),銷售「網路計算機」,最終被淘汰收場。
2000年,科網接近尾聲時,推出E-Business Suite,搶占應用產品市場,與昔日的生意夥伴構成嚴重利益沖突。同期微軟及IBM數據技術提升,此後Oracle新增訂單數目的佔有率,在兩年內下跌6.6%,業務倒退10%。
2003年,敵意收購仁科軟體公司,引起業界哄動。兩公司的爭議新聞層出不窮。同年美國司法部落案阻止甲骨文收購。
2004年,歷經18個月的拉鋸戰,終於成功購並仁科軟體公司。
2007年,收購BEA Systems。
2009年4月20日,甲骨文公司宣布以每股9.50美元,總計74億美元收購太陽微系統公司(Sun)。
2013年2月4日以每股29.25美元作價收購網路傳輸產品製造商Acme Packet,交易規模約為17億美元。
2013年7月15日起甲骨文公司正式由納斯達克轉板至紐約證券交易所掛牌上市。轉板至紐交所後,甲骨文公司將沿用「ORCL」這一交易代碼。
2013年,甲骨文已超越 IBM ,成為繼 Microsoft 後全球第二大軟體公司。
書寫歷史的甲骨文---Oracle公司傳奇
很難想像,Oracle公司的這一段傳奇居然要從IBM開始。
1970年的6月,IBM公司的研究員埃德加·考特(Edgar Frank Codd)在Communications of ACM上發表了那篇著名的《大型共享資料庫數據的關系模型》(A Relational Model of Data for Large Shared Data Banks)的論文。這是資料庫發展史上的一個轉折。要知道,當時還是層次模型和網狀模型的資料庫產品在市場上佔主要位置。從這篇論文開始,拉開了關系型資料庫軟體革命的序幕。
雖然早在1970年就誕生了關系模型理論,但是市場上遲遲不見關系型資料庫管理軟體的推出。主要原因是很多反對者認為關系型資料庫速度太慢,比不上當時的層次式資料庫。值得好笑的是,IBM雖然1973年就啟動了System R的項目來研究關系型資料庫的實際可行性,也沒有及時推出這樣的產品,因為當時IBM的的IMS(著名的層次型資料庫)市場不錯,如果推出關系型資料庫,牽涉到IBM很多人的自身利益。再者,IBM龐大復雜的官僚機構處在決策上遠不那麼靈活。
1977年6月,Larry Ellison與Bob Miner和Ed Oates在矽谷共同創辦了一家名為軟體開發實驗室(Software Development Laboratories,SDL)的計算機公司(ORACLE公司的前身)。那個時候,32歲的Larry Ellison,這個讀了三家大學都沒能畢業的輟學生,還只是一個普通的軟體工程師。公司創立之初,Miner是總裁,Oates為副總裁,而Ellison,因為一個合同的事情,還在另一家公司上班。沒多久,第一位員工Bruce Scott(用過ORACLE資料庫軟體的人都知道有個Scott用戶,沒錯,就是這個Scott,至於Scott用戶的密碼Tiger,那是Scott養的貓的名字)加盟進來,在Miner和Oates有些厭倦了那種合同式的開發工作後,他們決定開發通用軟體,不過們還不知道自己能開發出來什麼樣的產品。Oates最先看到了埃德加·考特的那篇著名的論文連同其他幾篇相關的文章並推薦Ellison和Miner也閱讀一下。Ellison和Miner預見到資料庫軟體的巨大潛力(跟著IBM走,沒錯),於是,SDL開始策劃構建可商用的關系型資料庫管理系統(RDBMS)。
很快他們就弄出來一個不太像樣的產品,或者具體的說,更像一個Demo。根據Ellison和Miner他們在前一家公司從事的一個由中央情報局投資的項目代碼,他們把這個產品命名為ORACLE。因為他們相信,ORACLE(字典里的解釋有「神諭,預言」之意)是一切智慧的源泉。1979年,SDL更名為關系軟體有限公司(Relational Software,Inc.,RSI),畢竟「軟體開發實驗室」不太像一個大公司的名字。1983年,為了突出公司的核心產品,RSI再次更名為ORACLE。
美國Oracle公司總部一瞥
Oracle公司發展與壯大
RSI在1979年的夏季發布了可用於DEC公司的PDP-11計算機上的商用ORACLE產品,這個資料庫產品整合了比較完整的SQL實現,其中包括子查詢、連接及其他特性。但不得不說,軟體不是很穩定,並缺少事務處理這樣的重要功能。出於市場策略,公司宣稱這是該產品的第二版,但卻是實際上的第一版。之所以被命名為第2版而不是第1版,是因為Ellison認為潛在的客戶更願意購買第2個版本,而不是初始版本。(雖然這樣做有些不太誠實,還是要承認這是個十分高明的技巧。到現在還有一些公司把自己賣給客戶的版本叫做1.0,學學1979年的ORACLE吧!)多年以後的今天,ORACLE公司聲稱是他們第一個提供了第一個SQL關系型資料庫管理系統。
雖然軟體不是很好,但是客戶還是有的。美國中央情報局迫不及待的想買一套這樣的軟體來滿足他們的需求。但在咨詢了IBM公司之後發現IBM沒有可以商用的產品,他們聯系了RSI。於是RSI有了第一個客戶。在當時,政府和軍方的機構往往同時有幾種計算機,而那時還沒有什麼「軟體可移植」這樣的說法,當然,也幾乎沒有具有這樣的能力的應用軟體。也就是說,給PDP-11開發的ORACLE資料庫不能用在IBM主機和DEC的VAX上。很快用戶就表現出來這樣的需求:ORACLE能否同時在不同的操作系統上運行?這給RSI帶來了新的挑戰(主要是Miner和Scott)。70年代末期和80年代早期的軟體一般都設計成在單一操作系統上運行,具有可移植能力的軟體很少。
1983年3月,RSI發布了ORACLE第三版。Miner和Scott歷盡艱辛用C語言重新寫就這一版本。要知道,C語言當時推出不久,用它來寫ORACLE軟體也是具有一定的風險的,但除此之外,別無他法。很快就證明了這樣做是多麼的正確,C編譯器便宜而又有效。從現在起,ORACLE產品有了一個關鍵的特性:可移植性。ORACLE第3版還推出了SQL語句和事務處理的「原子性」――SQL語句要麼全部成功,要麼全部失敗,事務處理要麼全部提交,要麼全部回滾。ORACLE第3版還引入了非阻塞查詢,使用存儲在"before image file"中的數據來查詢和回滾事務,從而避免了讀鎖定(readlock)的使用(雖然通過使用表級鎖定限制了它的吞吐量)。同樣是1983年,IBM發布了姍姍來遲的Database 2 (DB2),但只可在MVS上使用。不管怎麼說,ORACLE已經佔取了先機。
Oracle公司收購Sun
『叄』 在Oracle甲骨文中國工作是怎樣一番體驗
甲骨文全球有18萬員工,除了美國,印度最大(3萬人),中國應該不超過5000,所以印度也是我們的老闆。 這一點和最近裁員諾基亞不一樣(中國主力研發),甲骨文資料庫的主要研發是在美國,ERP的研發是在印度(事實上EBS是甲骨文20年前收購的印度公司)。中國研發啥呢?研發一些花邊技術吧,或者給他們修一修bug。一定要認清楚EBS的重要,不僅僅是世界第二大ERP,也是甲骨文第二大的現金流來源(有些時候甚至超過Oralce DB!),國內騰訊,以前阿里,廣發,招商,等等都是用的EBS(沒錯,就是那個「難用」的報銷休假采購系統)
另外一個劃分標準是甲骨文分兩家法人甲骨文研究開發中心有限公司,和甲骨文有限公司。前者是研發,後者是銷售。銷售也要技術,做售前售後,都是技術。同樣的技術能力,去了後者工資是前者的2-4倍,並且,後者出差一天算一天調休,而前者的收入,一般般拉。
第三個維度就是,北京的研發,和深圳蘇州的研發。北京是研發所謂的業界前沿技術(不代表甲骨文的研究成果就前沿了,哈哈),但是甲骨文不擅長的東西,比如說雲啦,大數據啦(如果是收購的SUN和BEA的研發,北京也有,我不了解,可以參考EBS組的情況)。蘇州深圳,就是EBS(世界排名第二的ERP,僅次於SAP)的支持。蘇州這個點新開的,之前不存在。除了幾個點以外的甲骨文公司,肯定都不是研發,而是銷售。甲骨文研發根本不需要出差。真需要在一起,也是經理買個機票從美國飛過來坐你旁邊,而不是你飛過去……
以下針對深圳蘇州的以及部分北京的甲骨文研究開發中心子公司的員工:
甲骨文(北京部分崗位除外)的研發,工作還是比較輕松的,因為甲骨文的研究開發中心的工資競爭力不夠,所以留人的辦法主要是靠Work From Home。我觀察,很多人每工作滿一年,在家工作時間每周增加一天,也就是說你混得好,甲骨文待5年你就不必來公司上班了。有幾個傳說中的team,我就不點名了,一年我也就能見到幾次(他們真的是和我們工作在一層樓么?!)有些組,帶頭大姐修個產假,回來也照樣升職。我在甲骨文認識的很多大哥,都回什麼廣安啦、琿春啦、包頭啦,在家上班去了。
至於研發到底做了啥事?我不是不承認真的有開發,但是主要還是改bug吧。要不要加班?忙起來還真要,不過一年估計就忙1-2個月吧。其他時間,某些人都選擇在家……某些人還是選擇來公司,不然都不好玩了…
甲骨文可能是整個IT業界,最後一個使用瀑布開發流程的公司了(據說連邪惡的微軟都敏捷了……)。嚴格按照需求分析,概要設計,詳細設計……開發人員嘛,把詳細設計的代碼復制黏貼出來差不多了,然後主要的工作是測試唄(所以導致fixbug的技術含量更高,fix得好了,轉崗去干銷售double pay走起)。有一堆慘無人道難用到極點的內部軟體,有一堆完全沒有任何必要的流程。導致的結果是,每天平均代碼大概十多行吧。你還別急,快不了。開發一天,走流程到最終合並進去需要1-2周。1-2年才能出一個版本。那個版本,估計三個月開放幾天時間給你提交代碼。裡面幾乎所有的的都不是用的開源,難用到極點。
以下針對深圳蘇州的以及部分上海北京的甲骨文子公司的員工:
裁員經常裁他們,因為他們比較貴。很多人出差到華為、華潤之類的客戶公司。只有研發的「精英」才能去(資料庫的話有ACE吧,EBS的話起碼懂1.6萬張表中的3000-4000張吧)。其實接觸過,感覺這些人真正的特點是頭腦靈活,像我一樣(嘻嘻,感覺自己萌萌達)。這群人其實更像Business Analysis。
以下針對深圳北京的看家本領研發(DB):
如果是開發,聽說必須是清華北大上交復旦和北郵五所學校讀過本科才能進,但是同時得有碩士學歷。當然斯坦福、MIT什麼的也行。如果是測試或者支持要求低一點。
針對global pay的員工來說:
他們只是來中國旅遊上班的。每年要回美國幾個月,這樣綠卡不會丟。通常看家本領的開發,都是global pay。
--------------------------------------------補充三點-----------------------------------------------------------------------------------
1. 我忘記iflex/flexcube team這個廣泛的存在了
iflex也是收購的印度的銀行外包公司,和TCS infosys 等齊名。印度外包福利很好的也是16天年假,補充醫療保險,20天病假之類,所以收購進來福利和甲骨文沒區別。iflex研發,其實也沒研發啥東西,人力外包嘛。國內做做平安銀行啥的,有些人需要到客戶單位上班吧。其實HP啥的也早干這一行和IBM搶外包生意咯。
2. 甲骨文非常喜歡招到了生育年齡結婚了准備生小孩的女性
因為外企的工資10年來沒啥增長,某些team男人全部走光,招這樣的女人這樣就不會lose head count。而且說實在的也不需要你做啥,一天幾行代碼……一邊抱孩子一邊在家vpn寫,難度比換尿布還小點吧。
3. 甲骨文招人學歷確實很重要很重要,以下只針對99%的情況
注意:如果你是天生神力,小學輟學,自學英語計算機,然後寫得代碼比linus 高司令都好。你就是那個1%的情況。
起碼你得是個計算機相關專業的碩士吧,本科不是不可以概率比較小而已。不是985畢業的不是不可能,就是概率比較小(某些組對學歷更挑剔)。英語得好吧,要知道有些組可能全球就你一個人在中國,老闆是印度人或者美國人。不懂英語,混個毛線啊。
----------------------------------------------------------------------------------------------------
終於有人對我上面的文字提出不同意見了,非常好。我看了一下,集中在於肯定事實,但是否定我的「心態」。而且大多數是畢業就來了甲骨文的後生,我真的為他們感到擔心。
----------------------------------------------------------------------------------------------------
甲骨文這一套方法就是傳統的瀑布流開發方法,基本上是20年以前的思想。別的不說,這一套方法論徹底落後徹底過時了。世界潮流,順之則昌,逆之則亡啊!所以說,最害人的就是剛畢業的應屆生進入甲骨文,很多大學的教材本身就陳舊,再剛畢業就徹底實踐,我真擔心這個歧路會走太遠。我都不直接推薦你看scrum的書,你去看看《人月神話》《大教堂和市集》。每天平均十行代碼,甚至幾個月一行代碼,這只是表象,深層原因是方法論徹底錯了。人月神話說得很清楚,團隊裡面人與人的溝通是全連接,所以是N!的連接。EBS的團隊都到了幾千人,能夠開發出軟體而不失敗簡直就是奇跡。所以一天能有十行代碼真的是阿彌陀佛了。
說來甲骨文可以學到流程,這樣代碼質量高,是鬼扯。代碼質量高,還養了一千人修bug?某些java代碼,我真的看了無語得很,印度的java代碼尤其爛到家了。有文檔不代表代碼質量高,流程多和復雜更不代表代碼質量高。這是錯誤的方法,你還學,大錯特錯。
個人與互動 重於 流程與工具
可用的軟體 重於 詳盡的文件
與客戶合作 重於 合約協商
回應變化 重於 遵循計劃
EBS確實牛,ERP老二,和SAP分享全球30%的企業所有信息系統。但是也要知道有垂直ERP,他們沒有幾千人開發30年,他們就幾十個人上百人,開發周期一年,一周一個迭代,出來的ERP不比EBS簡單。他們每個人的代碼產出可能是甲骨文的十倍百倍,這就是敏捷。在一個敏捷團隊裡面,開發人員才是主角。而不是PM是主角,而不是直接從詳細設計裡面復制代碼出來粘貼。
社會人員入職甲骨文還是可以的。成家了,等等原因。需要平衡一下工作和生活。而且,如此輕松自己去兼職也是很自然的事情。此外,你真熟悉了產品,轉到好的客戶單位去也很厲害。很多甲骨文的人轉華為、廣發等等,基本上年薪也達到或者超過BAT同等年齡的人。關鍵是你的付出不多,收益太大,一個字——值!
至於工作環境,還算中上(強於IBM)。椅子不錯,但不是Herman Miller的。錘子手機和騰訊(不是所有)都是Herman Miller。電話機思科的IP-Phone,估計也值個幾千吧。辦公室有些發霉的味道,沒辦法,都是高隔間又不能隨便開窗戶,租的樓中規中矩,樓下就是騰訊。
甲骨文PM的權力很大,所謂的team building fee,怎麼感覺我們很少呀。真正靠譜的福利就是住房公積金(可以超越國企了)+補充醫療保險+1450,生日有電影票。至於啥十萬的培訓費,一般不會批的吧,看經理。買書報銷也要看經理。
民營企業確實有些三觀不正的,有的老總總喜歡渲染自己是半人半神,有的老總喜歡辦公室掛一個野戰地圖插紅旗要佔領全國(掛世界地圖的也有),在深圳更多的是毛主席頭像。不過,正常的也很多。最關鍵的是,自己不要被自己的僑情給害了。如果是小公司,你啥都可以和老總談的。現在很多創業公司MBP都是標配了。我對東西是很picky的,作為一個程序員你有啥理由不給自己上HHKB和4K顯示器?以前就在我的強烈建議下,叫總經理買了現磨咖啡機。(如果不給買,我自己買帶公司,離職後帶走,看他面子上掛得住么?)
生命如此短暫,哪有時間用難用的東西。