內卷大環境之下,萌新程式設計師該如何化解?

不想禿頭的裡裡發表於2021-06-15

隨著網際網路的快速發展,程式設計師在行業內還是比較熱門的,但程式設計師行業是一個競爭激烈的行業,如何在技術不斷更新的情況下長久發展下去?

說實在話,剛開始我進行業的時候,對自己以後的發展也是一頭霧水,讓我有感觸的是這兩年的堅持學習,有自己的學習時間,基於此給新入坑的程式設計師一點建議。主要是給那些萌新的程式設計師,以及想要轉行做程式設計師的朋友們給一些建議。主要是闡述兩個問題以及針對問題提出的建議:

1.要不要做程式設計師?

2.如果你已經做了一個程式設計師,如何從一個萌新進階成為一個合格的打工人?

3.IT技術正確的學習方法

4.避免內卷化

在這裡插入圖片描述


一、要不要做程式設計師

我是2015年本科畢業,大學學的是電腦科學與技術,當時主修的程式語言是Java,剛畢業的時候做個一段時間的軟體工程實習生。後來考研,對Python比較感興趣,所以就學習了Python。那麼到現在為止的話工作不到五年,目前是在一家小廠做後端開發的一些工作。

我也將探討一下作為一個小廠的員工。程式設計師應該如何能夠快速的積累知識和財富。

先來討論第一個問題,那就是要不要做程式設計師?我聽說過這麼一個說法,就是說在當前這個社會,能改變普通人命運的話有這麼幾條路可以走。

第一條路叫敲程式碼,
第二條路叫搞金融,
第三叫在金融界敲程式碼,
第四條路叫在程式碼界搞金融。

仔細分析一下會發現話糙理不糙,其實就兩條路,無非就是敲程式碼和搞金融。我認為這種說法的話雖然有點片面,但是也部分的能反映當前社會的現狀,絕大部分的高薪職位都來自金融業或者IT領域。

其實大多數年輕人都投身到了IT行業,這裡面有本科計算機的科班生,也有那種半路出家的跨界選手。目前程式設計師的人才市場領域可以說是魚龍混雜、參差不齊。

我想說的是在你決定要入行之前,還是要多多考慮一個問題,那就是興趣。

IT行業其實目前來說是一個知識爆炸的領域,基礎迭代非常快。我是寫java出身的,在此時此刻,如果我不去百度的話,我甚至不敢確定目前java的最新版本是版本號是幾點幾,發展到哪一步我都是不敢說的。

你沒有足夠的興趣去驅動你去持續學習,我認為你的落伍和被淘汰就只是一個時間問題。

我大學同班大概是三十個人,到目前為止還在敲程式碼的可能也就剩四成左右。再說說我的程式設計師前同事,目前有開網店的、有做美甲的、有賣電子煙的、有開早餐店的、有做銷售的。

這一行的高壓和淘汰率,還有所謂的三十五歲魔咒在某些方面是真實存在的。所以個人認為,如果想要打破魔咒在程式設計師行業待的時間更長久,祕訣只有興趣。

在這裡插入圖片描述


二、如何從萌新進階

確定要做程式設計師的話,那麼如何可以快速的進步?是選擇深度優先還是廣度優先?

許多萌新在剛入行的時候,就面對目前深不見底的技術站都會有一種感覺,第一是不知道從哪學起,第二是又怕學了就顧此失彼。實際上這就是一個深度優先還是廣度優先的問題,這也是一個如何高效學習的問題。

我在這裡給大家的建議是,如果你是在剛入行的時候呢,大可以去選擇廣度優先,就是先把知識面鋪開,各種技術蜻蜓點水點一遍,用最小的成本讓自己在腦海中構建起來對軟體開發的大局觀和整體的一種認識。

有人就說,那你這樣學出來是不是那種一瓶充滿半瓶子罐油的那種什麼都幹不好?其實也不是這樣,就類比我們上學的時候,小學、初中乃至大學,我們的課程都還是五花八門,均有涉獵的,就是都講一點,但是都講得不深。只有到研究生和博士階段才會選準一個課題,去深度的鑽研。

敲程式碼也是一樣的,就剛入行的時候,我們去優先去拓寬視野,構建這種整體感,先要知道都有些什麼技術,每種技術大體是做什麼的,我認為這是很重要的,隨著我們工作精力的提升,在找準一種到兩種的,你自己感興趣,然後再朝著這個技術去深度的鑽研。

深度和廣度都重要,建議廣度優先,在廣度足夠的時候,也要保持至少一個領域的深度。

在這裡插入圖片描述


三、IT技術正確的學習方法

目前IT行業實在是發展得過於迅猛,新技術層出不窮,老技術又迭代不斷。如果你是一個萌新的程式設計師,你在腦海中還沒有對構建起來一種整體感和大局觀,這種情況下,我認為直接死磕一門技術的話,風險是非常大的。

面對新技術的可以直接去找api的目錄,快速的瞭解這項技術是做什麼的,能解決什麼問題,它的優劣勢在哪就夠了。你把他的目錄印到你的腦海中,在工作中遇到問題,能夠第一時間能想到哪種技術能夠派到用場,至於具體怎麼寫、怎麼用,現學現賣,先百度就可以,沒有必要去把每一行、每一個方法都落實到鍵盤上,會敲才算會用,那樣你可能學的速度都沒有人家技術發展的速度快。

當然不是讓大家理解為所有基礎都是蜻蜓點水,隨便印個目錄在腦海中就可以。

我把程式設計師分為兩派,一派是專業畢業從資料結構開始入門學習的科班生。另一派是直接從專案直接上專案,helloworld開始入門的那種直接速成學的,並不是說後者能力差或者水平低,就是對於後者這種半路出家的程式設計師來說,建議大家在入職成功之後,一定要找機會、找時間,把一些必知必會的基礎知識點補充學習。有以下知識點:

1.常用資料結構實現原理、優劣勢,
2.查詢、插入、刪除的時間操作複雜度
3.常用演算法
4.程式碼規範

專業畢業的學生也是從基礎內容學起,一般是以計算機組成原理、計算機作業系統、計算機編譯原理、資料結構與演算法、計算機網路這幾門課作為基礎開始學習。一方面這些計算機基礎內容是面試必備,另外一方面你想要在程式設計師的領域學的更深入一些,這些計算機基礎內容完全是必須的。
在這裡插入圖片描述


四、避免內卷化

我還想再講一講這個當前的大環境和內卷。說到內卷啊,這個詞可以說是今年的年度熱詞了,IT行業其實也是走在內卷的最前沿。

怎樣才能避免內卷化?我給出以下幾點建議。

第一:關注新技術。IT網際網路行業對於新技術是非常敏感的,掌握新技術也意味著會有更多的發展機會,比如當前可以重點關注一下大資料、區塊鏈、人工智慧等領域的相關技術,掌握這些技術在工業網際網路時代會有一定的發展優勢,也有助於自己逃離內卷。

第二:提升自身的研發能力。對於程式設計師來說,持續提升自身的研發能力是逃離內卷比較現實的辦法,而要想提升自身的研發能力,除了可以在開發崗位上進行積累之外,還可以選擇讀研,當前確實有不少程式設計師會選擇通過讀研來提升自己。按照歷史經驗來看,大部分程式設計師在讀研之後,都獲得了崗位升級。

第三:重視行業知識的積累。程式設計師除了要重視開發技術的提升,還應該重視開發場景的知識積累,也就是所謂的行業知識積累,這一點在工業網際網路時代還是非常重要的,更多的行業知識積累也會明顯延長自己的職業生命週期。

最後的最後,如果你已經成為了程式設計師,或者是立志一定要成為程式設計師,希望大家能夠保持學習,至少以每週為單位,擠出時間來學習,不要安逸的躺在模組開發的大床上昏睡,那樣的話你的價效比只能會越來越低。

在這裡插入圖片描述

相關文章