回覆列表
  • 1 # 玩著學程式設計

    作為一個非科班的程式設計師,如何彌補和科班之間的差距,只有你真的比科班的人寫得好!因為你沒有學位,沒有系統的課程,只有真正從實戰中越過學位這個坎兒,靠的就是你擁有超強的寫程式碼的能力。而這種能力,只有靠寫大量的程式和程式碼,積累經驗,切實鍛煉出比大部分科班同學更強的coding skill的能力。

    多練習,多做專案,多踩坑,在開發的過程中,除了極少數的專案需要頂尖的理論知識的演算法,絕大部分的日常開發,依靠的都是經驗。每天保證一定的程式碼量,開始很困難,因為沒有理論知識,所以有很多問題不懂,遇到不懂的問題再去查資料。

    選定一個方向,比如像你所說的,學習的是Java,就去網上去找相關的影片教程,跟著影片教程來走,系統學習一遍,然後再看一些Python相關的書籍,做一些專案,這樣印象會更加深刻,有關軟體開發方面的名著。

    以前在“如鵬網”上學習Python的學習路線,可以作為學習的參考。有網路的地方就可以學習,以前學習的時候就是利用空餘的時間來系統的學習的,大三就開始工作了,拿著薪資上大學,積累工作經驗。

    1、Python基礎

    2、資料庫開發技術

    3、web前端

    4、Python web開發及企業專案實戰

    5、Linux

    6、NoSQL

    7、資料視覺化

    8、爬蟲技術

    9、人工智慧

    最後,你需要的是自信,非科班生絕對可以做得比科班生要牛逼。寫個程式而已,有多高深?非得讀個幾年書?說白了,只要你肯不要命的、勤奮地寫程式碼,未來的發展會非常的不錯的。

  • 2 # 三叨

    謝邀,靠腦子和學習力吃飯的工作崗位,是否出身科班並沒有想象中那麼重要。搞程式設計需要的是思維邏輯縝密,條理清晰,善於總結,喜歡專研和學習,最重要的是熱愛程式設計。我初中文化,自學設計,前端,後端,在二線城市年薪過50萬。別人說如果科班出身可能我年薪過百萬,但這都是意淫。成不成功還是要看人,而不是學歷。非科班缺的是體驗,而不是能力。

  • 3 # IT人劉俊明

    作為一名從事IT行業多年的老程式設計師,同時我也在帶研究生,所以我來回答一下這個問題。

    在我看來非科班程式設計師與科班程式設計師的差別主要在以下幾個方面:

    第一,知識結構。這是主要的差別,科班出身的程式設計師往往具備完善的知識結構,包括作業系統、網路、計算機體系結構、數學、資料庫等內容,這些內容對未來的程式設計有非常大的幫助。對於非科班程式設計師來說,這部分知識也是需要重點彌補的。

    從帶軟體團隊到現在,我沒有一次遇到非科班程式設計師主動承擔新任務的(需要學習新技術),但是很多時候,機會就是從承擔新任務開始的。記得多年之前(大概8年前),我第一次帶移動互聯團隊,做Android開發的程式設計師都是從Java轉過來的,但是沒有人接觸過iOS開發,我就開會討論,看有沒有人主動承擔iOS開發任務,結果一個剛參加工作沒多久的程式設計師主動承擔了任務(畢業於北京理工大學計算機科學與技術專業),目前他已經是移動互聯開發團隊的主要負責人了。其實,承擔新任務也是一種對自己學習能力的自信,非科班程式設計師也要培養自己這種自信。

    第三,解決問題的思路和途徑。科班出身的程式設計師往往有多種解決問題的思路和途徑,而非科班程式設計師解決問題的思路往往比較單一,一旦這個思路有問題就不知道該怎麼辦了。出現這個問題的根本原因還是基礎薄弱,經歷更多的專案自然能培養這方面的能力。

    我也帶過一些非科班出身的研究生,通常情況下,這些研究生在剛入學的時候做實驗非常慢,進入課題組之後需要一個較長的適應期。一般我在研一的時候就會給非科班的研究生列出一個書單,主要是根據學生自身的知識結構來決定要彌補的知識,通常需要彌補的是作業系統(Linux系列)、資料庫、計算機網路、編譯原理、資料結構等內容,通常計算機專業研究生的數學基礎都比較紮實,所以邏輯思維能力基本上沒有太大的問題。

    按照歷史經驗來看,雖然早期的時候非科班學生程式設計比較慢,但是到研究生的後期基本上與科班學生沒有多大的差距,有的甚至是同學中的佼佼者。所以,不用擔心非科班身份,只要不斷學習並彌補自己知識結構上的差異,做一個優秀的程式研發人員是完全沒有問題的。

    還有,對非科班程式設計師來說,如果在工作中遇到了較大的職業發展瓶頸,那麼考研是一個不錯的選擇。

    如果有程式設計方面的問題,或者是考研方面的問題,都可以諮詢我。

  • 4 # 月半程式設計師見聞

    你好,對於你的問題,我來發表一些個人的觀點。

    對於你的問題“怎麼彌補和科班程式設計師之間的差距”,我因為個人工作時間也不是很久,所以方法上不能給你什麼建議,所以在這裡我來為你分析下你所說的科班程式設計師。

    科班程式設計師

    我應該算是你所說的科班程式設計師,但是我沒覺得我比其他非科班的程式設計師高貴、厲害多少,當然,這可能因為我是一個學渣吧。

    科班程式設計師就是計算機相關專業的畢業生,那麼,計算機相關專業和其他專業有什麼不同呢,我想,你覺得和科班程式設計師有差距的原因,也許就是因為這些不同而造成的。

    大學計算機課程

    那我來說,首先是在學校的課程,我現在還記得的課程都有:

    C語言,C++,資料結構與演算法,計算機網路,java,計算機科學導論,計算機組成原理,軟體工程,軟體測試,作業系統,資料探勘等等。

    當然隨著學校的不一樣,課程可能會有變化,但是像資料結構與演算法,計算機網路,C語言這幾個,應該都是有的。

    你可以瞭解下,你和計算機專業差的知識在哪塊,這樣當你想去追趕他們的時候,就會有一個方向。

    計算機專業的訓練方式

    我自己雖然是一個學渣,但是我還是參加過我們院開展的一些有助於學生髮展計算機技術的活動。

    首先接觸到的就是 ACM 協會,當初也是不知道怎麼就加入了,什麼也沒了解,結果就是去了一兩次,就放棄了,最後看來,加入這個協會對學生的幫助是很大的。

    在大一大二的時候,暑期一般都不會有什麼事情,這時候協會就會聚集同學們利用暑假時間來集訓,刷題,提升他們的程式設計、演算法能力。

    現在想起來,如果我能堅持下去,那麼可能我比現在會更好。

    還有就是在大三大四的時候,當學生有了一定的計算機基礎,各個實驗室的老師就開始召集一部分學生,組建一個個實驗室,開始做專案。可以想象,從大三就開始做專案的同學,到了畢業,專案經驗應該是很豐富了。

    我自己是大三快完了的時候才加入了一個老師的實驗室,感覺真的是受益匪淺,實際的做專案經驗,讓我能在畢業之後比沒做過專案的同學,更好的找工作。

    計算機專業同學的創業

    我們學校是有一個專門提供給有想法的同學實現自己想法的基地,各個有自己想法的同學,會聚集一幫志同道合,技術不錯的同學一起做自己的專案。

    雖然大部分都是夭折的,但是這個過程和經歷,會讓他們與眾不同於其他同學的。

    以上是我總結的我們學校計算機專業的一部分,你可能覺得專業課是你和科班程式設計師拉開差距的地方,其實不然。

    在我看來那只是做程式設計師的基本條件,非必要條件,我們學的那麼多知識,是會提高我們知識的廣度,但是我所見的厲害的同學,都會有自己專精的一部分,對於不感興趣或者不熟悉的地方,也會和學渣一樣。

    所以真正我覺得會和非科班拉開差距的地方,是我所說的其他的方面,這些東西,讓計算機專業的同學不僅在學校的時候就能增長經驗,還讓他們瞭解了怎麼去實現自己的夢想,如果當他們技術足夠,想法足夠,那麼,他們會爆發出很強的能量。

    這些是我覺得科班和非科班的區別,但我自己認為,這些東西只是讓兩者的起點不同。

    不要說不公平,既然你想跨專業,那你就應該知道其中的難度。

    當你成功的進入的程式設計師行業,那麼就不要總是覺得不如科班的,要是你跨專業,還比科班的厲害,那麼不是科班的是學渣,就是你是天才。

    說這些不是說非科班就應該比科班的差,我想說的是,差距是肯定有的,但當你追上科班的水平的時候,那時候的你,眼睛裡恐怕只有“比你厲害的程式設計師”和“比你差的程式,而不是“科班”和“非科班”。

    不要給自己打上標籤,你的能量超乎你的想象。

    ^_^

  • 中秋節和大豐收的關聯?
  • 近日有傳言瓜迪奧拉要重回巴薩執教,你怎麼看?