從合格到優(yōu)秀,程序員需具備這幾項(xiàng)關(guān)鍵品質(zhì)
大多數(shù)軟件開發(fā)人員追求的不僅僅是稱職,而是能夠脫穎而出。
如今,網(wǎng)課越來越多,似乎沒有必要再去學(xué)習(xí)如何成為優(yōu)秀的軟件開發(fā)人員。然而,很多的程序員都仍然會去大學(xué)進(jìn)修計(jì)算機(jī)科學(xué),因?yàn)楂@得CS學(xué)位有助于更好地理解其體系結(jié)構(gòu),全面地看待未來的軟件開發(fā)。很多的程序員總是試圖了解新技術(shù)、新語言和新趨勢等等。
編碼知識是一定要掌握的,但并不意味著就要學(xué)習(xí)互聯(lián)網(wǎng)上的所有東西,沒有人能夠全部吸收。
一些優(yōu)秀的程序員不僅精通技術(shù)技能,還擅長商業(yè)領(lǐng)域和人際交往;他們知道企業(yè)想要什么,應(yīng)該給公司上交什么樣的東西;他們知道如何與他人高效合作,這比孤軍奮戰(zhàn)能收獲更多的東西。
要想成為一名優(yōu)秀的程序員,方法不止一種。但比較好的方法就是成為優(yōu)秀編程團(tuán)隊(duì)中的一員。
以下是優(yōu)秀的軟件開發(fā)人員需具備的一些品質(zhì):
積極的態(tài)度
優(yōu)秀的程序員會關(guān)注其產(chǎn)品,專注、積極、有足夠的耐心地來解決最乏味和最具挑戰(zhàn)性的問題,對自己的編碼引以為豪,并致力于編寫團(tuán)隊(duì)其他開發(fā)人員易讀易理解的代碼。
因?yàn)樗麄冎雷约涸谧鍪裁矗员匾獣r(shí)刻,他們會挺身而出,并不會被困難嚇倒。
自負(fù)不會成為他們接受反饋路上的絆腳石,恰恰相反,他們等待和尋求對工作和行為有建設(shè)性的反饋。
優(yōu)秀的溝通能力
優(yōu)秀的溝通能力與優(yōu)秀的技術(shù)技能直接相關(guān)。
優(yōu)秀的開發(fā)人員能迅速找出問題的關(guān)鍵,提出假設(shè)并找出解決方案。他們通過提出正確的問題,記錄收到的答案,從而快速理解概念,這不僅僅是為了自身,更是為了整個(gè)團(tuán)隊(duì)。
此外,通過成為一個(gè)更好的溝通者,他們可以利用他人的專長,并為周遭的人提供自身優(yōu)勢。
擅長時(shí)間和任務(wù)管理
他們非常可靠且將最后期限牢記在心。他們深諳人們總是低估完成一項(xiàng)任務(wù)所需要的努力和時(shí)間,但他們通過使用技術(shù)、策略(如敏捷點(diǎn))和工具來訓(xùn)練自己的管理能力。
良好的團(tuán)隊(duì)合作精神
無私的分享知識并幫助提高其他開發(fā)人員,是優(yōu)秀的開發(fā)人員需具備的另一個(gè)優(yōu)秀品質(zhì)。
他們關(guān)心的是集體榮譽(yù),而非個(gè)人利益。當(dāng)隊(duì)友陷入困境時(shí),他們會施以援手,也會虛心接受批評。他們教授新技能、為開源做貢獻(xiàn)、編寫文檔,這不僅幫助了團(tuán)隊(duì)成員也幫助了開發(fā)者社區(qū)。
關(guān)注終端用戶
企業(yè)要求什么,合格的程序員就做什么,但優(yōu)秀的程序員則做最有利于軟件終端用戶的東西。即使提出的意見困難復(fù)雜,他們也會想出最適合終端用戶的解決方案。
合格 vs 優(yōu)秀
合格的程序員是聰明的,但優(yōu)秀的程序員是睿智的。
同樣的,合格的程序員會將代碼中使用的大量算法熟記在心,優(yōu)秀的程序員則知道使用哪些函數(shù)庫,所以不必不斷地編寫算法。
上交前,合格的程序員會確保所有功能都可以完美運(yùn)行。優(yōu)秀的程序員會管理項(xiàng)目范圍,以便在最后期限內(nèi)提供關(guān)鍵特性。
合格的程序員通過編寫復(fù)雜的定制代碼來展現(xiàn)天賦,但優(yōu)秀的程序員則會用盡可能簡單而有效的代碼來解決問題。
事實(shí)上,從合格程序員到優(yōu)秀程序員的轉(zhuǎn)變往往需要激情、奉獻(xiàn)、實(shí)踐、理解、時(shí)間、腳踏實(shí)地的努力和豐富的經(jīng)驗(yàn)(十年的摸爬滾打遠(yuǎn)比年復(fù)一年度日更重要)。
優(yōu)秀的程序員給人的感覺有點(diǎn)像企業(yè)家,而不像一個(gè)科技怪人。他們了解自己在增值鏈中的角色,知道自己不僅在編寫代碼,還在提供新的價(jià)值——給用戶、企業(yè)和周圍的人帶來新的機(jī)會。
優(yōu)秀的程序員總是討人喜歡的,會抽出時(shí)間與團(tuán)隊(duì)中的其它開發(fā)人員溝通相處。