挨踢部落故事匯(2):機緣所致轉(zhuǎn)型之路
原創(chuàng)【51CTO.com原創(chuàng)稿件】 以匠心 鑄非凡
曹洪偉·研發(fā)負責(zé)人
***次看到他的照片,一副永不服輸?shù)臉幼映霈F(xiàn)在腦海中。老曹曾經(jīng)流浪過幾家世界500強,投身過幾個創(chuàng)業(yè)團隊,出過幾本過時技術(shù)的小冊子,涂鴉過幾篇文字,署名了幾個國內(nèi)外專利,目前是和創(chuàng)科技研發(fā)負責(zé)人,技術(shù)VP。
初涉職場,不懼挑戰(zhàn)
老曹大學(xué)是學(xué)無線通信的,學(xué)過《電磁場理論》后,對諧振腔濾波器(一個銅管)很感興趣。喜歡硬件,壓根看不起寫代碼的(可能很多其它專業(yè)的童鞋也是如此), 現(xiàn)在想來幼稚的很。***份工作是在95年,剛畢業(yè)做無繩電話的PTSN接口,項目完成之后,公司不養(yǎng)閑人呀,于是被派去做測試,一做就是兩年。當(dāng)時是測試 windows上的程序,測試要求的是細致和耐心,但是鼠標(biāo)在屏幕上點來點去真的好無聊呀!于是想讓自己從繁瑣鼠標(biāo)點擊中解脫出來,開始想自動化的問題。還好,最終找到了MSTest—— 微軟的一款工具,通過MSTest可以將手動點擊事件記錄成VB的腳本,然后修改一下腳步就可以自動執(zhí)行了,一下子提高了工作效率,幾天的活半天搞定。于是問題來了,客戶端測得快,服務(wù)器還沒弄完,影響了客戶端測試,怎么辦?
沒辦法,開始嘗試弄仿真器,相當(dāng)于用VC實現(xiàn)現(xiàn)在的mock功能。自己覺得寫的還不錯,就參與了一個預(yù)研的項目,把傳真機收到的傳真自動轉(zhuǎn)成電子郵件。主要是涉及硬件dialogic 卡的操作,就是直接對driver 讀寫,于是激發(fā)了興趣,最終用多線程操作8端口dialogic卡,實現(xiàn)了郵件與傳真的互通,記得那已經(jīng)是98年初的事了。
難忘98,硬件轉(zhuǎn)型Java開發(fā)
98年是老曹不平凡的一年。公司派他到加拿大工作半年,遇到了一個真正的高手——南斯拉夫人,內(nèi)內(nèi)得科瓦切維奇,開始學(xué)習(xí)使用Java 1.2,為什么是java?因為周圍C++/C 的高手們都看不起那時的Java,存在鄙視鏈呀。整個項目好像就他一個Java的菜鳥,一個從0開始的菜鳥。
大神就是不一樣,每天只花10幾分鐘指導(dǎo),一般問幾個問題,給出個方向。由于沒用筆記本電腦,只能在辦公室里弄,所以大部分時間都耗在辦公室里。大神最常問的一個問題應(yīng)該是 why for such codes?這塊代碼為啥這么做?為啥,實現(xiàn)這么個功能唄!除了這樣,還能怎么著?大神啥也沒說,甩過一本書 《設(shè)計模式》,英文的,啃了兩周。當(dāng)Web 可以運行的時候,發(fā)現(xiàn)沒法,和C++的程序 一同編譯,怎么辦?大神又甩來一本書 《advanced unix programming》一本比一本厚呀。于是,開始自學(xué)shell和makefile以及各種system call,可以編譯了。接下來是Java的程序與C++的功能模塊通信,進程間通信,也需要網(wǎng)絡(luò)通信。這實際上是一個分布式系統(tǒng),基于corba 的體系結(jié)構(gòu)。
怎么辦?還是老套路,一本書《tcp ip illustrated》, 好像是多卷,給他的是***卷,還好有過一些socket編程基礎(chǔ),最終相對順利地完成了基于Web的管理運營平臺。
這半年左右的時間,是他成長最快的時間。就這樣老曹正式走進了程序猿的行列,開始了他的程序猿生涯。一晃就是20多年了?,F(xiàn)如今,老曹的點點滴滴,都愿意分享給身邊的開發(fā)者,期待志同道合之士能與之并肩作戰(zhàn),朝著程序猿的大道勇往直前。
如果你也愿意分享你的故事,請加51CTO開發(fā)者QQ交流群 370892523聯(lián)系群主小官,期待你的精彩故事!
【51CTO原創(chuàng)稿件,合作站點轉(zhuǎn)載請注明原文作者和出處為51CTO.com】