銀河國際開戶電話18669187779序員的前景並非一片黑暗

銀河國際怎麼登陸_V18669187779發表於2020-11-14

是這樣的,一片灰暗,超級灰暗,伸手不見五指,抬頭不見蒼天的那種。

但是,這裡的程式設計師是指那些隨便學了一兩個月技術,專案都沒做過一個就想來拿高薪的人,結果拿著跟學之前差不多的工資,每天敲寫老程式碼上網搬輪子然後坐著等加薪等升職,等提車買房,最後沒有如願於是上知乎吐槽。

為了與他們區分開,其他那些認認真真學習技術,打磨了四五年的人他們不叫程式設計師,隨便叫什麼,工程師,技術人,技術專家,技術經理都行,反正和上面那部分人分開。他們的前景一片光明,自由女神像的光輝照亮了他們,讓他們做一個月兼職的收入都比程式設計師高,阿門。

不然知乎三天兩頭就來這樣的問題,一驚一乍的,搞得我覺得自己再怎麼學技術、再怎麼緊跟技術前線都升職加薪無望;搞得後來的大學生們還沒入行就被勸退了一大批,公司還有這麼多崗位缺人怎麼辦?

什麼樣的前景能叫做一片灰暗? 當你捧著電腦科學與技術專業的碩士學位證書,工資卻比不上其他專業本科畢業生,而且還比別人工作累,難升職少加薪的時候,這前景就真的是一片灰暗了。

然而實際上,2019年,IT行業薪酬水平穩居榜首,年平均工資為161352元;排在第二的是科學技術,為133459元;排在第三的是金融,為131405元。

再看看下面這張圖,更直觀了,有70%的程式設計師薪酬在十萬以上。

中國程式設計師的前景並非一片黑暗,教你如何擁有光明的前程 這都前景灰暗,那其他行業豈不是......

我已經想不出詞語來形容那種慘狀了。

如何做一個前景光明的程式設計師? 學技術、學技術、學技術,還是學技術。

程式設計師這個行業是不是吃青春飯我不確定,但一定是靠技術吃飯的。很多人帶著勞動密集型的思維來做技術密集型的事情。

體力勞動的附加價值能有多高?

而且程式設計師這個行業的出現真的拯救了很多不擅長混職場、不願意與人打交道的人,只要你能解決問題,哪怕你不說話,你的老闆也照樣給你加薪。

因為他怕你「不小心」寫了一堆bug,怕你跳槽。

但這一切都是建立在你的「無可替代性」上的,如果你只會敲敲基礎程式碼,搬搬輪子,百度一下,那你就很容易被替代,你沒有底氣沒有籌碼談待遇,因為這些工作是體力活而不是腦力活,而程式設計師應該是建築師而不是搬運工。

如何提升自己? 有兩個大方向:

提升廣度 鑽研深度 如果你選擇第一個方向,那就可以嘗試做一名全棧工程師,而所謂全棧工程師是指掌握多種技能,勝任前端與後端,能利用多種技能獨立完成產品的人。

朝這個方向發展,不需要你每個方向的技術都學得多麼深入,每一種語言掌握80%左右即可。你可能解決不了很多高深的技術難題,但你可以一個人解決前後端大部分的問題。而且因為對開發工作全域性的瞭解都很熟悉,是離專案經理最近的開發人員。

而如果你選擇第二個方向,就要求你將某個技術領域的某一門或兩門程式語言學習透徹,要做到這個技術領域上的所有問題到你這裡都能得到解決。而常見的技術領域包括前端、後端、移動端、iOS開發等傳統領域,還有近幾年興起的人工智慧、大資料分析、物聯網等。

講完了方向再來說說方法,包含以下兩個方面:

學什麼 怎麼學 學什麼?

學適合你所選方向的程式語言。受限於篇幅,我將對2020年最熱門的十大程式語言的優劣及適用領域分析,放在了下面這篇文章裡,有需要的朋友可以點開看看。

最熱門的十種程式語言,總有一種適合你

中國程式設計師的前景並非一片黑暗,教你如何擁有光明的前程 怎麼學?

這裡給大家分享一下我自己的學習思路:

學習基礎知識 鞏固基礎知識 其中學習基礎知識,又有兩點要注意的:找對方向、用對方法。說的更直白一點就是學什麼以及怎麼學。

學習內容 首先要將基礎打牢固,最基本的演算法和資料結構一定要滾瓜爛熟,我當時是要求自己拿起來就能用。

比如下面這些個演算法和資料結構型別我是硬逼著自己啃下來的,很多兼職的時候沒用上,但是後來迴歸工作的時候用上了。

10個演算法:遞迴、排序、二分查詢、搜尋、雜湊演算法、貪心演算法、分治演算法、回溯演算法、動態規劃、字串匹配演算法。

10個資料結構:陣列、連結串列、棧、佇列、雜湊表、二叉樹、堆、跳錶、圖、Trie 樹;

不要小瞧了這小小二十組詞,展開了去學,怎麼都得花你個一年半載,例如單單排序演算法就又可以分為以下十種:

中國程式設計師的前景並非一片黑暗,教你如何擁有光明的前程 然後,當將這些基礎知識吃透了之後,注意是吃透,我給自己定的要求是用到的時候就能直接用而不是回去再翻書。做到這一點之後,我就接著去學習一些更深入的內容:

比如:

程式設計框架是如何運轉起來並輸出“Hello World”的? 如何讓自己更正規,更有章法地使用Mysql呢? Key、List、Hash、Set、ScoreSet各自的使用場景有何不同? 主流的程式設計框架都和設計模式相關,那他們有沒有共通性? 當我把這些問題想清楚了的時候,我發現之前的很多問題都難不倒我了。

學習方法 每個人的學習方法都不一樣,有的人喜歡邊做專案邊學習,有的人則喜歡學一段時間做一個專案,有的人喜歡看書學,有的人喜歡看視訊學,這些都不是問題,重要的是找到適合你自己的。

但下面這幾點,最好還是不要去做了,因為這些坑這些痛我都已經經歷過了,頭髮也掉過了,結果事倍功半慘不忍睹。

1.一味的對著別人的程式碼去敲。

剛開始不會做只有跟著別人敲,這沒有關係。但是跟著別人敲了之後一定要自己理解自己記憶把它變成自己的東西。照著別人程式碼敲一遍兩遍哪怕三遍,除了讓我看得仔細點,除了打字外沒有其它任何幫助。哦,對了,還多掉了幾根頭髮。

所以要記住模仿復現不是關鍵,思考才是關鍵。要能做到思考學習別人思路後,脫離書本和部落格,完全自己實現功能。當我做到這點之後,我發現我的學習才是有效的。

  1. 想著一口氣吃成個胖子

我剛剛說過了,自己是因為專案做不出來才回過頭來學習的,所以剛開始急於求成,學習只學個大概只求個會用,沒有做到知其然還知其所以然。

但是技術這玩意兒,不是看了個大概能照著做就會了,一口氣真的吃不成個胖子,必須得紮紮實實地把事情做好。所以不要試圖一次性解決所有問題,這裡給個親測有效的建議:可以將每天的學習過程拆分成小塊,分階段學習,這樣的效率會更高些。

說完了第一點如何學習基礎知識,接下來再說說說說第二點如何鞏固基礎知識。方法千千萬,我也試過不少,但最有效的我認為還是刷題,有方法的刷題。

下面這個刷題方法很普通但也很實用,推薦給你:

第一遍:可以先思考,之後看參考答案刷,結合其他人的題解刷。思考、總結並掌握本題的型別,思考方式,最優題解。

第二遍:先思考,回憶最優解法,並與之前自己寫過的解答作比對,總結問題和方法。

第三遍:提升刷題速度,拿出一個題,就能夠知道其考察重點,解題方法,在短時間內寫出解答。

然後給大家推薦我當時看的兩本書還有一些學習網站,能夠讓大家學得更輕鬆些。

書:

《程式碼大全》激發你的思維並幫助您構建高品質的程式碼。 《程式設計師修煉之道》全面闡釋了軟體開發的許多不同方面的最佳實踐和重大陷阱。 網站:

1GitHub — 開發者最最最重要的網站:https://github.com,能學習但不只是學習。 W3school — 最適合新手的網站:https://www.w3school.com.cn/:免費而且全面。 實驗樓 — 一個線上程式設計學習網站: https://www.shiyanlou.com/courses/,很方便實用。 Code School — 一個英文學習網站:https://www.pluralsight.com/codeschool,支援分階段挑戰。 最後一步肯定還是要落在實操的,我的方法是接兼職專案、一個接著一個,因為要供著自己旅行。但其實還有兩種方法也能提升自己:

1.做一些實操性強的個人專案,自己練練手

田納西大學助理教授奧斯汀·亨利結合自身經驗,給出了一份“程式設計師都應該嘗試的挑戰性專案”清單,包含下面六個專案,我在那之後做了一遍覺得還不錯,推薦給大家:

文字編輯器

2D遊戲-太空侵略者 編譯器-Tiny BASIC 迷你作業系統 電子表格 電子遊戲機模擬器 每一個專案都存在不同的挑戰,比如文字編輯器就要求在不使用GUI框架中內建的文字框元件的情況下,搭建支援游標移動、選擇、插入和刪除操作的文字框並將文字文件儲存在記憶體中。

如果你能解決掉這些專案中的這些問題,然後把專案獨立完整的做出來並且執行成功,你的能力肯定能再上一個臺階。

2.寫技術文章

大家想必都知道費曼技巧,這也是其中的一種應用了,把你自己弄懂的東西教給別人,讓別人也能看懂,在這個過程中你肯定還是要把一個完整的專案給做出來的,一整套下來,你會將自己理解的東西掌握的更透徹更深入。

也算是一種不錯的實操方式了,能讓你的基礎更加牢固。

只是要記住,在這個不斷做不斷輸出的過程中,做到下面這三點很重要:

讓程式設計成為一種習慣。 學練結合,從做專案中找知識漏洞。 思考更深層次,更底端的東西。 最後,如果你也想通過兼職來讓自己的程式設計能力突飛猛進,下面這篇文章推薦給你,因為做兼職太容易被坑了。裡面有我總結的兼職三接四不接,也就是說哪些兼職不會被坑,而哪些兼職要格外注意。還有一些國內外的兼職平臺以及他們的一些特點,希望能對你有所幫助:

相關文章