給想當程式設計師的大二學生的建議

TP_funny發表於2015-02-05
背景:最近我在Groupon公司的一項新職務是為公司招募優秀的開發人員。我是Groupon開發團隊的代言人,負責釋出招聘資訊、回答問題等。過去的一週,我對兩個詢問夏季實習工作的學生進行了回覆。

下面是我在回覆他們的郵件中的感覺值得公開發表的一些建議:

1.如果你在大二的時候就已經開始接觸外面的公司,我認為你做的很對,你就應該這麼早為你今後的職業生涯打基礎。很多人都是等到畢業的前兩個月(甚至更晚)才考慮這個問題。即使你沒有實習的機會,你也要獲得一些外面的工作印象。

2.如果你想學習一種成熟的技術,先看書仍然是推薦的做法。理論和實踐之間是相互平衡的,書本上是經過完善的符合實際的描述,會讓你對一種技術有一個全面的連貫認識瞭解。如果你想學Rails,Web開發敏捷之道——應用Rails進行敏捷Web開發 這本書會教會你如何在一週內開發出一個功能齊全的電子商務網站。當然,有時候實踐是先於理解的(甚至有時候你不實踐就無法理解)。

3.千萬不要寄希望於在課堂上學習一種新語言新技術。計算機專業的課程有自己的目標,是要給你一個廣泛的理論基礎,是針對某些特殊的課題。很多的技術(如原始碼管理,伺服器管理,nginx配置等)和語言(很多學校只教C和Java)永遠不會出現在課堂上。在公司裡,你經常會根據業務的需要或個人事業的需要即時學一些新東西,所以,如果你想以後事業上有所斬獲,現在你就要開始學習一些課外的知識。

4.不要只關注一些特殊的語言和框架,要學一些多樣的程式設計技術。像計算機程式的構造和解釋 (免費線上閱讀 http://mitpress.mit.edu/sicp/full-text/book/book.html) , 程式碼整潔之道, 程式設計師修煉之道 等就是這樣的好書。

5.如果你對上面一條只是一眼掠過,最好還是再讀一下!讀讀SICP,看看視訊講解,這些訓練會讓你成為一名出色的程式設計師。

6.至少學一種“冷僻”的語言。它會讓你學到很多從像Java這樣主流的語言中學不到的東西。我個人喜歡Lisp這種語言,而Land of Lisp這本書是一個非常好、非常有趣的學習這種語言的教材。

7.做一個工程。這個工程不必非常有意義或非常重要,只是為了實踐!比如寫一個能找到離你最近的星巴克的搜尋器。為你的學習小組開發一個小組事物管理系統網站。開發一個能完成拼圖任務的自動機器人軟體。只是為了動手去做,把工程釋出到網上,把程式碼放到GitHub上,把你做的事情寫出來,發表在你的部落格上。這會讓你留下一個對程式設計感興趣的公眾形象,這對一些招聘單位具有非常非常大的吸引力,尤其是在面試的時候。這也是你鍛鍊寫作的機會,讓你知道你每過一年都有哪些進步。

8.接觸自己領域裡的開發人員。感謝Google的存在,如果有你的研究領域的研討會,5秒鐘內就能搜到它們。如果你找不到,也許是這些事情太耗時或難於組織。你可以作為一個志願者為這樣的會議出把力,如尋找會議地點等,或你來組織。這種事情並不是很難,只是要你付出很多時間,要有信心。這種事情會讓你獲得很好的信譽,和他人保持聯絡,一起工作,一起進步。

要說的就是這些。買100塊錢的書,做一年的課餘練習,你會變成一個對招聘單位來說比最優秀的學生還更具有吸引力的大學生!
相關閱讀
評論(1)

相關文章