休整的同時(shí),我意識到自己應(yīng)該接觸最新的技術(shù),學(xué)習(xí)更多的知識,而且要確定我的研究方向了。我時(shí)刻提醒自己,作為一名研究生,一定要在某一領(lǐng)域有些造詣。企業(yè)應(yīng)用一直是我關(guān)注的領(lǐng)域,如今電子商務(wù)已經(jīng)成為熱點(diǎn),而且不斷為企業(yè)創(chuàng)造價(jià)值,相關(guān)技術(shù)(無論是信息技術(shù)還是管理技術(shù))也越來越成熟,但仍然有許多值得研究的課題。我應(yīng)該盡快學(xué)習(xí)最新的信息技術(shù),并與企業(yè)應(yīng)用相結(jié)合,爭取在研究生期間取得一定的研究成果。當(dāng)我聽到IBM的“隨需應(yīng)變”時(shí),盡管我不是太了解其中真正含義,但我知道這是一個(gè)具有劃時(shí)代意義的概念。
雖然我一直在關(guān)注JAVA/J2EE技術(shù),但由于時(shí)間的關(guān)系,只停留在理論階段,雖然用JAVA做過課程設(shè)計(jì),但對JAVA的精髓以及J2EE構(gòu)架對只處于了解階段。我知道未來是e時(shí)代,網(wǎng)絡(luò)將改變?nèi)祟惖纳?、工作方式,?/SPAN>.NET和J2EE無疑是當(dāng)今WEB應(yīng)用和e-business最流行的兩個(gè)平臺(tái)。我一向來對微軟的東西不感冒,而JAVA是我?guī)啄昵熬驼J(rèn)識的老朋友了,雖然不是太熟悉,但我相信一回生,二回熟。在以前開發(fā)C/S結(jié)構(gòu)的系統(tǒng)時(shí),我就憧憬著中間件了。而J2EE完美的架構(gòu)深深吸引了我,一個(gè)MVC模式足可以讓一群愛好者為之傾倒了。
我是幸運(yùn)的。一直以來,我都覺得自己是幸運(yùn)的,細(xì)細(xì)想來,每個(gè)人都可能遇到這樣那樣的機(jī)遇,但上帝只青睞有準(zhǔn)備的頭腦,我一直以來的努力讓我具備了有準(zhǔn)備的頭腦,所以機(jī)會(huì)來臨時(shí),我已經(jīng)準(zhǔn)備好了。研一暑假就快要來臨時(shí),實(shí)驗(yàn)室接到一個(gè)外包電子政務(wù)項(xiàng)目,采用J2EE技術(shù),由外包方派出項(xiàng)目經(jīng)理管理項(xiàng)目的研發(fā),實(shí)驗(yàn)室提供開發(fā)人員,我有幸成為其中一員。雖然最后項(xiàng)目中途撤走,但在準(zhǔn)備和前期開發(fā)過程中,我還是學(xué)到了與J2EE平臺(tái)相關(guān)的技術(shù)(JSP、Servlet、EJB),積累了一定的J2EE編程經(jīng)驗(yàn),而且通過使用IBM的WSAD初步了解了Eclipse平臺(tái)的美妙。從那時(shí)開始,我對IBM越來越感興趣。雖然早就聽說了郭士納帶領(lǐng)IBM這只大象跳舞的故事,但對IBM的了解還是從使用WSAD開始。也是從那時(shí)開始,我喜歡到IBM的網(wǎng)站去遛遛,也成了DeveloperWorks的常客。Why join IBM?告訴了我很多關(guān)于IBM核心競爭力之源;Life At IBM和Meet Our People讓我了解了IBM生活和IBMer;Available Positions讓我看到了自己努力的方向。在CSDN.net,zdnet.com等網(wǎng)站上我不斷了解到IBM的動(dòng)態(tài),我深深被IBM吸引,以前的我一直在考慮自己的發(fā)展方向,然而很少考慮發(fā)展的平臺(tái),當(dāng)遇上IBM時(shí),我知道她就是我的目標(biāo)了。雖然以前也經(jīng)常關(guān)注國內(nèi)外IT公司的動(dòng)態(tài),但象關(guān)注IBM的那種認(rèn)真勁,還是第一次。我也開始思考前輩們在我耳邊的教導(dǎo)“不要盲目追尋大公司,只有符合自己的定位和目標(biāo)的公司才對你的職業(yè)道路有利”,思考自己的定位和目標(biāo),進(jìn)一步了解IBM,不斷問自己:究竟IBM是否適合你的發(fā)展?我得到的答案始終是肯定的。IBM始終站在信息技術(shù)的最前沿,不斷為世界各地的企業(yè)提供優(yōu)秀的解決方案和IT產(chǎn)品,而這正是我的人生理想。IBM神奇的技術(shù)讓我傾慕不已,IBM偉大的產(chǎn)品讓我贊嘆不已,IBM的企業(yè)文化更是令人向往,能與IBM的專家們一起為企業(yè)提供優(yōu)秀的解決方案是我夢寐以求的事。
正當(dāng)我苦于沒有機(jī)會(huì)進(jìn)一步了解IBM的技術(shù)和產(chǎn)品時(shí),迎來了我又一個(gè)新的機(jī)會(huì)。那時(shí)研二剛開始不久,我正沉浸于期刊論文庫里面的論文。導(dǎo)師帶來了一位來自新加坡的CEO,這是我見過的第一個(gè)具有CEO頭銜的人,呵呵。以為終于可以pratise我平時(shí)練就的oral English了,但他居然會(huì)說普通話,而且蠻標(biāo)準(zhǔn)的,所以我就收皮了,J。聽他介紹后,我了解到他是Singapore Beans Factory(A member of Beans Group)的CEO和CTO,Beans Factory是IBM的Business Partner,在Hong Kong和北京有分公司,他們的產(chǎn)品和解決方案都是基于IBM的products的。這次他們找到導(dǎo)師是希望和我們實(shí)驗(yàn)室建立長期合作的關(guān)系,他們準(zhǔn)備進(jìn)入中國大陸市場,而且已經(jīng)中標(biāo)一項(xiàng)目,客戶是**人壽保險(xiǎn)有限公司。由于他們在廣州沒有分公司,這個(gè)項(xiàng)目由他們的香港分公司負(fù)責(zé),他們希望我的導(dǎo)師這次能派出一位有J2EE開發(fā)經(jīng)驗(yàn)的學(xué)生參與這個(gè)項(xiàng)目。導(dǎo)師非常重視這次合作機(jī)會(huì),他重點(diǎn)推薦我參加這次的項(xiàng)目(我在之前暑假期間的電子政務(wù)中承擔(dān)了主要開發(fā)任務(wù)),同時(shí)也推薦了幾位同學(xué)作為候選者。我們一起參加了由Beans Factory組織的面試,結(jié)果我有幸成為唯一錄取的人。當(dāng)時(shí)有些緊張,但更多的是興奮,因?yàn)槲医K于可以實(shí)現(xiàn)自己的愿望,由了進(jìn)一步了解IBM技術(shù)和產(chǎn)品的機(jī)會(huì)。IBM是我的夢想,而這次機(jī)會(huì)則是一個(gè)跳板,我要趁此機(jī)會(huì)努力提升自己。
10月12號,我步入了廣州最高的建筑物中信廣場,來到了**人壽保險(xiǎn)總部。由于Beans在廣州沒有Office,我和我的香港同事就在客戶的Office辦公。我花兩天時(shí)間閱讀了項(xiàng)目Requirement Specification和Schedule,熟悉了項(xiàng)目的情況,了解到這個(gè)項(xiàng)目的開發(fā)人員其實(shí)就只有我一個(gè)人,一位香港同事負(fù)責(zé)需求分析和系統(tǒng)設(shè)計(jì),另一位很少出現(xiàn)的同事是我們的Project Manager,后來從澳洲請來了一位System Expert,負(fù)責(zé)系統(tǒng)的安裝和配置。我的前期任務(wù)主要是負(fù)責(zé)一些后臺(tái)程序開發(fā),以及根據(jù)用戶的需求對IBM的產(chǎn)品作一些二次開發(fā)(比如UI customization、增加一些功能等等),并作一些產(chǎn)品(如Content Manager、eClient等)的configuration。與同事的溝通基本上采用email通過英文進(jìn)行交流,讓我有了外企的體驗(yàn)。
這個(gè)項(xiàng)目全稱是Imaging&Workflow System,包括英國**臺(tái)灣公司和**保險(xiǎn)兩個(gè)part,我是廣州項(xiàng)目組的成員,后來也承擔(dān)了臺(tái)灣項(xiàng)目組的部分開發(fā)任務(wù)。在廣州的項(xiàng)目,只有Imaging System,沒有Workflow部分,使用Content Manager進(jìn)行影像管理。參加項(xiàng)目之前,我簡單了解過WebSphere Studio,但沒有深入。當(dāng)拿到產(chǎn)品系列文檔時(shí),我如獲至寶。由于我前期面臨著與Content Manager相關(guān)的開發(fā),所以我首先詳細(xì)閱讀了CM的系列文檔,對CM有了全面的認(rèn)識,并熟悉了CM的API。在之后的兩個(gè)星期里,我的任務(wù)是開發(fā)兩個(gè)后臺(tái)程序,使新系統(tǒng)與已有系統(tǒng)互相集成。由于我對Content Manager有了充分的了解,而且有Java編程基礎(chǔ),很快我就完成了后臺(tái)程序的開發(fā),同時(shí)抽空了解了eClient和WAS。Eclient和Client for windows(Fat client)是Content Manager的兩個(gè)客戶端應(yīng)用程序,而eClient是基于J2EE架構(gòu)的Web應(yīng)用程序,用戶選擇了eClient作為客戶端應(yīng)用程序,但要求按照他們的需求對eClient進(jìn)行customization。雖然對UI進(jìn)行customization并不難,但用戶要求增加的有些功能卻需要對eClient傷筋動(dòng)骨,需要對eClient的整體結(jié)構(gòu)比較了解才行。EClient是基于J2EE架構(gòu)的,這正是我學(xué)習(xí)J2EE的好機(jī)會(huì),而且這是我向往已久的IBM的技術(shù)。同時(shí)我還需要做Content Manager的configuration,這使我進(jìn)一步了解了Content Manager的思想和structure。
在項(xiàng)目進(jìn)行期間,我再一次深深體會(huì)了溝通的重要性,也通過與用戶和同事的交流進(jìn)一步提高了溝通表達(dá)能力。我們的Office有一塊白板,交流時(shí)我們習(xí)慣在白板上表達(dá)自己的意思,有爭論,有贊同,最終的結(jié)果是互相明確對方的意思。項(xiàng)目中期與來自新加坡的Capture Software Vendor的人員共事期間,有了practise oral English的機(jī)會(huì),雖然說得不大地道,但不影響互相之間的溝通,提高了英語口語表達(dá)能力。
在中期系統(tǒng)測試和上線時(shí),我通過不斷學(xué)習(xí)深入了解DB2、WAS,逐漸能夠協(xié)助system expert進(jìn)行系統(tǒng)的配置和通過調(diào)整參數(shù)優(yōu)化性能。印象深刻的一次是系統(tǒng)剛剛上線,eClient使用不到四個(gè)鐘頭就會(huì)導(dǎo)致AIX服務(wù)器(RS6000)內(nèi)存消耗殆盡,不得不重新啟動(dòng)eClient服務(wù)才能重新恢復(fù)。通過觀察,我發(fā)現(xiàn)用戶使用時(shí)DB2的connection不斷增多,隨著DB2的connection的增長,AIX的占用內(nèi)存也不斷增長。由于用戶使用初期不太習(xí)慣操作方式,每次退出都是直接關(guān)閉IE,而不是注銷退出,這樣導(dǎo)致DB2的connection一直保留,而且直線增長。我突然想起以前看到的一篇關(guān)于connection pool的文章,難道沒有使用connection pool?我打開WAS admin console,果然eClient沒有定義connection pool。于是我向PM和system expert提議使用connection pool,他們采納了我的建議,情況得到了好轉(zhuǎn)。雖然我知道他們只是一時(shí)沒考慮到,但我還是為能解決這個(gè)問題而高興。我再次想到那句話:機(jī)會(huì)只青睞有準(zhǔn)備的頭腦。我相信只要自己不斷學(xué)習(xí),總會(huì)得到好的鍛煉機(jī)會(huì)。另外一次令人難忘的也是performance的問題,依然是eClient,用戶在查詢數(shù)據(jù)時(shí)感覺到很慢,之前由于數(shù)據(jù)不多,所以沒有多大感覺,現(xiàn)在數(shù)據(jù)越來越多,查詢速度也越來越慢。而且我的一個(gè)用JAVA寫的后臺(tái)程序運(yùn)行時(shí)間也相當(dāng)長,該后臺(tái)程序的任務(wù)是從另外一個(gè)系統(tǒng)(Storing data in DB2 for AS400)讀取數(shù)據(jù)來更新CM的屬性值,涉及到CM的item search、retrieve等操作,隨著數(shù)據(jù)的增長,這個(gè)程序跑的時(shí)間越來越長,間接影響eClient的性能。當(dāng)時(shí)system expert在臺(tái)灣,不能趕過來解決問題。我作為我們公司的唯一技術(shù)人員就擔(dān)負(fù)起解決問題的重任,雖然沒有強(qiáng)制要求要我務(wù)必解決這個(gè)問題,畢竟我只是一個(gè)developer,但我想這是一個(gè)鍛煉自己的機(jī)會(huì),也是一個(gè)學(xué)習(xí)的過程。我首先分析了情況,都涉及到CM的查詢,肯定與index有關(guān)。按照這個(gè)思路,我閱讀了相關(guān)文檔,并到IBM的網(wǎng)站搜索相關(guān)主題,初步有了解決問題的思路,可以通過調(diào)節(jié)DB2的buffer pool的size和建立CM屬性索引來解決這個(gè)問題。我向同事說明了我的思路,得到他們的肯定和允許,于是我在測試服務(wù)器上進(jìn)行了相關(guān)改動(dòng),并進(jìn)行了測試,果然發(fā)現(xiàn)經(jīng)過這些改動(dòng)后,查詢速度有了明顯的改善,而且我的后臺(tái)程序速度提高了四倍多。當(dāng)時(shí)的興奮勁就甭提了,好像發(fā)明了新大陸一樣。或許這些對于一個(gè)IBM產(chǎn)品專家來說算不了什么,但對于我確是一個(gè)莫大的鼓舞。經(jīng)過不斷磨煉,我對自己越來越有信心;同時(shí)也對IBM的技術(shù)和產(chǎn)品更加欽佩和向往。IBM的技術(shù)始終處于IT領(lǐng)域的前沿,產(chǎn)品都比較高端,如果只懂之皮毛,很難領(lǐng)略到IBM技術(shù)的精髓和產(chǎn)品的神奇。同時(shí)也感到其它IT公司實(shí)施IBM的產(chǎn)品時(shí)缺乏高水平的專家或工程師進(jìn)行技術(shù)支持,導(dǎo)致客戶對IBM的產(chǎn)品產(chǎn)生偏見。
雖然我對IBM的技術(shù)和產(chǎn)品有了一定了解,但我知道還差很遠(yuǎn)。能與IBM的專家和工程師一起工作,學(xué)習(xí)IBM技術(shù)的精髓,并與IBMer一起為企業(yè)提供優(yōu)秀的solution,是我的追求,我的夢想!現(xiàn)在我迎來了到IBM實(shí)習(xí)的機(jī)會(huì),無論我是否可以把握住這個(gè)機(jī)會(huì),我都會(huì)不斷努力,朝這個(gè)夢想前進(jìn)!
經(jīng)過了前段時(shí)間的忙碌之后,我得到了難得的休整期。項(xiàng)目第一階段上線之后,我的主要任務(wù)是處理用戶的反饋,解答用戶的問題。在這個(gè)休整期,我開始著手準(zhǔn)備IBM的認(rèn)證考試,我希望通過IBM的認(rèn)證考試,總結(jié)梳理我的知識,加深我對IBM產(chǎn)品的了解,得到進(jìn)一步的提高。