題外話:我實在看不下去陽陽和柯基這兩個菜雞,代碼寫的一塌糊塗了,因此找了個時間,請他們吃了頓燒烤,給他們講了講數據結構的知識,講的興起就順手就說了一下,一個程序員應該會哪些內容。前端
後來想了想,家裏還有一堆菜雞,乾脆仍是再整理出一張比較簡陋的圖好了。程序員
前言:算法
這是IT修真院自問自答系列第五篇篇,一樣是乾貨和硬廣混雜。IT修真院系列 - 收藏夾,順手推薦一下修真院的專欄,各類IT行業的真實小故事。IT修真院 - 知乎專欄數據庫
我想了想,解釋這些問題,其實比不上講一下我朋友「暗滅大人」的成長經歷,這樣新人們就會對本身將來幾年內的大體走向有了一個對比和期待,方向有了,路也明確了,就看你想在什麼地方停下來了。編程
PS:本文依然是不對任何人負責,觀點依然偏激並且毫不客觀。後端
程序員的級別:程序員只須要分紅三個級別。初級程序員:可以獨立完成一個項目。中級程序員:可以瞭解一些框架的原理,作出一些改進和優化。高級程序員:可以寫一些框架,或者是一個新的語言。設計模式
不論是算法搜索仍是網絡安全或者是某種新的語言原理,能夠自由把框架兩個字替換。安全
這裏不少定義都不嚴謹,可是不要緊了。好比說,項目的代碼質量有好有壞,效率有高有低。可是,大體這麼分,是沒錯的。網絡
因此,根據這三個級別,我畫出來了以上的幾個圖,但願可以給新入門的小菜鳥們指一條路。最少也得知道本身究竟還有多菜。數據結構
不入流的程序員:原本一點都不想把這個級別加上的,可是有太多轉行過來的人,或者是正統院校的科班生會覺得本身學了點多態多線程就已是一個程序員了。。
其實數據結構,算法理論,數據庫,計算機網絡這幾門課很是很是很是重要。重要到什麼程度呢,這是程序員對於一個世界認知的開始,也是基礎,底蘊積累的越好,之後的成就越高。
而後就是所謂的面向對象,或者是函數式編程的語法什麼的。這些東西真的不算啥,會點語法跟會寫代碼徹底是兩個概念。
初級程序員:初級程序員的定義是能夠獨立完成項目。這一個定義就秒殺了大概無數個工程師,不少人工做三年到五年也就是一個初級程序員而已。
能獨立完成項目,就須要懂好多東西了。從業務的角度來講,要懂不少業務邏輯,可以理解而且抽象成模型轉換成代碼,要會測試,要會發布,要會改Bug,要懂版本管理,要知道代碼規範。
還須要懂一些框架和簡單的基本原理。
以及團隊規範和協做的內容。這些東西是不少培訓機構教不了你的,七八流的公司不但教不了你反而會讓你誤入歧途的。
中級程序員:中級程序員就是一個公司裏的骨幹了。小組Leader或者是架構師或者是老油條。眼裏冒着精光頭頂禿了一半的樣子。
他們項目經驗豐富,也須要帶Team,因此須要制訂一些編碼規範,開發流程。有時候嫌棄哪一個框架很差用了,還須要本身改一些源碼。
經過對這些框架的原理都要了解的比較深刻,各類算法和原理了如指掌。不一樣的框架選型和應用場景應該是心知肚明。
固然有一些人並非這樣,喜歡總牛角尖,永遠不知道何時該用什麼事,每每是爲了解決一個簡單的問題引入了一堆複雜的技術最後反而成了專家。
設計模式和架構的東西是必需要懂的,不少時候都已經在考慮的是擴展性和兼容性。怎麼樣把程序和架構作好。
高級程序員:這是比較稀少的物種。世界頂級的程序員才稱得上,衆多開源框架的造物者才配得上高級程序員的名號。
他們對各類底層的協議和原理都比較瞭解,甚至自己就是某種協議的起草者或發起人。我甚至都沒見過這些人。
因此也不用關心這些人怎麼樣了,基本上都不會輪到你。
後記:我沒怎麼分前端後端。想了想大部分都是相通的。其實每個職業須要掌握的技術,我都有整理過初級工程師的技能表。
不過還須要慢慢完善。
另外對於大部分轉行的人來講,找機會把本身的基礎知識補齊,邊工做邊補基礎知識,真心很重要。
============Bye============================
------------------------------------------------------------------------------------------------------------------------
「咱們相信人人均可以成爲一個工程師,如今開始,找個師兄,帶你入門,掌控本身學習的節奏,學習的路上再也不迷茫」。
這裏是技能樹.IT修真院,成千上萬的師兄在這裏找到了本身的學習路線,學習透明化,成長可見化,師兄1對1免費指導。快來與我一塊兒學習吧~
直接點擊此連接註冊學習:http://jnshu.com/login/1/86157900
===============================
「咱們相信人人均可以成爲一個工程師,如今開始,找個師兄,帶你入門,學習的路上再也不迷茫。
這裏是技能樹.IT修真院:http://www.jnshu.com,初學者轉行到互聯網行業的彙集地。"
歡迎加IT交流羣565734203與你們一塊兒討論交流