非科班出身程式設計師比較容易缺乏哪些技能?用什麼方法彌補比較好?

時間 2021-05-12 11:51:12

1樓:

非科班,年薪30萬美金,兩年經驗,955,在家辦公比較缺乏身體鍛鍊。大家都是聰明人,什麼都比較簡單,比讀博輕鬆多了。。。

2樓:刺客

我開始是找大專的計算機系的教材目錄,對著學。為何大專,因為怕本科學不懂。事實證明確實好入門,直接學本科可能就投降了。

比較容易缺乏資料結構與演算法,作業系統等相關的。另外還有數學。當然有的專業可能數學也教的多。

我大學沒學過線性代數,這對我目前學3D 有很大的阻礙。我用了很久才有了3D空間感,矩陣,四元數等等也是費了很大力才有了一點數學和3D方面的理解。

彌補就是缺啥看啥。硬著頭皮學唄。

3樓:

先不要有什麼科班出身的優越感,也不要有什麼非科班出身的自卑感(暫且用這個詞來形容吧),大學本科學了些咱們心裡都清楚。老老實實在圖書館啃知識的,我相信那是少數,我見過很多所謂科班的最後都去放牛了也不是沒有。所以,在這裡還說些門閥官僚正統的言論的話,還是不要說了。

知乎應該是乙個高質量為題主答疑解惑的,幫助別人才是主旋律,不是開辯論會的地方。

進入正題,大學本科不是計算機相關專業從事了軟體行業,無非是大學期間沒有系統的去學習相關的知識而已。知識在那裡,只要你有興趣,資質不是太差(我相信一般人的是沒有問題),就可以融會貫通。大學時候,我們學校的軟體工程開設的課程如下,我覺得可以循序漸進依次系統學習:

C語言程式設計、數位電路與數字邏輯、資料結構、作業系統、資料庫原理、計算機網路原理、網路協議分析與程式設計、計算機組成原理、編譯原理等

我覺得編譯原理很重要,相關課程可以找一些權威的書籍學習,說實話學校用的一些教材真的不怎麼樣。這裡我就不列書單了~

4樓:

茴字的四種寫法,不然通不過面試。

認真的:

頭兩年看出身,後幾年拼經驗。

科班在學校學的好,基礎紮實有優勢,可是畢業後沒人填鴨沒人引導就拼自學能力了。自學能力是否科班是沒有區別的。

5樓:

本科的知識還是比較淺的。如果非科班從大學起搞的話應該不會比科班的差。畢業後再轉的話,大學四年的時間,也要花時間才能補上的。數學之類也不是只有計算機才開。

6樓:聖歧視

重點在人而不是出身。跟科班關係沒多大,對自己有要求的人,即便半路出家也會去研究這些東西,缺筷子補筷子,缺碗補碗,難度肯定要比在學校高一些,但並不是做不了

7樓:

對於通訊+數電出身的我

我覺得我最欠缺的是對於 C++ 這類高階程式語言的掌握對於 HDL 彙編 C 我都能感到我能控制每乙個細節但是再往上我就力不從心了感覺心裡沒底

就像我對於模擬電路中經驗公式的感覺一樣

另乙個欠缺的是演算法設計畢竟沒有在科班系統學習過

8樓:小紅

電腦上不去網,A解釋說電腦找不到伺服器的位址,B解釋說DNS壞了。

非科班的看看考研基礎課會好一些,腦子裡形成個計算機的體系。

9樓:

Engineering/工程的部分後來都可以補,做多些專案,多看點書多思考,科班非科班差別沒有太多。

Science/科學的部分就比較難了,工作以後又很難有時間去補那些基礎,於是就有差距。

好在大多數科班出身的人做工程了之後可能自己也忘了,而且大多數的工程專案也不需要很高深的CS中的Science部分。只是有時候和一些牛人一不小心的交流中才會發現這個差距。

10樓:

沒差, 只有適合與不適合之分.

有的科班出身的人一樣不適合做程式設計師, 於是那些人要麼轉行, 要麼墊底了.

私以為搞程式開發最大的要求就是興趣~當年擺在我面前的兩條路, 一條是研發月薪2500, 一條是測試月薪4500. 我用腳想了一下, 毅然決然的踏上了研發之路~

奮鬥至今, 我現在掌握的東西基本上都是自學的. 包括我正在做專案所用到的語言.

最後也是最重要的一點, 邏輯能力....私以為跟智商有點關係, 吾從不認為所有人的聰明程度都一樣, 邏輯能力高的人在寫程式的時候得心應手, 演算法信手拈來. 學得也快.

這是天分問題.. 當然不排除一些苦大仇深的通過瘋狂後天訓練,量變來產生質變, 但那種就像碰撞演算法, 很累...而且最終會變成測試.

11樓:

無論什麼非科班都有兩個特點:

沒有基礎,沒有引導,只能摸索,摸對門了只要努力就行,摸錯了怎麼努力都完蛋;

能看到很多科班出身看不到的很多陋習、偏見。

12樓:白喬

一般非科班的,會熱衷於動手技能,理論上會掌握的少一些!而且在初始階段會看不上理論知識!但這些知識還是早點補上比較好,包括演算法、資料結構、計算機原理、資料庫、編譯原理什麼的。

因人而異,我也是非科班(機械製造專業)出身:) 但自認為基本演算法和資料結構當年還算是掌握的可以的

13樓:阮亞平

1.數學功底,數理邏輯、集合論、抽象代數、計算複雜性和可計算性等非科班一般不會去學,對一些領域的深入有影響。

2.自動機、編譯原理這一條線,自學基本上比較難。好在大部分工作中用的不多。

3.體系架構、資料結構、作業系統、組合語言等基礎,這些通過努力加上工作中逐漸磨礪,非科班可以達到同等水平。

14樓:「已登出」

個人比較認可 @Milo Yip的答案。

我自己高中畢業後做銷售,後來做coder,現在在一家中型網際網路公司做基層Leader,面過很多科班出身(大部分都是211、985畢業,公司要求比較高)的coder,這一方面還是比較有感觸的。

先說說一定會缺乏的技能:

0. Algorithm、Math

1. Data Structure

線性、樹狀等結構

2. 編譯原理

3. 計算機結構體系

這一點在底層以及基礎系統、中介軟體開發方面比較重要。

4. 編碼能力

大學裡面寫過10萬行C/C++的人,在編碼功底上確實優勢很大。反應到工作就是,開發效率以及Bug數量。

個人是我結合自己以及公司成員(大部分來自BAT、網易等公司)的出來的。

彌補措施:

0. 這個不好說,我在這一塊進度比較緩慢, @Milo Yip的方法應該不錯,也是我想實踐的。

1. 相關資料一本,用C實現大部分結構,應該問題不大,我就是這麼做的。現在基本上常用的都不會有問題,且很清晰每乙個結構的優劣以及內部實現。

2. 不知道

3.讀過一本書《深入理解計算機系統》,可以補上不少知識。

4.大量的寫吧

個人的一點經驗,僅供參考。

Ps:感覺Coder對軟性能力要求更高,比如系統設計,解決問題能力等等。

15樓:

於你來說,最缺乏的是自信。科班寧有種乎?彌補方法就是真誠的提問+勤奮。不了解你實際情況的人給你推薦一堆書,然後你…?身邊了解你的人中總會有你最好的老師。

16樓:

技能不一定會缺,考慮問題的深度和廣度可能會稍有遜色。

可以通過大量閱讀電腦科學和數學的著作來彌補。

對於勤於思考的程式設計師或許都可以腦補

17樓:李遙

但凡你能在學校裡學到的本科級別(甚至可以說碩士研究生級別)的知識,總能找到公開的教材、書籍、學術資料自己去學,或者最不濟花點錢託人幫你影印到。對於計算機、數學這類對實驗裝置要求很低的學科尤其是這樣。所以我看不出科班不科班有什麼區別,全在於你自我要求到什麼程度

18樓:Milo Yip

以我來說,程式設計和計算機架構主要是中學時自學的,而演算法在大學裡上過兩門課。但我的本科是認知科學,缺少了一些電腦科學必修課,例如編譯原理。另外,數學比較不足,所以近兩年自修一些抽象代數、拓撲、微分幾何等,將來準備再學一些微分方程和數值分析。

現在也有很多公開課,只要英文可以,是一種很好的進修途徑。

19樓:

和科班出身且認真讀書的人相比,4年不至於,但至少是少了那2,3年的時光。此外,在入行的初始階段,在計算機基礎(如對底層硬體工作原理上的了解,紮實的C基礎,大量演算法實現的練習)和多樣性(Linux的使用,對程式語言本質上的認識等)上有不小差距。

20樓:

補充濤吳書單:

Computer Systems: A Programmer's Perspective

Modern Operating Systems冒號課堂

另外最好學一門指令碼包括但不限於bash/perl/python因為計算機相關的課程,科班出身基本都學過,但是自學過指令碼語言的人才是真正愛這行的人

非科班出身前端程式設計師怎麼系統的補基礎?

正常途徑就是看書,只有書上的東西才是最系統最基礎的.但是看書有個弊端,就是看完就忘.或者說太枯燥看不進去.如果這樣還有個比較功利的辦法,刷面試題.找一套最全的面試寶典,但不是簡單的去背,而是一題一題的去研究.大多數面試題不可能只涉及乙個知識點,你掰開揉碎往深挖都會牽扯出其他知識點,而且越挖越底層.直...

科班出身程式設計師和培訓出來的程式設計師區別在哪?

蝸牛學院 魯迅說 世上本沒有路,走的人多了,也便成了路。而IT培訓原本也不那麼火,來的人多了,也就火了。常規理解上來看,我們所說的大學 教育 指的是掌握一般性原理與技巧的過程 而我們所說的 培訓 更像是一種集訓,一種學會某種特定技能的過程。從結果定位來說,IT培訓機構屬於職業化教育,更注重實操,上課...

培訓機構培養的程式設計師和科班出身的程式設計師,到底有何不同?

蝸牛學院IT教育 魯迅說 世上本沒有路,走的人多了,也便成了路。而IT培訓原本也不那麼火,來的人多了,也就火了。常規理解上來看,我們所說的大學 教育 指的是掌握一般性原理與技巧的過程 而我們所說的 培訓 更像是一種集訓,一種學會某種特定技能的過程。從結果定位來說,IT培訓機構屬於職業化教育,更注重實...