當前位置:學問谷 >

行業範例 >計算機軟件 >

如何判斷自己是否能成為一名優秀程序員

如何判斷自己是否能成為一名優秀程序員

很多像這樣的日子,當地上積起厚厚的雪時,我通常會燃起鐵爐,把馬蹄跌燒的通紅,搓搓温暖的手,開始打造特製手工馬蹄鐵。

如何判斷自己是否能成為一名優秀程序員

經過了5年多的專職釘馬掌生活後,我開始問自己一個問題:我要一直這樣幹下去嗎?能不能幹點兒別的?我的性格跟其他鄉下那些叼着雪茄、喝着小酒的鐵匠不一樣,我從來沒有戴過牛仔帽或騎過公牛。我渴望的是知道更多的事情,琢磨更多的事情,做更多的事情。

成功的從事開發工作7個月後,我已經給幾百人回覆了郵件,他們問我如何成為一個程序員的,尋求我的建議,他們想知道如何判斷自己是否適合去做一名程序員。

下面羅列了7種特徵,是我從同事中最有效的程序員身上觀察到的,我知道,優秀的程序員都有很多共同之處:

1) 注意細節,尤其是最小的細節。

“差不多”、“很接近”是隻能在做馬蹄鐵時用的詞,在軟件開發中,95%的正確仍然是不能用,一個“差不多”能用方法或一個使圖片很“接近”居中的CSS樣式都是不合格、不能用的。這剩下的5%對於整個軟件的有效性十分重要,能造成完全相反的結果。

如果你討厭細節,你就別去做程序員。

2) 學無止境

起初這句話聽起來會很迷人,你會很喜歡!我喜歡學習新事物!尤其是當你來自於一個無聊的工作或像釘馬掌這樣永遠不變的事情時 =-)。

然而,經過了一段時間後,你會發現,這變成了一條永不停息的知識河流,如果你不喜歡水,你會感覺困在了無盡無邊的知識瀑布前,無法停止,也無法窮盡。我每天大概有學到10-20種新的東西,我喜歡這些!我的弟弟卻希望事情永遠不會變化,始終如一,他對我説他永遠都不願意去學編程。

如果你不喜歡堅持不懈的去學習新事物,而喜歡待在一個永不變化的環境中,那你很可能成為不了一名程序員。

3) 面對壓力、緊張和限定期限

沒錯,每個人都喜歡使用軟件,但你喜歡面對任務的最後期限和最終目標嗎?需要什麼時候完成?做完這些要花多少時間?我們能在這段時間裏完成更多的任務嗎?是否還記得要注意細節?你怎麼辦?急匆匆的完成?加班加點希望能多完成一些?在理想世界裏,編程是一個很有趣的活動,我們寫出代碼,讓它們完成很酷的事情,吃着批薩,喝着可樂。而在現實生活中,有的是壓力,雖然不是時刻都這樣,但事情會比那種做一個30分鐘的簡單在線輔導要不同的多。我喜歡挑戰我的極限,我渴望成長,變成一個更棒的程序員,所以我不介意。

你面對時間限制和工作壓力會怎樣?如果你想回避這些壓力,那你將無法成為一名程序員。

4) 有組織能力

我知道有些程序員的生活一塌糊塗,看起來他們似乎沒自我組織能力,但我説的不是這些,我是説管理好工作流程的能力。比如,能否迅速容易的在你的計算機裏找到一個東西?我認識的優秀的程序員通常能迅速的.定位一個需要的文件,能夠用工具或腳本幫他們處理繁雜的事物,這些都是高效的工作。

當你學到了一個新東西時,你是否把它寫下來?你是否喜歡想出辦法來替你完成那些重複的工作?你能很好的安排各種不同的任務嗎?如果不能,那你就不適合去當一名程序員。

5) 好奇心

當我還是十幾歲時,教堂裏的一位夫人幾乎每月都會對我説一次,她説我應該停止問那麼多為什麼,她説這讓人討厭。雖然受了批評,最終我還是清楚的認識到,優秀的程序員總是在問“為什麼?”這個應用的工作原理是什麼?那個橫跨街道的建築是怎麼建起來的?程序員之間的對話聽起來總是像這樣開始的:“很奇怪他們為什麼要這樣做…?”以前我以為問這麼多為什麼是很奇怪的表現,但現在我明白,至少是在軟件開發中,這是一個好的品質。

不明白的事情會引起你的好奇心嗎?新事物會讓你興奮的想搞清楚它的原理嗎?如果你不具有某種程度天生的好奇心,那麼你就很可能不喜歡做一名程序員。

6) 自學

我知道,很多的程序員都上過大學,出自高校的,但這不是我要説的。優秀的程序員總是在鑽研程序代碼和文檔,來弄清楚東西的工作原理,他們不會敲開老闆辦公室的們説:“我需要上培訓課,學習這款新軟件”。優秀的程序員在不斷的學習,不斷的靠自己研究出事情的原委不論是有高學歷還是沒有學歷。

如果你需要有人教你,或者等着參加熱門的課程去學知識,那你很可能不會成為一名程序員。

7) 人際交往能力

這在程序員中不是一個普遍的特徵。真正優秀的程序員善於與人交往,但大多數程序員缺乏這些能力。如果你善於溝通,你的老闆、你的公司會非常喜歡你。而且,不要因為他們不會編碼就瞧不起他們。

如果你不喜歡與人接觸,跟別人在一起時覺得很難受,那你也許就不應該成為一名程序員。


標籤: 程序員
  • 文章版權屬於文章作者所有,轉載請註明 https://xuewengu.com/flhy/ruanjian/rvmp5.html