轉貼一篇不錯的文章

來源:互聯網
上載者:User
10年內,我面試過的技術人員,至少在1000人之上。因此,根據我的面試體會,想給技術人員提一些忠告。
首先,面試被刷下來的人員,最多的,是因為基礎功差,基本概念、基本原理不清楚。我在面試中考的基礎題目,大部分都是大學學校裡教的課程,比如資料結構、基本演算法、語言基礎,沒有多少人清楚的。很多人在大學裡面基本上就是玩,這些基本知識根本就沒學會,並且很多人非常固執的認為,這些知識都過時了,做項目也根本用不到。很多工作5、6年,甚至7、8年的技術人員,連C語言中memcpy和memmove之間的區別都搞不清楚,甚至有人根本就沒聽說還有memmove 這個函數,真讓人苦笑不得。至於HashMap,集合、鏈表就更是一塌糊塗。因此,我給的第一個忠告:務必把基礎知識、基本概念都弄明白,要一清二楚,這是做任何項目、任何產品的基礎,在項目和產品開發中都會大量應用。如果你不懂這些基礎知識,就能在你的團隊中進行開發,那隻能說,你們團隊開發的東西太爛了。
其次,物件導向的概念和思想,務必要深入理解,加強實踐。其實物件導向只有三個基本概念,對象之間也只有四種關係,因此學起來不難,真正難的是,深入理解,透析其中的真正內涵,在軟體開發實戰中活學活用。物件導向這麼點概念,統領軟體開發這麼多年,至今還是主導地位,其它的方法,只能是作為他的補充而已。因此,我們有什麼理由不把物件導向好好學學呢?很多Java程式員認為,Java是物件導向的語言,我只要用Java來開發程式,我就掌握了物件導向了。這是極其幼稚的想法,你離物件導向還十萬八千裡呢!其實,這種理念在某些軟體培訓中心中已形成了系統的理論,比如重慶朗沃教育就對Java與物件導向有深刻的研究和總結。
第三點,目前公司裡你所從事的項目開發或者產品開發,只不過是給你一個機會,讓你能接觸到相關的技術點,但它不是你應該掌握的全部。舉個例子來說:你加入XXTeam Dev後,發現這個項目組採用了Spring架構來配置背景資料庫連接池。你以前從來沒有接觸過Spring,通過這個項目,你就學會了怎麼用Spring設定資料庫串連池。很多人也就是這個狀態,項目上用到1個技術點,自己就學到1個技術點,不會通過這個機會,學到更多的技術點。因此,下個項目如果用Spring配置別的東西,他就不會了。正確的思路是:項目和項目在業務上差別可能很大,但技術上通常差別很小。一個項目給了你接觸到相關技術的機會,你應該抓住這個機會,把相關的技術領域都學會。因此,在這個例子中,你應該深入學習Spring,看看它的原理是怎麼回事,他還有哪些強大的功能,有些可以引入到你現在的項目中,解決項目組中別人沒有解決的問題,還有些這個項目還用不到,你也應該涉獵學習。
第四點,什麼時間學習?很多人多說,現在項目時間太緊,等這個項目做完後,沒這麼緊張,時間比較輕鬆的時候再學吧。結果這個項目做完後,下一個項目接著就來了,於是一直也沒時間學習,自己的技術水平也一直在原地踏步。請大家放棄這種想法。軟體開發職業生涯,一直就要在這種時間緊、任務重的環境下度過,這就是我們的生存環境。因此,我們必須在這種環境下學會學習和提高。就在每個項目過程中,圍繞與本項目相關的技術,展開學習,多思考,多查閱資料,在項目中學以致用,不斷實踐和總結,這樣才能做完一個項目後,自己就能在技術水平上提升一大塊。
第五點,先求精,後求廣。人的精力是有限的,不可能自己每個方面都懂,都是專家。在大型軟體開發過程中,什麼都懂、什麼都不精的人,是沒有任何價值的。因此,技術人員應該先靜下心來,將一個技術領域內的知識深入理解,融會貫通,達到精純的地步,然後才可以去學另一個技術。先使自己成為專家,對軟體技術形成深刻的理解,到達相應層次後,再向廣度發展。
第六點,學會溝通。大多數的技術人員,那麼是內心,不愛與人溝通,要麼是過於自信,不屑與人溝通,聽不進別人的不同意見。這些都是導致自己水平無法提高的重要原因之一。從智力上講,大家的智商都差不多,因此不可能你比別人聰明多少,別人也不會比你苯多少。因此,積極和別人溝通,交換想法和思路,學會傾聽他人意見和建議,可以開闊自己的思路,豐富自己的知識,在很多時候可以讓自己少走很多彎路。
第七點,一定要有老師帶你,尤其是突破你的現有層次。有比你水平高、經驗更豐富的老師帶你,可以讓你迅速掌握很多軟體實踐的精髓,迅速提升你的能力。所謂名師出高徒,就是這個道理。很多人就靠自學,自己看書,或者從網上找資料,然後項目中實踐應用,自己做設計、做架構、做需求,然後認為自己很行。這是非常危險的,我接觸過很多這類的人,非常高傲,盲目自信,對自己有過高的評價和期望。這個做法的最致命問題在於,你自己理解的,很可能是片面的、甚至完全錯誤的,另外也沒有人會指出你的錯誤,告訴你真正正確的答案是什麼。尤其是從程式員到軟體設計師的過程,層次的提升,必須有比你高至少一個數量級的高人來指點你,這樣才有可能。

 
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.