去年帶了幾個新人,越來越覺得軟件開發(fā)這行還是需要一定的"天份"的,其實每行都需要一定的"天份",每個人都有自己最為適合的行業(yè),特別是技術(shù)行當(dāng)而言,如果真的希望在軟件的技術(shù)領(lǐng)域有所發(fā)展的話,勤奮、吃苦的精神固然是必須的,但以下的幾點素質(zhì)卻是基本的,而有些我覺得完全是靠天生的,或者后天小時候的努力才能培養(yǎng)出來的,如果不具備的話,我覺得這樣的人就不是很適合從事軟件技術(shù)行業(yè):
1、邏輯思維能力
????? 這點非常非常的重要,而且我覺得這點在等到大學(xué)畢業(yè)后再培養(yǎng)真的非常難,從這點上去看就會發(fā)現(xiàn)數(shù)學(xué)對于軟件行業(yè)的人來說是非常重要的,為什么這么說呢,數(shù)學(xué)正是能表現(xiàn)出一個人邏輯思維和舉一反三能力的最好的考試,而邏輯思維和舉一反三剛好是軟件技術(shù)行業(yè)最為基礎(chǔ)和重要的兩點基本素質(zhì),為什么這么說呢?
??????軟件的開發(fā)其實和數(shù)學(xué)的解方程是個非常類似的過程,都是對某個問題求解,有些問題甚至完全不懂軟件開發(fā)其實也應(yīng)該是能解決的,如果不懂具體的如何寫代碼的話頂多差的就是把解決問題的方法轉(zhuǎn)化為代碼而已,而這個培養(yǎng)起來我覺得并不是什么難事,這個只要多寫寫代碼就行了,舉一個簡單的例子,在培養(yǎng)新人的時候曾經(jīng)出現(xiàn)過個這樣的問題:要生成一個九位的字符,字符由流水號構(gòu)成,當(dāng)不足九位的時候補(bǔ)足九位,例如1就形成000000001,9999就形成000009999,不需要寫代碼,只需能說明會怎么做就是了,我覺得具備了一定邏輯思維能力的人這樣的問題都是很簡單的。
??????在將來我自己面試新手的時候,這方面的面試需要重點加強(qiáng),以前我忽略了對于這個方面的考量。
2、舉一反三能力
????? 舉一反三的能力對于軟件技術(shù)行業(yè)來說更是非常非常的重要,其實軟件開發(fā)日常的工作中通常你所做的東西都是有類似的東西的,只是會稍有變化,這個時候就需要具備舉一反三的能力。
??????這項能力在將來的面試中也需要重視,需要讓面試的人當(dāng)時學(xué)習(xí)一個以前的未知領(lǐng)域,首先給面試的人員一個解決方案,然后將問題稍加改變,看看面試的人是否可以做出解決方案來。
3、自學(xué)、獨立解決問題的能力
??????自學(xué)、獨立解決問題的能力我覺得這是為什么一定要讀大學(xué)的原因,讀大學(xué)就是培養(yǎng)自學(xué)、獨立解決問題的能力的。
??????在做軟件開發(fā)的過程中,不論是新手、老手都會碰到各種各樣的問題,這個時候一定要學(xué)會有效的解決問題,在perl界有一篇給新手寫的解決問題方法的建議的文章非常的不錯,
http://www.perlchina.org/archive/archive.php?action=archive&page=6,建議做軟件開發(fā)行業(yè)的人應(yīng)該都讀讀。
????? 個人比較推崇的解決問題的方法:
?????? 3.1、在時間較為充裕的時候,google--->看原理---->問身邊的人---->問IM上的人--->找相關(guān)的專業(yè)論壇---->學(xué)習(xí)相關(guān)的知識
??????? 3.2、在時間緊張的時候,問身邊的人---->問IM上的人--->google--->找相關(guān)的專業(yè)論壇---->看原理---->學(xué)習(xí)相關(guān)的知識
??????? 不過即使在時間緊張的時候,當(dāng)時間閑下來后,都應(yīng)該整理下問題的解決方案和學(xué)會隱藏在問題后的本質(zhì)。
4、對軟件開發(fā)的興趣
????? 這點呢,還比較難說,因為新手來說無法判斷自己是否有興趣,很多人也許是向著軟件行業(yè)所謂的高薪而進(jìn)入這個行業(yè)的,興趣而言,我覺得判斷的標(biāo)準(zhǔn)就是能否為了一個開發(fā)上的問題廢寢忘食,:)
??????另外一個方面來說,做軟件開發(fā)必然會面臨很多重復(fù)性質(zhì)的工作,這個時候只有有興趣的人才會繼續(xù)的對技術(shù)堅持下去,才會繼續(xù)的去鉆研相關(guān)的技術(shù),從而提升工作的效率、質(zhì)量。
當(dāng)然,除了上面說的幾點外,其實象承受壓力的能力、溝通交流能力、團(tuán)隊合作能力、責(zé)任心、上進(jìn)心等等都非常的重要,但這些能力我覺得相對而言是可以培養(yǎng)或用公司制度等方式來控制的,但以上說的4點基本素質(zhì)我覺得非常的難培養(yǎng),尤其是1、2、4這三種能力,對于希望一直從事軟件技術(shù)行業(yè)的人來說我覺得是否具備以上幾點非常的重要,否則還是早點轉(zhuǎn)行比較好,哈哈。