優秀的程序員:
1、邏輯能力很強,這也是解決問題的關鍵。
2、分析能力。可以很好的解決復雜問題。
3、事情做得專業的前提是能關注到細節
我覺得細心謹慎是程序員最基本的修養和素質,邏輯能力啥的倒是更為上一層的事情。整天想好的算法和架構是沒有用的,你知道當你跟產品經理說解了半天的bug是因為少了個分號的時候,產品經理心中鄙視的是多么的波濤洶涌么。
4、技術要做到精益求精
編程語言那么多,多語言的程序員雖然搶手,但是如果是半瓶水的水平,估計也是沒人愿意要的。
現在程序員非常多,是因為這個行業入門的門檻非常低,也就造成行業的水平參差不齊。做一個網站很難么,找個現成的框架,懂點數據庫,建個數據表,前端再找個現成的模板,修修改改一個網站就出來了。
5. 以身為程序員而自豪
優秀的程序員都以作為程序員而感到自豪。一旦你完成了某項功能,你會迫不及待地將成果展示給客戶、麻利利地實現客戶的想法。
如果發現自己的代碼里面可能存在問題時,怎么辦?可能會“自大”,因為是自己寫的,就覺得代碼審核沒有必要;或者有問題也非要自己完成,而不是協作解決。優秀的程序員,應該學會與團隊分享,時刻保持激情,但不僅僅是為了自己,而是為了團隊、產品和項目。
一般的程序員:
1.說得多做得少
糟糕的程序員總是覺得自己什么都懂,他們并不會覺得自己的認識和知識都是有限的。這就是所謂的夸夸其談,是的,什么都做不好的程序員能靠什么混日子呢?就是吹啊吹啊。
另一個表現方式是他們在評論起別人的程序或是設計,總是能挑出一堆毛病,但自己的程序寫得也很爛。總是批評抱怨,而沒有任何有建設性的意見,或是提出可行的解決方案。
這些糟糕的程序員,總是喜歡以批評別人的程序而達到顯示自己的優秀。
2.頑固
當你給出一打證據說明那里有一個更好的方案,那里有一個更好的方向的時候,他們總是會倔強的認為他們自己的做法才是最好的。一個我親身經歷的事例就是,當我看到一個新來的程序在解決一個問題的時候走到了錯誤的方向上時,我提醒他,你可能走錯了,應該是另外那邊,并且我證明了給他看還有一個更為簡單的方法,有。然而,這位程序員卻告訴我,“那是我的方法,我一定要把之走下去,不然我會非常難受”,于是,在三天后的代碼評審中,在經過頑固地解釋以及一片質疑聲中,他不得不采用了我最先告訴他的那個方法。
3.總是在等待、找借口以及抱怨
當需求不明確的時候,當環境不是很滿意的時候,他們總是在等待別人的改善。出現問題的時候,總是在找借口,或是抱怨這也不好,那也不好,所以自己當然就沒有做好。糟糕的程序員總是希望自己的所處的環境是最好的,有明確的需求,有非常不錯的開發環境,有足夠的時間,有不錯的QA,還有很強的team leader,以及體貼自己的經理,有足夠的培訓,有良好的討論,有別人強有力的支持……,這是一種“飯來張口,衣來伸手”的態度,這個世界本來就不完美,一個團隊需要所有人去奮斗,況且,如果什么都變得完美了,那么,你的價值何在嗎?driving instead of waiting, leading instead of following.
4.懶惰
不認真的對待代碼,只知道copy代碼。不愿意學習新的知識。
5.責任心
遇到問題,第一反應是 這不是我的問題,代碼不是我寫的。沒有責任心。