1. 程式人生 > >採訪優秀學長學姐後的感悟與體會

採訪優秀學長學姐後的感悟與體會

這個暑假我很榮幸代表我們學院對一批優秀的已經就業的學長學姐進行採訪,採訪小組共八人,對幾十位學長學姐進行了為期十天的採訪,被採訪的學長學姐大都在一線大城市就業,我們這次主要去了深圳和廣州,他們從事於本專業的各個行業,例如Java、安卓、前端、後端、伺服器、大資料、測試、運維、遊戲、產品、嵌入式等等,幾乎涵蓋了本專業所有方向,很具有代表性,可謂行行出狀元。下面我談談我採訪後的感悟。
大學需要重點學習的方面
專業基礎 基礎不牢,地動山搖。大學要努力夯實專業基礎,有人可能要問了,從小到大,一直強調基礎,到底我們這行什麼才是基礎?我之前也百思不得其解,在採訪中,我得到了答案。基礎很簡單,就是我們在學校的專業基礎課程,具體來說是四個方面,計算機網路(十分重要)、資料結構與演算法(很重要)、軟體工程 、編譯原理、作業系統、計算機基礎。如果能把這幾門課程學好,說明你的基礎就算打牢了。面試的時候面試官的提問也是一些基礎知識,尤其是大公司的面試問題更加註重基礎,問題問得很細很深入,要求基礎足夠紮實,面試題不會太難,只要基礎打牢了,應付面試不成問題。(因為大學就是用來打專業基礎的,一般專案經驗比較少,面試官對應屆生的提問主要針對於基礎知識與理論。)而且基礎知識學紮實了,後面學習起來也會更輕鬆順利。由此可見,基礎乃重中之重!
數學 數學是百科之母,數學與我們軟體工程專業聯絡緊密,開設的數學課程也比較多,高等數學、線性代數、離散數學、概率論等等。這些課程都要學好,有些具體的數學知識可能在專業上暫時用不上,有些人就認為沒什麼用,乾脆不學,這是極其錯誤的想法。數學很能鍛鍊人的抽象思維和邏輯思維能力,而本專業正是需要這種能力!所以大學數學千萬不能放棄,要打好基礎!不要等到工作之後才後悔沒學好數學!
英語 一說到英語,很多人就開始頭痛了,一些人大學四級考試都沒過,有的人自認為對英語不感興趣,直接放棄治療了,事實上是英語很重要,必須要學好,有些學長學姐也後悔自己當初在大學期間沒認真學好英語,到工作時才發現原來英語真的很重要,許多公司招人時對英語有明確的要求,起碼是過四級,有些公司過了四級的員工比沒過四級的要高出幾百塊錢,英語的重要性遠不止這些,我們這行經常要跟英語打交道,例如工作後接手一個專案,專案所涉及的某些技術在國內更本沒有或者說是不成熟,這時候必須要去翻閱國外的一些資料和文件,而這些資料內容基本上都是全英文的,沒有一定的英文功底是不可能看懂的,而且由於技術比較新,還沒有被翻譯成中文,有些人可能會說,這還不簡單,直接用百度或者谷歌翻譯不就得了,我以前也有過這種愚蠢的想法,後來發現翻譯的並不準確,有些翻譯甚至曲解了作者的本意,或者是把簡單的東西複雜化了。自己翻譯比機器翻譯來的更準確。有位學長和我說道,他當初英文很爛,但是在工作中經常得閱讀國外的全英文文件,他養成了一個小習慣,堅持自己翻譯,遇到實在不會的單詞才百度,一開始也很痛苦,翻譯的很慢很慢,可能一些新單詞查了很多遍才記住,當他堅持了一年之後,他發現自己的英文水平大有提高,尤其是閱讀英文文件的能力,現在許多國外的文件基本上都看得懂了,又快又準,工作效率也有了明顯的提高。總而言之,英語與本專業息息相關,切不可放棄,重在積累!
溝通和表達能力 這也是咱們程式設計師的一塊硬傷,很多人一直認為自己是搞技術的,不需要什麼表達能力,一門心思鑽研技術就行了,我之前也一直抱有這種心理,現在看來是大錯特錯啊。首先,我們這行有很多方向,有一些方向是需要比較強的溝通和表達能力的,例如做產品和管理;其次,就算是專研技術,適當的溝通和表達能力是必不可少的,尤其一個團隊做一個大型專案的時候,更加需要各個部門及成員的有效溝通和交流,一個人閉門造車是會被團隊拋棄的。很多學長學姐談到他們唄面試及面試別人的經驗的時候,他們多次提到了表達能力的重要性,較好的表達能力能給面試官留下一個好印象。
大學需要培養的能力
解決問題的能力 這一能力對所有行業都適用,並不只針對於本專業而言,因為我們的生活和學習就是一個不斷髮現問題並解決問題的過程,人們在這個過程中不斷成長,可以這麼說,解決問題的能力很大程度上決定了個人的成就和作為,如果一個人解決問題的能力較強,那麼他遇到什麼事都能保持清醒的頭腦,沉著應對,認真的分析並解決問題,做起事來得心應手,這也是公司招人最看重的方面之一。
獨立思考的能力 這項能力也是解決問題能力的重要一環,只有獨立思考,冷靜分析,才能找到解決問題的辦法,並提高解決問題的能力,這項能力也十分重要,寫程式的時候經常會出bug,這就需要不斷的思考與除錯,最終才能得到正確的程式碼;做演算法題更是需要冷靜分析,獨立思考,不能動不動就去百度,首先得有自己的想法,敢於大膽的嘗試與思考,就算是錯的也沒什麼關係,要發散思維,腦洞大開,如果思考良久也不得其解,這時才去借鑑別人的方法,如果找到了解決方案,也可以多加思考,看還有沒有其他更好的解決辦法,精益求精,優中選優。
社交能力 這也是程式設計師亟待加強的地方,當今社會,人脈資源很重要,人脈關係好,有時候在關鍵時刻能幫大忙,許多學長學姐就是通過朋友內推進的公司。當然這也並不是說朋友越多越好,而是要多結交志同道合的人,比自己優秀的人,平時可以培養幾項自己的興趣愛好,這樣更容易認識到更多的人,結交到知心好友。
大學需要樹立的意識

終身學習的意識 活到老學到老,軟體行業技術更新的特別快,學的越深入,會發現不懂的更多,(這大概是大神為什麼都這麼謙虛的原因吧。)我們必須樹立終身學習的意識,緊跟時代潮流,不斷學習,不被時代淘汰。其實應屆畢業生就業三五年內主要是學習和積累經驗為主。

鍛鍊身體的意識 身體是革命的本錢,而且程式設計師的身體素質普遍較差,缺乏鍛鍊,工作強度又大,年紀大一點身體就各種毛病,IT行業本身加班就比較多,可能經常要熬夜,沒有一個堅實的體魄怎麼能應對高強度的工作呢?在大學裡就得樹立健身的意識,養成鍛鍊身體的好習慣,平常多抽出點時間健身,工作之後也是如此,雖然很忙,但還是很擠出點是鍛鍊的,能不熬夜就不要熬夜,養成一個合理的作息習慣。總而言之,健身好處多多,身體是自己的!

  大學可以養成的一些小習慣 

   常寫部落格 並不是大神才能寫部落格,菜鳥也可以經常寫一寫部落格,記錄自己的成長曆程,可以把自己的一些收穫和心得感悟都寫進其中,哪怕很小也可以記錄下來,一是可以供自己以後翻閱和進一步的學習,二是可以接受他人的評論,與其他人交流想法與意見,並不斷提高自己的能力。

  多與高手交流 人外有人,天外有天。比自己強的人多了去了,他們可能比自己更努力,但是也不要氣餒,大神也是從菜鳥開始的,菜鳥通過長久的積累和發展也能成為大神,高手之所以為高手,一定有他的過人之處,多和他們交流,多學習他們的過人之處,讓自己朝著高手不斷邁進。平時可以多看看一些大牛寫的優秀的部落格,多逛逛一些貼吧,加一些大牛為好友,直接請教他們。

  多逛論壇,瞭解潮流和發展趨勢 在學習迷茫的時候,多逛逛國內外知名的論壇,多聽聽本行業專家和知名學者的見解,瞭解當今本行業發展的趨勢和潮流,看看未來幾年最火最熱門的行業,適當的調整自己的方向和目標。

  多看書 平時可以多抽點時間看看書,並不止那些專業方面的書籍,也可以是專業之外的雜書,廣泛涉獵,讀無用之書,做有用之人!當學長問及我們這一年讀過那幾本書,我們都啞口無言,無言以對,我想來也感到十分慚愧,竟然說不出一本像樣的書。讀專業書籍能豐富自己的專業知識,讀雜書能潛移默化地提升自己的修養與素質,全面拓寬自己的眼見。

  下面根據學長學姐的見解回答一些大學生常見的問題

  畢業後進大公司好還是小公司好?

    首先說說大小公司的優缺點,大公司會為應屆畢業生制定一個培養計劃,一般會有人帶著學習,大公司分工十分明確精細,要求員工精通某一方面,用到的技術也相對更加先進,也能認識許多行業大牛和專家,自己的像BAT(百度、阿里巴巴、騰訊)這樣的大公司會有鍍金作用,以後再進小公司也更加容易,大公司一般都有自己的企業文化,管理也會比小公司做的更好;但是大公司強調在某一方面比較突出,員工一般只精通於專案的某個環節,不能全面的發展自己。小公司分工沒有像大公司那麼明確,內部成員關係也比較簡單,一般一個專案由幾個人包攬,專案負責人只看效果,不那麼注重過程,這也給了員工更多的鍛鍊機會,他們會熟悉掌握專案的方方面面,自己有較大的自由發揮空間,可以全面的發展自己,但是更看重持久的收益,一般不會花時間和成本去培養一個應屆畢業生,沒有比較明確的培養計劃,許多東西都是靠自己一個人摸索,一般小公司的薪資和待遇也沒大公司那麼好,小公司可能會更辛苦,得到的鍛鍊也會更多。學長學姐一般推薦儘量去大公司,但我覺得還是根據個人的職業規劃和實際情況進行選擇,沒有絕對的好壞之分。

  本專業今後的發展趨勢是什麼?

    現在比較熱門的是大資料和人工智慧,預計今後幾年一直很火,當今是一個資訊爆炸的時代,海量資料需要處理,大資料應運而生,大資料永遠都不會過時,走大資料與人工智慧方向對演算法有較高的要求,對學歷也有較高的要求。(一般是研究生或者博士)有興趣的可以朝著這方面學習。另外,現在安卓方向的市場飽和,但也不是說不能學安卓,只要學的夠好,這種人才公司還是十分需要的。

  不知道自己的興趣是什麼怎麼辦?

    只有一個辦法,那就是多嘗試,花大把時間思考自己對什麼感興趣,不如先投入進去做,實在沒興趣再換,實踐是檢驗真理的唯一標準,三百六十行,行行出狀元,任何職業都是平等的,不要有任何的偏見,一個路邊賣燒烤的可能收入比許多程式設計師都要高,找到自己的興趣和專攻方向很重要,畢竟興趣是最好的老師。

  大學四年應該學些什麼知識、養成什麼習慣、培養什麼能力?

  答案見上文

  大學要不要多花時間多學幾門語言?

  其實程式語言相對來說並沒有那麼重要,它只是一個程式設計工具而已,它是為解決某個問題、實現某個功能應運而生,在學會一門程式語言之後,在學其他程式語言會發現很容易學懂,其實所有程式語言都是相通的,背後的解決問題的邏輯是相同的,只是語法和所寫的程式碼不同罷了。這就跟你用中文還是用英文和別人交流是一個道理,語言不同,但是要表達的意思是一樣的。重要的是瞭解程式語言後面的原理,也就是設計者的意圖。而且程式語言也更新的很快,是學不完的,不如多花點是時間學習資料結構與演算法,這才是程式設計的核心。

  大學搞acm怎麼樣?

    acm對演算法和思維有較高的要求,acm對提升思維能力很有幫助,大學利用課餘時間搞一搞還是很不錯的,如果能拿獎就更好了,沒拿到獎對自己能力的提升也是大有幫助的,但是也不能一味的刷題學演算法,學完演算法之後,可以找找生活中的一些問題,看能不能用某種演算法解決,解決了會給人極大的成就感,這樣學是比較好的。

  其他獨到的見解

   改進某些小習慣

    有些壞習慣如果實在戒不了,比如改進一番,有位學姐說她有一個小習慣,就是上班坐地鐵的時候愛玩手機,瀏覽一些雜七雜八的網頁,毫無目的的瞎逛,她改不掉看手機的習慣,後來,她把這段時間改成了看技術資料與文件,長此以往,不知不覺中自己的知識豐富了不少,獲得了較大的進步。

  問題驅動學習

    總是學習一些枯燥的技術和理論,很容易讓人喪失學習的動力,這時候可以嘗試做一個自己喜歡的小專案,先羅列出需要哪些功能,再看實現這些功能需要哪些對應的技術,再去學習一些新技術,這樣就不是單純為了學習而學習,而是為了解決問題而學習,不但能學到更多的知識,做好的小專案也能帶給人滿滿的成就感。

  多看開原始碼

    提高程式碼能力最好的辦法就是多看多些,尤其是要多看一些優秀的開源專案程式碼,向高手看齊,模仿並加以改進,日積月累,自己寫程式碼的能力將會有一個質的提高。

  多看看公司招人的標準

    如果自己一直很想去某家公司,但是卻不知道怎麼學,最好查一下公司對新人的要求,然後制定自己的計劃和目標,朝著這個目標不斷前進,等你達到這個標準了,去你想要去的公司自然沒什麼問題了。

  以上就是我此次採訪後的感悟與心得,剛上大學不久,自己也很少寫部落格,最近才開始寫,寫的不好或者不對的地方,歡迎大家指正,大家也可以發表評論說出自己的意見與見解,謝謝大家!