<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ##一個大一學生有關未來規劃的疑問及答復 【來信】 周老師: 您好! 我是山東大學計算機科學與技術學院的大一新生,自從選擇了這個專業以后,經常需要看別人的技術博客來學習知識,看到您的博客后十分敬佩,您這種工作勤奮又樂于幫助他人解決疑惑的精神實在是令人敬仰。 學生有個關于大學學習方向的問題,想了很久,但是還不是很清晰。一直想給您寫信咨詢,但又怕耽誤您的工作,在這里先謝謝您能為我看這封信了。 首先介紹一下我的情況。 1)我大學四年的目標:不讀研究生,直接去Microsoft、Google、BAT其中之一的一家公司做軟件開發工程師。我通過搜索和瀏覽這幾個公司的招聘信息發現,這幾家公司該職位的共同需求是:有深厚的數據結構與算法知識基礎、精通C++/Java語言、有項目經歷、競賽獲獎的優先。 2)我現在的狀態是:學業成績位居上游,從去年開學到現在一直在從事ACM競賽,目前已經刷完了《算法競賽入門經典》上的200來道題目,對競賽中的主流題目都有了一個大體的認識,但是越來越感到ACM競賽的力不從心(高中從未搞過競賽)。目前正在學習嚴蔚敏的《數據結構》。性格較內向。 我想請您幫我指點的問題是: 1.我是否應該退出ACM競賽? 對于這個問題,我思考了很久,我的想法是這樣的: a)我搞ACM的目的其一是為了拿獎牌,希望這樣在求職的時候能為我的簡歷增添一點分量。 **那么請問如果我的簡歷上沒有任何ACM獲獎的經歷,但是有獎學金和項目經歷+山大985、211的牌子,以您的經驗來說,大公司是否會給我一個筆試的機會?** b)隨著刷的題目越來越多,逐漸感覺到要想ACM獲大獎(金牌及以上)我必須幾乎將全部的時間都用來刷題目,但是我的目標是成為一名優秀的軟件開發工程師,這樣的話,對ACM的過度投入勢必會影響我的其余工程能力的提升,同時影響自己其他知識的學習。諸如:操作系統、數據庫、計算機原理都是構建完整的計算機知識體系所必需的知識。 **請問根據您的經驗來看,想成為優秀的軟件開發工程師但是卻將大量時間投入到編程競賽中是否不正確?是否有點偏科?** c)參加ACM的另一個目的是是學好數據結構與算法,但是研究了一下筆試面試題目后發現競賽中常用的數據結構在求職時很少用到,并且如果僅僅為了學好數據結構與算法根本沒有必要刷ACM題目,個人感覺多讀好書、多敲代碼實踐,刷LeetCode+看《編程之美》、《編程珠璣》等等牛的書就夠了。 **以上是我關于ACM競賽的看法,還請您提出建議與批評。** 2.為了得到目標公司的職位,數據結構與算法知識到底要學到什么程度? 我認為就是達到能熟練做出名企招聘題目的程度,暫時的規劃如下 1)第一階段:知識學習階段(2015年3月——大二上學期結束) 讀完《數據結構C語言版》、《Algorithm Design?》、《Algorithm》、《Introduction to Algorithms?》等等牛的書并總結寫筆記(只看書學不會的,必須得自己大量地敲代碼才能熟練掌握),做對應知識點的5道LeetCode題目來熟練鞏固所學的知識。 2)?第二階段:真題訓練總結、找實習準備階段(大三上學期中間——大三上學期寒假結束) 一方面不斷復習第一階段的筆記,真正熟練掌握;另一方面,做程序員筆試面試考的數據結構與算法的題目+閱讀《編程之美》、《編程珠璣》、《程序員面試寶典》等等筆試面試指導類的書籍并總結查漏補缺。目標是大三下學期的時候參加名企的實習生招聘能拿到理想公司的實習offer,然后好好表現爭取能夠直接轉正。 **請問根據您的經驗來說我的任務安排的合理嗎?懇請您提出意見與批評。** 3.我應該專攻Java還是C++? 從網上了解到的Java工程師的需求最大,但是有的統計數據也顯示C++的工程師薪資最高,這不知道哪個更好?我的C++/java學的目前的只能算是入門,希望能提前想好專攻什么語言,在以后的學習過程中能有所側重的去學習。 **我看的很多人寫的面經,都提到好像C++/C是必考的知識是嗎?那么就算專攻Java,《C++ Primer》、《Imperfect C++》、《C與指針》等等牛的C/C++方面的書也要看嗎?懇請您提出意見與批評。** 4.我應該什么時候開始專門學習某一種編程語言? 現在正在學習數據結構,感覺數據結構與算法的實現與語言的特性關系不大,主要是思想正確都能實現,因此,我感覺學習數據結構和算法的過程中對語言的學習并沒有太大的幫助,只是熟悉基本的語法而已,而想精通一種語言要大量閱讀相關的書籍+大量敲代碼實踐。因此,我想在做項目的同時加深對某一種編程語言的學習。也就是說,先主攻數據結構與算法,然后同時專攻編程語言+項目開發。 **您感覺這樣安排合理嗎?我想以此為依據來調整學習的進度。懇請您提出建議與批評。** 5.怎樣權衡學習基礎學科知識與學習技術的關系? 我從網上查閱了這方面的觀點。一部分人認為:項目開發用不到數據結構與算法等等學科基礎知識,只需要熟悉類庫并會調用就行了;另一部分人認為:數據結構與算法是“內功”,而流行的技術是“外功”,從長遠的角度來說,只有內功扎實,才能在軟件開發這條路上走得更遠,如果內功不好,那么永遠只是在堆砌API,不會成為優秀的工程師的。就是說,數據結構與算法等等學科基礎知識決定一個開發人員走多遠,會不會開發用的技術決定開發人員能不能開發。 **請問根據您的經驗,您感覺怎樣認識這個問題呢?怎樣權衡學習基礎學科知識與學習技術的關系呢?從找工作的角度來說,我應該怎樣分配這兩方面學習的時間呢?或者說這兩個方面我應該分別達到什么樣的要求呢?** 6.我應該在什么時候參與一個團隊進行項目的開發? 大一上學期的時候我進入了一個做安卓開發的團隊,但是那時候癡迷于ACM競賽,于是就退出了。 **因為我想大四出去實習,希望能在我出去實習之前有一個能拿的出手的項目,您感覺我什么時候去搞項目的開發比較合適呢?得用多少時間才能把自己做項目這方面的能力提升上來,能做出自己拿手的項目?現在想的是大二上結束后就開始做。懇請您提出寶貴的意見與批評。** 7.從找到好工作的角度來說,我除了有硬功夫(真正掌握知識)外,有哪些很重要的軟實力要培養呢? 我是個比較內向的人,不愛與人交流,本想著上了大學能夠鍛煉一下自己的各方面能力,比如說交際能力、合作能力、領導能力等等軟實力,但是隨著學習的深入,發現要想達到名企的招聘要求(有深厚的數據結構與算法知識基礎、精通C++/Java語言、有項目經歷、競賽獲獎),自己要學的知識非常多,自己還沒讀的好書籍非常多,感覺自己在培養專業硬能力這一方面都必須全力以赴,現在我每天除了睡覺吃飯外的其余時間就是在自習室里學習知識。 **我現在擔心的就是如果我的專業技術能力達到了招聘的要求,但是會不會因為在面試中因為溝通能力、交際能力、應變能力不好而與理想的offer失之交臂呢?感覺時間真的是不夠用的。您感覺那些面試能力在找工作前多準備多訓練一下能行嗎?怎么樣權衡培養軟實力與硬實力的關系呢?懇請您能給予指導。** 學生的計劃性比較強,感覺明確目標以后,應該盡快的明確達到目標的階段與方法,因此問題比較多。但我絕不是那種“想得太多,做的很少”的人,每個階段的計劃我都會細分到每一天去全力完成。 以上是我的疑惑與自己對疑惑的思考,深知自己的知識淺薄,眼光見識短淺,因此對一些問題的看法不免有些功利與“天真”,十分希望您能結合自己的經驗與經歷對我的疑惑與看法提出建議與批評。 學生深知自己對于如何進入IT龍頭企業、如何在校期間培養自己的工程開發能力、如何成為一名綜合素質優秀的IT精英知之甚少,在這里十分希望您能夠結合您的經驗與經歷對學生還沒想到的地方做一些補充與指點。 再次感謝您能抽時間看著封信件,祝您生活快樂,工作順利,事業有成。 ? 此致 敬禮 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?山東大學計算機專業學生 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?XXX ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2015年3月27日 ? 【答復】 你好! 首先要感謝你的來信,你是至今為止,我收到的讀者來信中寫得最詳細的。 從你的字里行間中,我感覺到你是一個對未來有著明確規劃、有著殷切期盼的人,而且,你的思維很清晰,行動的目的性也很強,相信你是一個很有前途的學生。 作為過來人,我深知在大學里面,像你這樣的學生是很少的,因此,我才更加感覺到你這般勤于思考、不斷進取的精神的難能可貴。由于你提的問題比較多,涉及到的面比較的廣,我也只能從自身的經驗出發給出回復,不一定都正確,請認真參考。 **1.是否應該退出ACM競賽?** **a)?那么請問如果我的簡歷上沒有任何ACM獲獎的經歷,但是有獎學金和項目經歷+山大985、211的牌子,以您的經驗來說,大公司是否會給我一個筆試的機會?** 周:大公司給筆試的標準是應聘者的簡歷與崗位要求的契合度高,因此,并不是說你有獲獎經歷、項目經歷,抑或是名校出身就一定行的。舉個例子,如果一個崗位要求你會數據庫,而你的簡歷上面寫的精通C++,并且有很多獲獎的經歷,那也可能會被淘汰掉。因此,你要根據心儀的崗位來安排自己的學習,不要盲目追求一些很光鮮的東西。 b)?**請問根據您的經驗來看,想成為優秀的軟件開發工程師但是卻將大量時間投入到編程競賽中是否不正確?是否有點偏科?** 周:我認為,一個優秀的軟件開發工程師需要具備以下素質:1)專業知識牢靠;2)學習能力強;3)動手能力強;4)善于溝通交流;5)樂于分享。也就是說,“優秀”是一個綜合素質,編程能力強的人不見得就是一個優秀的軟件開發工程師。因此,除了編程之外,你在學校里面還要注重其它方面的學習。 c)?**以上是我關于ACM競賽的看法,還請您提出建議與批評。** 周:我本人沒有參加過ACM競賽,但參加過其它的競賽。總的說來,競賽的目的與我們平時學習的目的是不一樣的。一般說來,競賽的持續時間不長,參與的目的是為了獲獎,而平時的學習卻是一個長期的過程。要想把專業基礎打牢,靠參加競賽是遠遠不夠的,還是要注意平時的學習,要日積月累。要想學好數據結構與算法,最可行的辦法就是多看好書、多編寫代碼、多總結、多分享。 ? **2.為了得到目標公司的職位,數據結構與算法知識到底要學到什么程度?** **請問根據您的經驗來說我的任務安排的合理嗎?懇請您提出意見與批評。** 周:我對在校學生的建議就是利用大一大二的時間把專業基礎課學好,多看點書,并培養自己動手實踐的習慣。等到了高年級(如大三)的時候,再考慮專攻某一方面或實習的事情。你這兩個階段的安排還是比較合理,但要制定好計劃,并遵照執行。 ? **3.應該專攻Java還是C++?** **我看的很多人寫的面經,都提到好像C++/C是必考的知識是嗎?那么就算專攻Java,《C++ Primer》、《Imperfect C++》、《C與指針》等等牛的C/C++方面的書也要看嗎?懇請您提出意見與批評。** 周:作為在校學生,其實你無法確定未來自己要從事哪方面的工作。即使你確定未來要做Java開發,那么C++還是要學的。在實際的軟件研發工作中,有時候某個任務用這種語言編寫較好,而另一個任務又要換一種語言來做。因此,在學校的時候,盡量做到多學幾種語言(不限于Java和C++),但比較熟練的語言盡量不要超過兩種。 ? **4.應該什么時候開始專門學習某一種編程語言?** **您感覺這樣安排合理嗎?我想以此為依據來調整學習的進度。懇請您提出建議與批評。** 周:數據結構確實與編程語言的關聯性較小,但如果你用某種語言來實現數據結構,可以同時學到編程語言和數據結構。你想先主攻數據結構與算法,然后同時專攻編程語言+項目開發,這樣是不合理的。在學習數據結構與算法的同時,你也要學習編程語言,用學到的編程語言來實現數據結構或算法。在你有一定的基礎之后,再從事項目開發。另外,在學校,基本上沒有專門學習某一種編程語言這種說法,因為你要學習不止一種編程語言。 ? **5.怎樣權衡學習基礎學科知識與學習技術的關系?** **請問根據您的經驗,您感覺怎樣認識這個問題呢?怎樣權衡學習基礎學科知識與學習技術的關系呢?從找工作的角度來說,我應該怎樣分配這兩方面學習的時間呢?或者說這兩個方面我應該分別達到什么樣的要求呢?** 周:我贊成數據結構與算法是“內功”,而流行的技術是“外功”這種說法。現在的IT技術日新月異,新技術層出不窮,而基本的原理是不會變的。如果你只是為了追逐流行的技術,那這樣做是很累的。數據結構與算法永遠不過時,計算機底層知識永遠不過時,各種好的學習習慣永遠不過時。大學四年是最好的打基礎的時光,你一定要將專業基礎學好,在重點打基礎的時候,你也可以關注一下當今流行的技術,做到不落伍。在找工作的時候,也以考查應聘者的基礎為主。建議你把80%的學習時間拿來打基礎,20%的時間拿來學習技術。 ? **6.應該在什么時候參與一個團隊進行項目的開發?** **因為我想大四出去實習,希望能在我出去實習之前有一個能拿的出手的項目,您感覺我什么時候去搞項目的開發比較合適呢?得用多少時間才能把自己做項目這方面的能力提升上來,能做出自己拿手的項目?現在想的是大二上結束后就開始做。懇請您提出寶貴的意見與批評。** 周:我建議大三的時候再參與一個團隊進行項目的開發。因為前兩年你的主要任務是把專業基礎打好,盡量不要分心。提升做項目這方面的能力不是一朝一夕的事情,只有通過長期的鍛煉和實踐才行。也就是說,一個人的漫長的職業道路會不斷培養這個人的做項目的能力。做項目的功利性不能太強,盡量做出能夠解決實際問題的東西,否則就成了為做項目而做項目了。 **7.從找到好工作的角度來說,我除了有硬功夫(真正掌握知識)外,有哪些很重要的軟實力要培養呢?** **我現在擔心的就是如果我的專業技術能力達到了招聘的要求,但是會不會因為在面試中因為溝通能力、交際能力、應變能力不好而與理想的offer失之交臂呢?感覺時間真的是不夠用的。您感覺那些面試能力在找工作前多準備多訓練一下能行嗎?怎么樣權衡培養軟實力與硬實力的關系呢?懇請您能給予指導。** 周:一個軟件工程師需要具備以下能力:1)?硬能力。包括:專業能力(學校里面的課程主要是培養這個)、業務能力(包括編寫代碼和文檔的能力等)等。2)?軟能力:包括:分析解決問題的能力、與人溝通交流的能力、承受壓力的能力、自我調節的能力等。你就要在學校里面注意培養以上兩種能力。具體而言,除了學習專業知識、動手編寫程序、做項目之外,你還要多與人溝通、多參與團隊活動,建議你參加一些社團活動,以此來培養自己的“軟能力”。“軟能力”的培養是潛移默化的,不會立竿見影。另外,建議你不要做一個大學里面的“苦行僧”,要享受大學生活的方方面面。 ? 我的以上建議,請參考。在大一的時候,你就有如此詳實的規劃,相信你的未來是可期的。但為了實現自己的目標,你一定要腳踏實地,要學到真正的本領,要多向周圍的優秀人物學習,多總結和分享。在此,建議你閱讀李開復老師寫給大學生的七封信及賀利堅老師的《逆襲大學—傳給IT學子的正能量》一書。 最后,愿大學生活為你插上騰飛的翅膀,愿你的大學生活精彩無比! ? ? 周兆熊 2015年3月28日 ? ? ? (本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5,微信號:245924426,歡迎關注!)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看