小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

架構(gòu)師成長歷程:行到水窮處,坐看云起時

 richsky 2014-07-11

【51CTO專稿】對于大部分的程序員來說,架構(gòu)師都是一個令人向往的角色。可以說除了少部分對程序開發(fā)有著極度的熱愛并愿意為之奮斗終身的程序員,而大部分的程序員都只是把寫代碼作為一個獲得職業(yè)提升的一個必要的累積階段。在不斷的開發(fā)和學(xué)習(xí)各種知識,經(jīng)驗,在自我培養(yǎng)和技能強化中不斷的提升,為他們的未來中成為一名合格的架構(gòu)師打下牢固的基礎(chǔ)。

一名優(yōu)秀的架構(gòu)師,他們都是帶著極度的熱情,踏上正確的路上,不斷的堅持!這就是一名優(yōu)秀架構(gòu)師的態(tài)度。下面小編有幸采訪到了51CTO云計算架構(gòu)師峰會的邀約講師,前任金蝶總體架構(gòu)部SOA架構(gòu)師,現(xiàn)淘寶網(wǎng)高級專家彭淵(花名:千峰)老師,跟我們一起聊聊關(guān)于他的架構(gòu)師歷程。

 

前任金蝶總體架構(gòu)部SOA架構(gòu)師,現(xiàn)淘寶網(wǎng)高級專家 千峰

千峰簡介:從業(yè)Java技術(shù)領(lǐng)域十多年,撰寫過多款開源軟件,擁有軟件著作權(quán)的代表作有:BS系列軟件(包括財務(wù)進銷存、OA產(chǎn)品、CRM等)、FMS視頻會議、Flash網(wǎng)站生成軟件。其中BS系列軟件獲得過風(fēng)險投資, FMS視頻會議獲得金山舉辦的首屆中國優(yōu)秀軟件創(chuàng)新大賽優(yōu)秀獎。其中《BS財務(wù)進銷存》、《FLASH網(wǎng)站生成軟件》在華軍、天空可免費下載。《淘寶分布式并行計算四合一框架Fourinone》是云計算方面作品,目前已經(jīng)通過壓測并用于淘寶業(yè)務(wù)場景, wordcount和排序等經(jīng)典指標均優(yōu)于hadoop。

詳見技術(shù)博客 (可下載開發(fā)包和demo):http://3503265.blog.51cto.com/

專長與研究領(lǐng)域:千峰踏入IT行業(yè)至今差不多12年了,一直做Java技術(shù)領(lǐng)域,幾乎Java SE, Java EE,Java ME都涉及過。除此外,他還比較熟悉FLASH音視頻技術(shù)和少量的C技術(shù),主要是因為Java在音視頻和操作系統(tǒng)層面控制比較弱的原因。而在應(yīng)用方面,B/S結(jié)構(gòu)的企業(yè)軟件架構(gòu)更是他的專長,并擁有一系列軟件著作權(quán)。在淘寶先后在交易中心、中間件、核心系統(tǒng)部門,主要研究非法軟件防范(秒殺器,炒信用,代拍,爬蟲等)、大數(shù)據(jù)處理、語義分析、分布式計算、機器資源利用等領(lǐng)域。

(以下內(nèi)容均為第一人稱)

從對IT熱愛到程序員生涯

我在高中時買了臺中英文小霸王游戲機(那時有電腦的家庭很少),可以接在電視上玩,里面有個Basic編程的,我第一次學(xué)會了goto語句。大學(xué)時喜歡打電腦游戲,后來又覺的游戲打的好不算什么,當(dāng)時流行做個人主頁,有個漂亮的個人主頁很有面子,于是我就買了本FrontPage的書,暑假關(guān)著門學(xué)做網(wǎng)頁,穿插一些js動態(tài)效果和applet動畫,看見流行flash動畫,我又學(xué)習(xí)flash腳本。后來去找實習(xí)工作,別人說我搞的這些沒用,他們不需要網(wǎng)頁制作,他們要用PB+SQL Server,然后我又繼續(xù)學(xué)習(xí)數(shù)據(jù)庫應(yīng)用,一直到畢業(yè),我自學(xué)了很多VC++/MFC/ODBC等東西,也學(xué)習(xí)了Java。我大部分的編程都是靠自學(xué),計算機課程和老師教的幫助比較小.我的第一份工作是基于Java編程的,還專門到bea公司進行了J2EE培訓(xùn),后來就一直做了下來。

 

有朋友問過我,為什么只做Java編程,不去做C編程。實際上,如果僅僅是編程語法語句,任何一種語言我都可以很快學(xué)會。關(guān)鍵Java技術(shù)已經(jīng)是一個從無線到桌面到Web到ic卡的完整的技術(shù)體系和規(guī)范,并生長出各種技術(shù)生態(tài)系統(tǒng),如果要考慮快速落地實現(xiàn)一個系統(tǒng),很多處理經(jīng)驗是要積累起來的。

從程序員到架構(gòu)師的經(jīng)歷

“從感興趣、學(xué)習(xí)、懷抱當(dāng)比爾蓋茨理想”到“走入這個行業(yè)靠編程謀生并成長為一個架構(gòu)師”是一個曲折蛻變的過程,我記的好像是在2004年左右,架構(gòu)師這個崗位從國外傳入,很多公司出現(xiàn)了招聘架構(gòu)師,以前比較多出現(xiàn)系統(tǒng)分析員。什么是架構(gòu)師,各公司的標準也不一樣,架構(gòu)師更多是個崗位,你只要聘上了就是架構(gòu)師。我自己的經(jīng)歷大概是這樣的:

1)架構(gòu)師要能hold的住一個軟件或者系統(tǒng)的設(shè)計和開發(fā)

2002年我到廣東發(fā)展沒有經(jīng)驗,被兩個老板騙到南海軟件園包吃住干過一段時間,當(dāng)時去投標一個南海民政的項目,公司是打著北方一個分公司名義的皮包公司,找了幾個畢業(yè)不久的學(xué)生當(dāng)工程師,又找了一個頭銜多的海龜說是他們的技術(shù)總監(jiān),湊成一只廉價成本的團隊去忽悠上百萬的項目,老板說這個項目副市長親口告訴他已經(jīng)交給我們做了,只需要招標走走形式。

由于公司主要靠兩個老板的關(guān)系,沒有自己的技術(shù)產(chǎn)品,當(dāng)時老板從其他公司找來一套民政系統(tǒng)軟件,Web化的,老板說是其他公司一個資深點小伙子寫的,說其實1-2個人就可以寫了,沒什么難的,叫我改成公司的產(chǎn)品去投標。當(dāng)時接到這套完整的Web系統(tǒng)軟件時,雖然是Java的,但是沒有用到多少j2ee里面花哨的東西,都是jsp+Javabean這種簡化的技術(shù),也有控制器等角色,都是jsp實現(xiàn)的,里面復(fù)雜的頁面流和大量Javascript腳本顯示出開發(fā)者嫻熟的Web編程功底,數(shù)據(jù)表可以自由搭建,里面有些簡化的生成管理模塊的工具。當(dāng)時有種hold不住的感覺,感覺自己Web程序還寫的太少,還未積累大量Web編程的處理經(jīng)驗和將業(yè)務(wù)系統(tǒng)通過構(gòu)思設(shè)計轉(zhuǎn)換成軟件的能力。雖然急功近利的老板認為我可以,一再給我畫餅,主要原因是因為我們便宜。當(dāng)時感覺技術(shù)不用花哨,簡單的技術(shù)只要用的多用的精,一樣可以設(shè)計完整高效的系統(tǒng)。

說白了,架構(gòu)師能hold的住一個軟件或者系統(tǒng)的設(shè)計和開發(fā),能將業(yè)務(wù)需求變成可實施的工程。后來看,那個能hold住民政系統(tǒng)的小伙子算是架構(gòu)師吧。 老板缺乏對項目技術(shù)難度的認識,認為隨便找?guī)讉€工程師就能做,也許他之前也這樣忽悠到過項目,但是這個項目最后沒中,記的是東軟通過重重關(guān)系中標了。

2)有一天你發(fā)現(xiàn)自己的能力可以去當(dāng)架構(gòu)師了

從那以后幾年內(nèi),我都處處留意Web系統(tǒng)整個的架構(gòu)設(shè)計,從登陸、用戶、權(quán)限、菜單、session、日志等基礎(chǔ)管理到從界面到動作處理到業(yè)務(wù)邏輯層到數(shù)據(jù)庫設(shè)計的整個過程,模塊的銜接和各種頁面流的轉(zhuǎn)發(fā)傳送,每種實現(xiàn)技術(shù)我都嘗試出最好的,并積累下來,我又從一個香港人那里學(xué)到一套更好客戶體驗的Web管理界面和交互方式,并轉(zhuǎn)換成自己的東西用進去, 我注重強化自己各方面的開發(fā)技能, 連簡單的美工也嘗試自己處理。

我能自己實現(xiàn)一個完整的Web系統(tǒng)后就自己開個工作室,接一些小項目做,直到后來為一個小公司的老板做外包,我演示了自己的Web架構(gòu)給他看,他說我覺的你挺適合來我們公司做架構(gòu)師,那是第一次有人說我是架構(gòu)師,有點躊躇滿志。他們公司的主打產(chǎn)品是套domino的oa軟件,老板出身ibm,對domino/lotus熟悉,但是由于市場和客戶需求,想改成Java版的,但是又一直猶豫不決,我說我試試看吧。oa的主要核心技術(shù)是工作流引擎,他說他們已經(jīng)做了很多年,Java沒那么容易實現(xiàn)的。那段時間我反復(fù)研究工作流的原理,簡化成工作流定義,工作流引擎,工作流實例幾個模塊融入進已有架構(gòu)中,并做了他們沒有的Web界面編輯流程,工作流可以搭建并生成流程代碼,我順便把oa的常用辦公流程業(yè)務(wù)模塊也生成了出來,配合權(quán)限體系能完成一個基本oa系統(tǒng)審批功能了。隨著系統(tǒng)功能越來越完善,本以為他會高興的,誰知道他的臉色越來越難看,有天居然以莫須有的罪名把我炒掉了。

我也許有問題不善于揣摩老板的心思,但是他的心胸也絕對是有問題的,所以最好不要到小企業(yè)當(dāng)架構(gòu)師, 大企業(yè)就像海,容得下各種魚,小企業(yè)就象灘水,只容的下蝦米.后來我繼續(xù)寫oa系統(tǒng)并包裝成完整的產(chǎn)品,又找來小投資公司一起在社會上銷售和做軟件服務(wù)折騰了4-5年。

總結(jié):如果你能冒著被k掉的危險設(shè)計出一個企業(yè)的核心產(chǎn)品了,那你可以去當(dāng)架構(gòu)師了。

3)聘大公司的架構(gòu)師

我覺的自己相比經(jīng)營公司更適合做技術(shù).于是去大公司發(fā)展技術(shù), 我應(yīng)聘的第一家大公司是家金融軟件企業(yè), 2007年在美國紐交所剛上市,號稱金融外包全國第一,當(dāng)時紅極一時.面試官看上去像老總(其實只是經(jīng)理,他們公司經(jīng)理看上去都像老總),我說我要聘架構(gòu)師, 他臉一沉,說不能都當(dāng)領(lǐng)導(dǎo),得有人干活,先從高級工程師做起吧。我不同意,他說那好吧,有三道算法題你上機做一下,不能上網(wǎng)。其實那三道算法題是有一定難度的,要在規(guī)定的時間做出來,并且要能運行出正確結(jié)果,當(dāng)時有點緊張,因為知道他是在壓制我的自信,如果不能正確做出,肯定羞愧的不好意思再提聘架構(gòu)師了。其中最難的一道是一個程序試探路徑的算法,遍歷出所有可行的路徑,好在我的編程功底還不錯,平時也喜歡寫寫這方面的算法,最后順利做出了。他讓一個研發(fā)工程師過來檢查,沒問題,然后似笑非笑的說,既然你堅持要當(dāng)架構(gòu)師,那就成全你吧,看你還算是個人才,給你加多1000塊錢,但是你兩年之內(nèi)不要跟我提加工資,我們兩人定個君子協(xié)定。我只能接受并謝主龍恩。

進公司后我發(fā)現(xiàn),其實他們公司其他的架構(gòu)師都是不用寫程序的,而且架構(gòu)師在他們眼里也就是一個干活的,比工程師好一點,但并沒有多少尊重。架構(gòu)師的上面是項目經(jīng)理,再上面是經(jīng)理,總監(jiān),總監(jiān)上面還有很多領(lǐng)導(dǎo),架構(gòu)師向項目經(jīng)理匯報,由項目經(jīng)理指揮派活。應(yīng)聘項目經(jīng)理的是不需要上機編程的,技術(shù)弱點也可以,只要溝通好,領(lǐng)導(dǎo)認可就行,而且待遇更高。

這個公司雖然有很多架構(gòu)師,但只是另一種小主管意義的頭銜,當(dāng)時在那個環(huán)境下也很迷惘,想往管理上轉(zhuǎn)型,但是他們不同意,認為我干活更合適。后來這家7000人的企業(yè)因為非?;靵y的政治斗爭和在美國股市上做假賬,在2011年被退市,然后就迅速崩潰了,讓人感慨不已,這就是it行業(yè),市場總在無情的洗牌。

說到這里,也許才踏入行業(yè)的程序員們有點失望,現(xiàn)實中的架構(gòu)師沒有想像中的那么令人向往,國內(nèi)技術(shù)路線發(fā)展也注定坎坷。但是每個企業(yè)對架構(gòu)師的定位標準和尊重程度都不一樣,不能說天下烏鴉一般黑,互聯(lián)網(wǎng)企業(yè)比傳統(tǒng)軟件外包企業(yè)要好很多。而且上面說的也只是我個人的經(jīng)歷和觀點,不代表所有的現(xiàn)實環(huán)境。

 

架構(gòu)師的成長曲線

從如何加強技能到自我培養(yǎng)

1)加強技能修養(yǎng)

有句俗話說的:不怕賊偷,就怕賊惦記。只要惦記上要掌握某項核心技術(shù),不掌握誓不罷休,總會不知不覺在提高的。

但是很多程序員加強技能修養(yǎng)是希望得到公司的升遷回報乃至市場的利益回報的,如果他發(fā)現(xiàn)技能提升并不一定得到認可和回報,那么也沒有多少人真正愿意往這條路上走了。因此,搞技術(shù)需要一點興趣的,就象平時喜歡搞點吹拉彈唱的那些人一樣,我平時也喜歡搞點編程什么的,所以一直還做著。

另外:

每個公司對架構(gòu)師都有自己的定義,不一定是強調(diào)技術(shù)方面的技能,你會發(fā)現(xiàn):

有擅長金融業(yè)務(wù)、ERP業(yè)務(wù)、電商業(yè)務(wù)的架構(gòu)師

有擅長產(chǎn)品規(guī)劃的架構(gòu)師

有擅長售前和解決方案的架構(gòu)師

有擅長咨詢顧問的架構(gòu)師

有擅長硬件網(wǎng)絡(luò)的架構(gòu)師

有擅長RUP/軟件工程/CMM5/敏捷的架構(gòu)師

有擅長管理協(xié)調(diào)的架構(gòu)師

等等...

我在社會上各個公司里見到太多太多

所以不能簡單的認為提高了軟件編程的技能修養(yǎng),就能達到所在企業(yè)架構(gòu)師的標準了。要學(xué)會尊重不同類型的架構(gòu)師,在大企業(yè)里往往這些崗位的存在都有他的現(xiàn)實意義和對公司的價值,沒有眾多架構(gòu)師和領(lǐng)導(dǎo)的支持,很難推動起來辦成事。

2)如何自我培養(yǎng)

我個人從實踐中的成長更多一些,因為我大學(xué)畢業(yè)就投身這個行業(yè)去努力了,沒有繼續(xù)讀書深造。

但是實踐和理論都是重要的,有的人實踐中碰到障礙后,干脆從此就只做一個理論專家,或者是自身缺乏理論學(xué)習(xí),到處散布理論無用論,兩種極端都不可取的。

從我的感受來說,我寫bs財務(wù)進銷存軟件時,苦于不懂財務(wù)理論知識,花了很多時間去學(xué)習(xí)會計憑證、資產(chǎn)負載、折舊算法這套東西,也包括當(dāng)時為了做其他軟件去學(xué)習(xí)股票行情趨勢理論、博彩概率和分成理論等等。學(xué)這些都不為考試,就為軟件寫出來能賣出去。同樣的技術(shù),如果做業(yè)務(wù)簡單不需要專業(yè)理論知識的產(chǎn)品,比如企業(yè)網(wǎng)站、圖書管理這些,太多公司都可以做,很難形成核心競爭力。現(xiàn)在做fourinone也參考了很多行業(yè)分布式論文理論。

我自己從程序員到架構(gòu)師的成長上面經(jīng)歷已經(jīng)描述了,但是如上面說的各公司定義這個過程的成長標準是不一樣。

比如:

有的企業(yè),為公司完成一定數(shù)量和規(guī)模的項目,就可以從程序員提拔為架構(gòu)師了

有的企業(yè),為公司解決一系列重大的問題,就可以提拔為架構(gòu)師了

有的企業(yè),前一任架構(gòu)師走了,就可以提拔上去了

有的企業(yè),經(jīng)驗到一定程度,就升上去了

...

關(guān)于架構(gòu)師的培養(yǎng),有的國外牛人會認為不是每個程序員都能成為架構(gòu)師, 一定要有比較強的抽象建模能力和邏輯思維能力才可以,就像不是每個司機都能成為賽車手。這個話如果拿到國內(nèi)講估計會得罪很多人了,因為大家都會強調(diào)架構(gòu)師的多樣性,都會按照自己的優(yōu)勢去定位架構(gòu)師的標準。

 

架構(gòu)師成長模型

團隊中如何開展架構(gòu)師相關(guān)工作

通俗的比喻,跟裁縫做衣服也差不多,首先要量體裁衣(收集需求),然后選擇布料(技術(shù)選型),設(shè)計草圖(建模)把腦海里的設(shè)計畫出來,做好一件衣服是要針線活功底和經(jīng)驗的(技術(shù)積累),同時要利用現(xiàn)有的拉鏈、鈕扣等半成品(組件重用),最后把樣品做出來(架構(gòu)開發(fā)),最后交給工人按照樣品重復(fù)性生產(chǎn)(基于架構(gòu)實現(xiàn)重復(fù)性開發(fā)工作量)。

除了需求分析、技術(shù)選型、設(shè)計開發(fā)外,還有些其他的工作需要架構(gòu)師做。

很多時候公司或者老板并不喜歡你把核心的東西提取出來,一個人單槍匹馬掌握了就完了,更希望你把團隊培養(yǎng)起來,把人才挖掘出來,所以架構(gòu)師還肩負著帶徒弟做設(shè)計的職責(zé)。

另外還包括

技術(shù)培訓(xùn)、協(xié)助軟件產(chǎn)品規(guī)劃、協(xié)助市場前景分析等方面工作。

堅持是最大的挑戰(zhàn)

這次參加infoq架構(gòu)師峰會,看到有朋友討論到架構(gòu)師應(yīng)該獨立做,但是沒有團隊,沒有業(yè)務(wù)owner權(quán),架構(gòu)師設(shè)計出來的東西如何得到別人的支持呢,我以fourinone為例說明碰到的挑戰(zhàn)和如何去克服。

fourinone發(fā)布1年多以來,以無依賴100k大小實現(xiàn)眾多分布式核心技術(shù),淘寶內(nèi)壓測多項指標都ok,雖然遭受其他框架愛好者和信任者質(zhì)疑,但是至今為止,也未見到挑出一些真正的明確的毛病。一項好的產(chǎn)品,如何讓大家能充分認識到他的優(yōu)勢,并梳理清楚大家贊成或反對的技術(shù)或非技術(shù)原因,這是對架構(gòu)師一項大的挑戰(zhàn)。

對人的攻關(guān)遠比對技術(shù)的攻關(guān)復(fù)雜,有時候就算產(chǎn)品做的好也是有人反對的,所以要盡可能去定位成一個協(xié)助者,而不是一個取代者,就象jdk可以實現(xiàn)hadoop所有功能,但是沒人覺的它是hadoop的取代者。fourinone更多的是定位在框架和api,為各種的分布式問題提供簡化而強大的支持,可以用它改進完善已有系統(tǒng),也可以用它建設(shè)新系統(tǒng)。它是一臺縫紉機和一條拉鏈,而不是一件完整的衣服,不會對另一件衣服夠成沖突。

當(dāng)然,最大的挑戰(zhàn)還是堅持往架構(gòu)師這條路上走,朋友們?nèi)绻龅揭粫r困難也不要著急,行到水窮處,坐看云起時,忽悠忽悠也就過去了。

最后感謝你們的真誠采訪,算不上成功權(quán)威,胡亂說了一通,希望大家有所借鑒和收獲。

【編輯推薦】

【責(zé)任編輯:小林 TEL:(010)68476606】


    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多