- 相關(guān)推薦
IT工作心得感想范文
我們有一些啟發(fā)后,就十分有必須要寫一篇心得體會(huì),如此可以一直更新迭代自己的想法。怎樣寫好心得體會(huì)呢?以下是小編為大家整理的IT工作心得感想范文,僅供參考,大家一起來(lái)看看吧。
IT工作心得感想范文1
看到了很多同學(xué)問到各銀行的待遇以及IT部門的發(fā)展之類的話題,想到了自己銀行的情況。
1、加班非常多。機(jī)房是24小時(shí)開放的,每天都有人值夜班。我所在的地區(qū)我們分行只有800人不到,IT部門就只有6、7個(gè)人。他們每天除了正常的工作之外還要應(yīng)對(duì)各種培訓(xùn)、學(xué)習(xí)。銀行因?yàn)榘滋煲獙?duì)外營(yíng)業(yè),所以每次培訓(xùn)之類都是在晚上和周末,而且不是800人一起培訓(xùn),而是今天這個(gè)培訓(xùn),明天那個(gè)培訓(xùn)。這個(gè)工作量是非常大的。而且銀行加班基本是沒有加班工資的。因?yàn)閲?guó)家不允許這種量的加班。
2、薪水問題。大家都說銀行薪水好。那是因?yàn)榇蠹铱吹降闹皇切剿玫牟块T。我現(xiàn)在在銀行做貸款,屬于一線營(yíng)銷崗位,薪水自然還不錯(cuò)。但如果你不是做營(yíng)銷而是后臺(tái)部門比如IT,那你只能拿到基本工資和平均獎(jiǎng)金,這個(gè)數(shù)字看起來(lái)就沒那么有吸引力了。除非你能當(dāng)老總?蛇@個(gè)部門不像營(yíng)業(yè)網(wǎng)點(diǎn),一個(gè)地區(qū)可以幾十個(gè)網(wǎng)點(diǎn),這個(gè)IT部門基本上一個(gè)地區(qū)就一個(gè),也就是說一個(gè)地區(qū)就一個(gè)老總,這個(gè)老總又不像別的崗位可以橫向調(diào)動(dòng),在銀行里做IT你就只能做IT,不可能調(diào)你去做什么公司業(yè)務(wù),所以我個(gè)人認(rèn)為升遷的機(jī)會(huì)也比較小。但如果你是去總行的信息技術(shù)部搞些個(gè)產(chǎn)品研發(fā)之類也就不說了,那肯定是非常好的,但這樣的部門基本也不可能要一個(gè)剛畢業(yè)的學(xué)生。
3、銀行的各項(xiàng)任務(wù)是很重的,而且可能看起來(lái)都非常不人性。不要以為你在IT部門就不可能有任務(wù)。我們講究的是全民皆兵。
以上只是我個(gè)人的一些看法,給一些純粹是為了拿高薪找安逸的同學(xué)一個(gè)提醒。
當(dāng)然銀行也有銀行的好。比如:
1、如果你做的很好,這里指的是營(yíng)銷,比如你能帶來(lái)大量存款,你有很廣的客戶資源,那你的薪水會(huì)非常高而且不受職務(wù)限制。
2、福利待遇非常好。我們銀行給我們解決了所有的后顧之憂,你只要好好工作,其他什么都不用你操心,我們有非常低的行員貸款利率,你買房子就不需要擔(dān)心。我們是按照最高比例來(lái)購(gòu)買各種保險(xiǎn)、公積金之類。即使你生病了,你住院了,不但醫(yī)藥費(fèi)都能報(bào)銷,算下來(lái)你每天還能賺幾百塊錢,可能比上班都高。
總之吧,銀行就是個(gè)數(shù)字說話的地方。想在這做IT可能你永遠(yuǎn)都做不到最頂端。但也有他的好。大家各自考慮吧,只是就個(gè)人的感受給大家的建議。相比較之下我認(rèn)為我所在的招商銀行是最有潛力的銀行,發(fā)展非?欤髽I(yè)文化非常好。工、農(nóng)、中、建四大行規(guī)模非常大,但因?yàn)槭抢闲幸灿泻芏啾锥耍瑖?guó)企思想比較嚴(yán)重,論資排輩。交行的特色在于他是股份制銀行中最大的,個(gè)人理財(cái)比較突出。民生是最變態(tài)的,只要你有業(yè)績(jī),第二天就是行長(zhǎng),只要你沒有業(yè)績(jī),馬上從行長(zhǎng)變成行員。中信是業(yè)內(nèi)口杯最差的,到處亂市場(chǎng),很受同業(yè)鄙視。華夏的最大特點(diǎn)在于他的公司業(yè)務(wù)。一般越小的行可能待遇越好,機(jī)會(huì)也越多,因?yàn)樗诎l(fā)展。
其實(shí)就個(gè)人而言,我覺得銀行里做IT就像是當(dāng)年我們來(lái)北郵,大家都知道北郵非常好IT業(yè)的最高學(xué)府?晌覀儺(dāng)時(shí)因?yàn)榉N種原因到了北郵的語(yǔ)言學(xué)院學(xué)外語(yǔ)。并不是說語(yǔ)言學(xué)院不好,我們?cè)谶@里也學(xué)到了很多東西。但這里的主流是IT,語(yǔ)言院再發(fā)展可能也比不了北京外國(guó)語(yǔ)。就是說你是到一個(gè)非常好的學(xué)校一個(gè)非主流的專業(yè),還是到一個(gè)一般學(xué)校的主流專業(yè),你可以自己考慮。
IT工作心得感想范文2
工作是一件可以學(xué)到很多鍛煉很多的事,雖然充滿焦慮和等待但也充滿著刺激興奮和足夠的滿足感。
從Melb回來(lái)以后,大概是二月初左右,我開始正式尋找一份能帶來(lái)穩(wěn)定收入的全職工作。我沒有PR,成績(jī)普通,只有大概半年在一家華人公司做網(wǎng)站的開發(fā)經(jīng)驗(yàn),但我從來(lái)都沒有覺得會(huì)找不到工作,因?yàn)槲覉?jiān)信在這個(gè)行業(yè),技能和學(xué)習(xí)能力思考能力是大于其他一切的。IT這個(gè)行業(yè),方向太多,所以我的想法是,在開始找以前,應(yīng)該先把自己的方向和未來(lái)的職業(yè)選擇好,不要顧及面,而應(yīng)該專心于點(diǎn)和深度(這和做某件事倒是有異曲同工之妙)。就是因?yàn)樾袠I(yè)方向多,專精和學(xué)習(xí)能力才是雇傭者真正考量一個(gè)junior雇員的事。
方向和具體職位定下來(lái)以后,就開始具體圍繞這個(gè)職位的普通要求來(lái)修訂簡(jiǎn)歷。簡(jiǎn)歷不應(yīng)過長(zhǎng),一頁(yè)即可。能夠不需要的內(nèi)容,比如愛好興趣人格之類的,都不要往上面放。從技能開始是比較好的方式,學(xué)歷倒是一筆帶過即可,因?yàn)橹挥泻艽蟮墓颈热玢y行或者四大才會(huì)以分?jǐn)?shù)來(lái)做第一輪篩選的標(biāo)準(zhǔn),而我一方面是分?jǐn)?shù)不行,另一方面對(duì)大公司向來(lái)有生理上的厭惡感,所以根本就不會(huì)考慮這個(gè)問題。
接下來(lái)就應(yīng)該羅列做過的事,如果有portfolio就放鏈接和簡(jiǎn)單的描述,有工作經(jīng)驗(yàn)就放工作經(jīng)驗(yàn),都沒有就放學(xué)校的項(xiàng)目經(jīng)驗(yàn),如果都沒有,就先去找了做了再回來(lái)這一步吧(需要注意的是,只放和所求職位相關(guān)的經(jīng)驗(yàn),比如是php的職位關(guān)于java的我就基本都不列)。羅列經(jīng)驗(yàn)時(shí),盡量不要有段落篇幅,而以短語(yǔ)bulletin為主?春(jiǎn)歷的人是沒時(shí)間來(lái)讀小說的,所以在最短的時(shí)間內(nèi)能提供給閱簡(jiǎn)歷者最大的信息量是最值得考量的東西(這個(gè)倒是和SEO有點(diǎn)像)。另外,誠(chéng)實(shí)真實(shí)是我自己的堅(jiān)持,只寫真正做過的事,只寫真正懂并有經(jīng)驗(yàn)的技能,任何不懂的都不要往上寫,要確定你所寫的技能,都是你能動(dòng)手去做實(shí)際做過的。技能的羅列也要由最強(qiáng)到最弱的順序來(lái)排,項(xiàng)目經(jīng)驗(yàn)也是如此,就和客戶用google搜東西不會(huì)看兩頁(yè)以后的網(wǎng)站是一個(gè)道理。
另外,強(qiáng)調(diào)自己的什么人格優(yōu)勢(shì),團(tuán)隊(duì)性格之類的,我完全沒有放進(jìn)簡(jiǎn)歷,因?yàn)檫@些可以通過cover letter來(lái)描述,沒有必要再這里占用寶貴的簡(jiǎn)歷空間。而且這之類的事也不是你自己寫了人家就信的,真正有面試時(shí)人家自然會(huì)來(lái)體會(huì)。簡(jiǎn)歷的事,大抵就是如此。
接下來(lái)我開始操作的是cover letter。為不同的職位公司來(lái)多次修改cover letter是我前一年找工作時(shí)經(jīng)歷的最痛苦的事之一。所以這次,在確定了只投相同或相似的職位以后,cover letter變得輕松了許多。寫好一個(gè)萬(wàn)用的cover letter是很辛苦但是益處無(wú)窮的事,屬于典型的一次投入多次回報(bào)。cover letter大抵是四五段左右,用詞用句都可以自己去搜一下,最好避免自己寫太多的句子,畢竟大部分像咱們這樣的,寫作都不咋的。
因?yàn)閷儆诒容^正式的信件,還是多用點(diǎn)穩(wěn)妥的書面表達(dá)比較好。第一段大概就是講自己在哪里看到職位然后自己是什么樣的一個(gè)情況于是有意愿來(lái)求職。第二段就開始要針對(duì)職業(yè)描述上的每一條來(lái)列舉自己能夠符合靠上去的技能,自信點(diǎn)大膽點(diǎn)就好。
第三段就可以談?wù)勛约盒愿裆系膬?yōu)勢(shì),人格上的魅力,多么多么的團(tuán)隊(duì)之類的屁話,這是必須的。最后就總結(jié)下,自己覺得自己能夠勝任這個(gè)職位,能給公司或者團(tuán)隊(duì)帶來(lái)如何的益處,希望能有面試的機(jī)會(huì),并附上自己的聯(lián)系方式電話郵件等等。在我投過的所有機(jī)會(huì)里,九成九的我只修改了日期和職位名稱,當(dāng)然這和我所投的web developer這個(gè)名稱比較寬泛有關(guān)。cover letter的重要性,我覺得還是必須重視的,畢竟大部分人都是先看郵件正文里的cover letter,再點(diǎn)開附件看簡(jiǎn)歷,和簡(jiǎn)歷的重要性相比可以說有過之而無(wú)不及,可以說是敲門磚的敲門磚,如果這塊就掉了,就連砸一塊金磚過去敲門的機(jī)會(huì)都沒有了。
搞定上面兩件利器以后,有些細(xì)節(jié)要注意一下。不要用自己平時(shí)的聯(lián)系郵箱,而應(yīng)單獨(dú)注冊(cè)一個(gè)求職專用,能直接從郵件地址上看出人名的郵箱(這點(diǎn)由江江同學(xué)貢獻(xiàn))。我個(gè)人的建議當(dāng)然是gmail,速度快容量大無(wú)廣告,功能多和google產(chǎn)品結(jié)合較好,IMAP的訪問方式在iphone上堪稱完美。在注冊(cè)這個(gè)求職專用郵箱以后,直接在設(shè)置里全部轉(zhuǎn)發(fā)到自己的常用郵箱(是gmail當(dāng)然最好),這樣就避免了每天需要查幾個(gè)郵箱的麻煩。在自己的常用郵箱里,建立關(guān)鍵字過濾器。有工作相關(guān)的關(guān)鍵字時(shí),全部打上專門的工作標(biāo)簽來(lái)分文件夾。全部用gmail的好處還在于,在自己的常用郵箱里回復(fù)郵件時(shí),可以直接選擇自己的發(fā)件地址為求職專用郵箱而不是自己的常用郵箱,方便且專業(yè)。說到這里,有件小事讓我對(duì)gmail的喜愛又上一個(gè)臺(tái)階。在我們的cover letter里,通常會(huì)有I have attached my resume below之類的文字,有那么一次,我在貼完cover letter至郵件正文后,忘記了上傳附件而直接點(diǎn)了發(fā)送。此時(shí)令人驚訝的事發(fā)生了,一個(gè)popup對(duì)話框顯示,"您的正文中有attach字樣而附件為空,您確定要發(fā)送郵件而不附上任何附件么?",我當(dāng)時(shí)就震驚感動(dòng)佩服的五體投地。如此細(xì)小的地方都做了用戶體驗(yàn)方面的設(shè)計(jì),讓人如何不愛google。
其實(shí)我覺得,在做好了以上的事以后,找工作接下來(lái)就是一個(gè)機(jī)械重復(fù)的體力活,如何把規(guī)律的體力活做好,其實(shí)也是有一定的技術(shù)含量的。澳洲最大的找工作網(wǎng)站是seek,其他還有mycareer,不過我只專注在seek上,因?yàn)閟eek大概占了全澳百分之八十的招聘信息,已經(jīng)足夠任何人去投了。
注冊(cè)seek以后,先根據(jù)自己的情況來(lái)完善profile。接下來(lái),最重要的事就是,郵件訂閱。seek提供了根據(jù)關(guān)鍵字和其他特別字段要求來(lái)發(fā)送每天更新的新招聘信息至用戶的郵箱。根據(jù)每個(gè)自己想要的職位,來(lái)設(shè)定特別的關(guān)鍵字,級(jí)別和薪資要求以后,對(duì)應(yīng)的每天新增的信息就會(huì)以列表的形式在夜里三點(diǎn)左右發(fā)至你的郵箱。于是以后的事,就是每天查查郵件,然后選擇自己覺得合適的去投。一個(gè)重要的事是,有很多招聘信息是獵頭中介發(fā)的類似這種我是一概不投的,因?yàn)榇蠖际链蠛,而且不直接與公司的人接觸面試什么的也對(duì)公司無(wú)法了解,這種浪費(fèi)時(shí)間還不討好的事不如不做。
另外一件值得做的事是,記錄下你投過的公司和職位。因?yàn)橐话愕牧鞒淌牵瑢?duì)方會(huì)先short-list一部分,然后電話,覺得合適,才會(huì)發(fā)郵件和你約接下來(lái)的面試或者測(cè)試。往往這時(shí)候,當(dāng)你投過幾十份上百份以后,任何人打電話過來(lái)告訴你公司名,你是不可能回想起來(lái)的,因?yàn)楸4嬉环載oc包含公司職位,地點(diǎn),公司信息,seek上對(duì)應(yīng)的職位描述頁(yè)面,公司的頁(yè)面等等信息,是很有必要的。
一方面你能掌握投過哪些,可以避免重復(fù)投遞失敗的職位,另一方面能夠?qū)ψ约和哆^的數(shù)量有個(gè)統(tǒng)計(jì),如果長(zhǎng)久沒有回信和回音,就應(yīng)該及時(shí)對(duì)簡(jiǎn)歷和cover letter做出調(diào)整。對(duì)此我是使用google docs,方便在于云在任何地方都能訪問,這和郵箱是一樣的道理。另外我對(duì)不同的地區(qū)也分了文檔,分別是sydney,melb和其他。根據(jù)我的統(tǒng)計(jì),ydney的機(jī)會(huì)是最多的,大概占了全澳的三分之二,當(dāng)然人口和競(jìng)爭(zhēng)也是最多的。melb的話,大概數(shù)目是sydney的三分之一至一半,而其他地區(qū)加起來(lái),也就和melb的機(jī)會(huì)一樣多。
我的情況是,sydney的回音是最多的,其次則是昆州等地區(qū),melb則一個(gè)正面回復(fù)都沒有,唯一一個(gè)email聯(lián)系過一次的,也在二十天后拒了我。大概是因?yàn)槲胰嗽趕ydney,而昆州缺人缺的太厲害的原因吧。在技術(shù)分布方面,網(wǎng)站或者web application方面開發(fā)是最多的,不論前段還是后端。然后后端技術(shù)php最多,net和j2ee差不多, python, RoR甚至perl也曾見過,不過非常稀少。除了做web,數(shù)據(jù)庫(kù)是相對(duì)來(lái)說多點(diǎn)的,不論是做分析開發(fā)挖掘還是管理,都不少,是個(gè)可選的方向(雖然個(gè)人感覺枯燥)。再就是iOS等移動(dòng)開發(fā)看得出來(lái)有越來(lái)越火的趨勢(shì),值得一追。底層系統(tǒng)開發(fā)或者網(wǎng)絡(luò)之類的,大概是最少(但貌似錢是最多的,因?yàn)橄∩?。薪資方面,悉尼算是全澳消費(fèi)數(shù)一數(shù)二,薪資方面確實(shí)是如此,45k+super是行業(yè)基準(zhǔn)線(當(dāng)然是對(duì)junior/entry而言)。其他地方也能拿到40k左右的,但和房?jī)r(jià)一比,這40k就比悉尼的值錢太多了。
其實(shí)對(duì)我來(lái)說,如果拿到了面試機(jī)會(huì),能拿到offer的機(jī)會(huì)大概就是一半以上。最焦躁的,其實(shí)正是等待回音這個(gè)階段。在我正式開始投簡(jiǎn)歷的兩個(gè)禮拜以內(nèi),只有少數(shù)的email和電話,一個(gè)正經(jīng)的面試機(jī)會(huì)也沒有,不過在接下來(lái)的兩個(gè)禮拜里,面試開始爆發(fā)了(上周三個(gè),這周四個(gè),下周四個(gè))。
我想這是和澳洲人生活工作都比較慵懶有很大的關(guān)系,所以各位完全不用擔(dān)心和過于焦躁(我今天還接到20天前投的一個(gè)職位的電話約定面試)只要有電話和email回信,就說明你的cover letter和簡(jiǎn)歷是有用的能入眼的,但如果電話和email回信在兩三個(gè)禮拜里基本沒有,就應(yīng)該及時(shí)的做出調(diào)整了。至于面試方面,我實(shí)在無(wú)法給出什么實(shí)際有用的意見。大概的把常見面試問題看看心里有個(gè)譜不要到時(shí)候突然發(fā)慌,技術(shù)問題自己慢慢準(zhǔn)備積累,穿著方面自己覺得看的過去(像我這種從來(lái)不喜穿正裝的人還是去買了件半正式半休閑的襯衣來(lái)做面試圣衣),面試前不要太飽和太餓否則都會(huì)影響大腦運(yùn)作,開始前喝點(diǎn)咖啡能量飲料都是可以的(不過要注意這兩個(gè)都是利尿的,對(duì)于長(zhǎng)時(shí)間的面試就不要喝太多水之前),面試中應(yīng)該不卑不亢,該笑的時(shí)候笑不該笑的時(shí)候不笑,能夠自己來(lái)控制面試過程中的氣氛走向是最好的,切忌過于緊張或過于興奮,另外最重要的一點(diǎn)是誠(chéng)實(shí),因?yàn)榧僭捵约菏菦]有記憶的,反復(fù)問的話會(huì)出問題,不如不說。
關(guān)于英語(yǔ),語(yǔ)速不要過快,平時(shí)自己怎么說話就怎么說,也不用特意去準(zhǔn)備什么商務(wù)英語(yǔ)。臟話的話,能避則避,不過興奮的瞬間脫口而出也倒不是什么大不了的事,畢竟澳洲人這方面都非常的不古板和不保守,所以不用特別在意。我面試的感覺是,其實(shí)我們這個(gè)行業(yè),技能方面都差的不多,畢竟學(xué)習(xí)能力才是更重要的,所以個(gè)人人格魅力起的作用比想象的要大很多,鬼佬大都喜歡開放有趣有自己生活的人,有話談得來(lái),公司團(tuán)隊(duì)氣氛融洽才是他們看重的,當(dāng)然這些都是建立在技能能達(dá)到最低基本要求的基礎(chǔ)上。在國(guó)外工作的好處就在這里能得到體現(xiàn),畢竟任何價(jià)值都是人創(chuàng)造的,人才是工作里的一切,把人當(dāng)人才會(huì)有更好的效率和效果。
如果面試順利,接下來(lái)的就是接受offer與否了。當(dāng)你的面試太多,可以選擇的公司太多的時(shí)候,受offer與否就是個(gè)糾結(jié)的命題。是選你愛的,還是選愛你的,是個(gè)從未消停的問題(在各個(gè)領(lǐng)域)。而由于我從來(lái)都是只在乎自己愛的,所以拒掉一兩個(gè)offer去等待自己愛的公司在我看來(lái)是天經(jīng)地義。但這并不適用于所有人,畢竟個(gè)體追求不同,另外如果機(jī)會(huì)和offer對(duì)你來(lái)說非常稀少和難得,抓住轉(zhuǎn)瞬即逝的機(jī)會(huì)也并不是不可取的,畢竟有了溫飽才會(huì)有更多的精力去追求自己愛的人和事。
關(guān)于求職,在我們這個(gè)地方和這個(gè)行業(yè),我的經(jīng)驗(yàn)不多,大抵就是以上這些,希望能對(duì)正在袋鼠國(guó)掙扎的朋友有些許的幫助。有任何疑問可以盡管放馬過來(lái),我會(huì)盡我所能的回答并補(bǔ)充到下面,謝謝。
IT工作心得感想范文3
我在一家叫做Coverity的公司工作,我住在三藩市(San Francisco)。Coverity是一個(gè)奇怪的公司,三藩市是一個(gè)奇怪的城市。
Coverity制造一種叫做"靜態(tài)分析"(static analysis)的軟件。這種軟件可以在不運(yùn)行程序的情況下,經(jīng)過對(duì)代碼的分析,自動(dòng)的找到程序里面可能出現(xiàn)的問題。這有點(diǎn)像我之前給Google做的那個(gè)Python分析器,只不過針對(duì)另外的語(yǔ)言(C,C++和Java等),分析的側(cè)重點(diǎn)不同,能處理代碼的規(guī)模也貌似大一些。還有就是這么多年了,久經(jīng)沙場(chǎng)考驗(yàn)了。
Coverity具有世界上最先進(jìn)的一些技術(shù),所以麻雀雖小,卻讓很多人離不開它?峙潞苌儆腥酥溃@小小的公司的忠實(shí)客戶,包括了一系列的大拿:美國(guó)宇航局,波音,洛克希德馬丁,雷神(Raytheon),BAE Systems,豐田,歐洲原子能中心(CERN)……貌似幾乎所有對(duì)代碼質(zhì)量不敢有絲毫差錯(cuò),又不得不用像C++這樣毛病眾多的語(yǔ)言的公司,都購(gòu)買了Coverity的產(chǎn)品。比如最近的火星好奇者號(hào)上的所有200多萬(wàn)行代碼,都經(jīng)過了Coverity的靜態(tài)分析。當(dāng)然,如此精密的設(shè)備不可能光靠Coverity查一下錯(cuò)就能確保萬(wàn)無(wú)一失,它必須依靠很多其它的技術(shù),但Coverity確實(shí)是這些東西的開發(fā)過程里面比較重要的`部分。
我必須承認(rèn),Coverity給了我足夠的啟發(fā),甚至間接的讓我發(fā)現(xiàn)了自己之前做的Python靜態(tài)分析里面存在的一些問題。Coverity的產(chǎn)品在大規(guī)模的代碼上面的成功,也讓我意識(shí)到了自己在Python分析器里的一些突發(fā)奇想的設(shè)計(jì)的正確性和價(jià)值。如果我現(xiàn)在做一個(gè)新的Python分析器,它將比原來(lái)的精確和高效(也可以推廣到其它語(yǔ)言比如JavaScript)。我也清楚的看到,Coverity自發(fā)研制的一些"不大嚴(yán)謹(jǐn)"的做法,其實(shí)比程序語(yǔ)言領(lǐng)域里面一些看似高深的"邏輯"還要"正確"。這些微妙的"提示信息",讓我把多個(gè)領(lǐng)域的知識(shí)串通了起來(lái)。所以我覺得跟這公司還有點(diǎn)臭味相投,加入Coverity也是不枉此行的。
然而我也發(fā)現(xiàn),Coverity缺少我擁有的程序語(yǔ)言理論知識(shí)。絕大部分的Coverity工程師沒有系統(tǒng)的學(xué)習(xí)過lambda calculus和函數(shù)式編程。在我的Python分析器中,其實(shí)包含了Coverity還沒有的技術(shù)。Python的靜態(tài)分析本來(lái)就比C++和Java之類的難,然而我的實(shí)現(xiàn)卻異常的簡(jiǎn)單。這些微妙的技術(shù),貌似很多人都可以說他"會(huì)做",但是他們卻很難把它做對(duì)。這就像"CPS轉(zhuǎn)換"一樣,很多人都說他會(huì)做,可是真正做對(duì)的只有極少數(shù)人(我是其中之一)。這些技術(shù)源自于我對(duì)程序語(yǔ)言本質(zhì)的理解,源自于Dan Friedman, Kent Dybvig和Amr Sabry等老師的教誨,也源自于我自己辛勤的實(shí)驗(yàn),實(shí)驗(yàn),再實(shí)驗(yàn)……在我簡(jiǎn)短而優(yōu)雅的代碼中,包含了許多人需要花費(fèi)好幾倍的代碼長(zhǎng)度才能達(dá)到的目標(biāo)。所以雖然Coverity的工程師們技術(shù)實(shí)力很強(qiáng),但在代碼的簡(jiǎn)單程度和對(duì)程序語(yǔ)言語(yǔ)義的理解上,真的很難達(dá)到我的程度。
這就是為什么我經(jīng)常能夠一眼就看出Coverity產(chǎn)品里存在的問題,并且很快的修正錯(cuò)誤。舉一個(gè)簡(jiǎn)單的例子,有一天我修改了一行代碼,使得產(chǎn)品在某些benchmark上的內(nèi)存使用量減少了一半。我為什么可以做到這一點(diǎn)呢?因?yàn)樵谖业腜ython分析器里,這個(gè)問題是從一開頭就不存在的。它源自于一種幼稚的解釋器寫法,有點(diǎn)像GoF的《Design Patterns》里的那種。Coverity的代碼里面有好些類似的問題,都是我自己根本不可能犯的錯(cuò)誤,我都沒有機(jī)會(huì)給他們改進(jìn)。我不是想貶低同事們的水平,他們都是Stanford, Berkeley等學(xué)校畢業(yè)的高手,可是我也很清楚自己的技術(shù)地位。
所以我就經(jīng)常發(fā)現(xiàn)這樣的麻煩事:我順手改掉了一個(gè)自認(rèn)為很顯然的問題,或者一個(gè)我根本不會(huì)犯的錯(cuò)誤,然后就發(fā)現(xiàn)有大批的測(cè)試需要被修改,我也會(huì)被要求寫出"regression test",用以防止同樣的錯(cuò)誤再次發(fā)生。某些同事對(duì)于測(cè)試的戰(zhàn)戰(zhàn)兢兢的態(tài)度,其實(shí)跟我當(dāng)年在Google實(shí)習(xí)的時(shí)候沒有什么兩樣?吹竭@里的問題了嗎?這些我"根本"不會(huì)犯的錯(cuò)誤,幾分鐘時(shí)間順手就改掉了,但是我卻要花成天的工夫去修改和創(chuàng)建測(cè)試,防止它"再次"發(fā)生。我不得不說,在這些測(cè)試上所花費(fèi)的工夫,占用了比我修改代碼多好幾倍,甚至幾十倍的工夫!
想想這六個(gè)月以來(lái)我干了些什么,再比較一下在Google實(shí)習(xí)的那六個(gè)月獨(dú)自從頭做出來(lái)的東西,我發(fā)現(xiàn)自己簡(jiǎn)直什么也沒有干。這就是我不喜歡"測(cè)試驅(qū)動(dòng)開發(fā)"(TDD)的原因。在Google的六個(gè)月里,我無(wú)視同事對(duì)于測(cè)試的要求,從無(wú)到有的做出了如此精密的系統(tǒng),一個(gè)測(cè)試都沒有寫照樣做得好,為什么呢?因?yàn)槲业拇a非常的簡(jiǎn)單清晰,我隨時(shí)都可以把它們完整的呈現(xiàn)在頭腦里面,從而讓"心靈之眼"可以看到可能出現(xiàn)的錯(cuò)誤。也許這就是所謂的"邏輯思維"。
對(duì)測(cè)試過分依賴的人,往往不具有這樣的思維能力。他們不能夠看到代碼最簡(jiǎn)單的本質(zhì),所以需要做很多試探,以求達(dá)到"近似解"。為了不至于偏差很多,就寫很多測(cè)試,用以捕捉和防止每一次的錯(cuò)誤。這就像一個(gè)初學(xué)畫畫的人,一點(diǎn)一點(diǎn)的描,用橡皮反復(fù)的擦,可總也抓不住事物的精髓。這些人對(duì)"錯(cuò)誤"的記憶能力特別強(qiáng),往往深入的追究一塊代碼是"如何"錯(cuò)的,"為什么"是錯(cuò)的,下次如何才能不犯同樣的錯(cuò)誤。
然而我卻沒法記住之前的代碼是如何錯(cuò)的,我也不想知道為什么它是錯(cuò)的,我只記得"正確"的代碼是什么樣子。錯(cuò)誤的方式有千萬(wàn)種,可是正確的卻往往只有一個(gè)。把腦力浪費(fèi)在記憶錯(cuò)誤的東西,這就是為什么很多人不能寫出真正優(yōu)美而正確的代碼。我受到的訓(xùn)練讓我可以直接得到正確的結(jié)果,所以測(cè)試對(duì)于我來(lái)說分量沒有那么重。當(dāng)我的代碼需要大量的測(cè)試才能確保正確的時(shí)候,那就是它該被推翻重寫的時(shí)候。所以我的代碼往往沒有任何補(bǔ)丁和變通,可以說是無(wú)懈可擊。這就像是一個(gè)真正會(huì)畫畫的人,他閉目沉思,然后一氣呵成。當(dāng)然,優(yōu)美的代碼并不是一蹴而就的,有的代碼被我推翻重來(lái)幾十次才最后成功,但我最后的代碼不留下絲毫錯(cuò)誤的痕跡。所以我覺得,看一個(gè)程序員的水平,不要看他留下來(lái)多少行代碼,而要看他刪掉了多少行。
我覺得做Coverity的工程師真累。這種累不止在于以上的技術(shù)層面的繁瑣,而且在于管理層對(duì)工程師的缺乏尊重以及不必要的壓力。這讓我在受到了足夠的"啟發(fā)"之后,開始懷疑是否還有繼續(xù)為它工作的價(jià)值。對(duì)于公司管理,以及對(duì)于IT行業(yè)總體的看法,我還是以后再講吧。
【IT工作心得感想】相關(guān)文章:
工作實(shí)習(xí)心得感想11-22
實(shí)習(xí)工作心得感想09-02
銷售工作心得感想大全工作心得銷售工作心得12-16
從事客服工作心得感想最新10-14
銀行工作個(gè)人心得感想11-24
員工個(gè)人職業(yè)工作心得感想07-25
汽車維修工作心得感想07-21
班主任工作培訓(xùn)心得感想11-25