慎于說Yes在沒有搞清楚開發(fā)需求、任務(wù)工作量、團(tuán)隊(duì)期望值之前,100分的程序員不會輕易答應(yīng)。特別是對于新人來說,比較急于表現(xiàn)自己,對于同事或者老板的工作安排來者不拒,精神可嘉,方法不可取。承諾太多,會出現(xiàn)自己無法按時(shí)完成的情況,即使按時(shí)完成,也可能沒有達(dá)到別人的期望值,長期以往別人對你的失望會越來越多。所以推薦的做法是在接受任務(wù)時(shí),多問幾個(gè)為什么,哪怕招人煩也問題不大,把要做的事情弄清楚,和同事和領(lǐng)導(dǎo)多交流明白,之后再說Yes也不遲。 敢于說No看起來和第一條雷同,其實(shí)細(xì)究起來不一樣。第二條執(zhí)行起來比第一條難得多。當(dāng)遇到明顯不合理的要求時(shí),可以考慮拒絕,前提是準(zhǔn)備好了全面充分的理由。不要經(jīng)常說No,但是一旦說了,就要切中要害。100分的程序員不會悶頭干活,知道自己的定位和團(tuán)隊(duì)期望,分清楚哪些是不合理的要求,哪些是合理的要求,然后把明顯不合理的要求和領(lǐng)導(dǎo)溝通下,取得支持。 構(gòu)建自己的知識體系在信息爆炸的年代,碎片化的知識很多,系統(tǒng)學(xué)習(xí)的時(shí)間越來越少,如果沒有自己的知識體系,很容易被淹沒在知識的海洋中,而且難以記憶。100分程序員推薦的做法,通過Wiki或者其他知識管理工具構(gòu)建一個(gè)知識框架,大的分類可以包括軟技能、架構(gòu)、語言、前端、后端等,小的分類可以更細(xì)化。每周定期把腦海中的東西梳理到管理工具中,讓大腦卸下負(fù)擔(dān),只記住框架、大的分類和關(guān)鍵點(diǎn),這樣可以繼續(xù)吸收新的知識。工作中的收獲不斷填充上去,慢慢就形成知識體系了。 培養(yǎng)大局觀程序員比較容易陷入的困境是專注于自己的一畝三分地,不關(guān)心團(tuán)隊(duì)的進(jìn)度和業(yè)績,也不關(guān)心軟件的整體架構(gòu)和其他模塊。這種狀態(tài)長期下去沒有好處,特別是在大公司中,逐漸成長為一顆螺絲釘。100分程序員會在工作之余,多看看其他在做什么,看看團(tuán)隊(duì)的整體規(guī)劃,看看軟件系統(tǒng)的架構(gòu)和說明文檔。對自己的工作更理解,而且知道為什么這個(gè)產(chǎn)品應(yīng)該這樣設(shè)計(jì),為什么領(lǐng)導(dǎo)應(yīng)該這樣做規(guī)劃,這種大局觀非常有利于自己的職業(yè)生涯。 代碼規(guī)范程序員在新手時(shí)期需要培養(yǎng)良好的代碼規(guī)范。最直接的辦法,遵循公司已有的代碼規(guī)范(如果沒有類似的規(guī)定,也是醉了),從簡單的變量命名到模塊劃分,有些規(guī)則可以導(dǎo)入到編碼工具中,更多的部分需要自己體會和遵守。關(guān)于此方面的知識,最權(quán)威的書籍是《代碼大全》,別誤會,書名是個(gè)美麗的錯(cuò)誤,里面不是代碼集錦。對于新手來說,養(yǎng)成一個(gè)統(tǒng)一的編碼風(fēng)格非常重要,是基礎(chǔ)一步。不要把重點(diǎn)放在哪個(gè)代碼規(guī)范更好的爭論上,肯定是各有利弊,選定一個(gè)遵循即可。 代碼審查把這個(gè)單獨(dú)拎出來說,是因?yàn)閷τ诔绦騿T來說很重要。很多快速成長的公司沒有這個(gè)步驟,建議大家能夠堅(jiān)持下來。讓別人審查自己的代碼,可以得到更多的反饋,也是和同事交流的好機(jī)會;審查別人的代碼,可以借鑒別人的經(jīng)驗(yàn)和思路。通常情況下,代碼審查比自己寫代碼的收獲更大,對于新手來說更有價(jià)值。只要你想做,不論形式是不是正規(guī),都可以執(zhí)行下去,最好形成團(tuán)隊(duì)的習(xí)慣。 學(xué)習(xí)業(yè)務(wù)知識作為100分的程序員,除了精通開發(fā)知識,還應(yīng)該了解業(yè)務(wù)知識。很多情況下,來自于業(yè)務(wù)部門的需求是不清楚的,了解業(yè)務(wù)知識的程序員可以更好地和業(yè)務(wù)部門交流,而且從業(yè)務(wù)和技術(shù)角度兩方面來考慮問題,可以對產(chǎn)品有更好的設(shè)計(jì)和架構(gòu),并可以樹立自己在團(tuán)隊(duì)中的地位。學(xué)習(xí)業(yè)務(wù)知識,可以從基本的內(nèi)容開始,先了解與自己工作相關(guān)的內(nèi)容,然后逐漸拓展到其他部門,應(yīng)該對整個(gè)業(yè)務(wù)領(lǐng)域有一個(gè)了解。這就是為什么有些領(lǐng)域的公司研發(fā)部門在招聘程序員要求具備對應(yīng)專業(yè)的資格證書。 堅(jiān)持任何習(xí)慣的養(yǎng)成都需要堅(jiān)持,理論說的再花哨沒有實(shí)踐也是白搭,三分鐘熱血的事情太常見,好的建議很多,堅(jiān)持個(gè)幾項(xiàng)下去就可以受益良多,所以100分的程序員不是最聰明的那批人,而是具有好習(xí)慣最多的人。 最后的最后說一句,學(xué)無止境,100分的程序員和90分的程序員區(qū)別大嗎?100分的程序員之所以得100分是因?yàn)闈M分只有100分,而90分的程序員是真實(shí)的水平反映。 |
|
|