Java程式設計師的薪資提不上去是與技術能力相關還是不懂市場需求?

weixin_34321977發表於2018-03-29

前言

本文主要包括以下內容:

分析目前程式設計師狀況,瞭解市場,分析自我;

如何更快速有效率的學習一項技術;

如何提高學習及自己解決問題的能力;

市場上的薪資等級及需要的匹配能力;

如何有效合理的管理自己的知識;

如何給自己的職業做規劃。

分析目前程式設計師狀況,瞭解市場,分析自我

隨著目前培訓機構越來越多,現在程式設計師也越來越多,很多人在培訓之後只是掌握了當時學習的一些硬技能,沒有獲取真正有用的軟技能,導致很多時候只是在吃培訓時候的那點老底,另外可能就是想學習什麼但是感覺很迷茫,不知道該學什麼,學習效率也跟不上,在這裡我分享給大家我自己的一些見解,希望對大家有所幫助,能夠幫助到大家是我的榮幸,下邊先對我們目前很多人存在的問題說明一下。

不想學或不敢學

其實對於做到高效學習,就是在解決三個問題:想學(讓自己真正投入學習),學什麼(特別對於身入職場的人,沒人指引沒人督促的情況下,更是不知道該學什麼提高自己),怎麼學(學習方法問題);如果讀者你已經在讀本文,就說明“想學”的問題基本解決了,但是對於不敢學估計還是有的,什麼是不敢學,其實大家想想自己是不是有這樣一個問題,你看書的時候是不是很多時候看了一部分,那本書的後半部分就再也沒動過,或者看到很厚的一本書就不想看,其實如果你仔細想想是什麼導致你看不下去的,其實多數是恐懼感,對於怎麼解決這個問題請看後邊第二大點。

不知道學什麼

在這裡提到的不是說你真的不知道學什麼,而是在整個學習體系下應該對自己的學習有合理的安排和規劃,對於自己是不是做到了知道學什麼,其實你可以問自己幾個問題就知道了:

(1)你有沒有一個階段性的計劃,例如近3個月、半年或一年內的一個學習計劃。

(2)如果前一條符合,那麼計劃的安排夠不夠細化,是否能具體到每天的任務。

(3)如果前兩個符合,那麼你能否按照計劃進行學習,學習的過程是否感覺特別吃力,正常情況應該是有所收穫,而又不感覺很吃力。如果前幾條不符合,那麼就說明你對自己學什麼還不是很清楚;如果前幾條都符合,那麼我個人感覺你的學習效率不會很差,下邊就是怎麼學的問題了。

沒有養成好的學習習慣

其實我感覺在職場中多數人無法繼續學習成長的原因多數是前兩點沒有做到,因為每個人都有自己的學習習慣,即便是沒有特別好的學習習慣,成長也在慢慢積累,總有量變到質變的飛躍。對於學習習慣,在下邊我會分享一些對大家有所幫助的通用學習習慣。

如何更快速有效率的學習一項技術

對於如何更快速有效的學習,其實主要是在解決上述問題。下邊向大家介紹一下,如何解決和克服上述問題。

消除你的恐懼感

其實這種恐懼感來源於我們之前所受的教育導致的,從小學到初中直至高中,我們都在壓抑中學習,受到老師或家長的期待,我們都處於一種強迫自己不得不學的狀態,而很少處於一種渴望心態主動鑽研的去學習,長久下來我們學的想吐,也對學習這個詞產生了不好的定位。其實我想說的是首先在心態上要擺正,學習其實就跟吃飯一樣,我們餓了就想吃飯,吃飯可以填報肚子,其實學習就是我們感覺自己某方面還不是很完善,通過看那些在這個方面已經做的很好的人,發現,哦~~~,是這樣啊,進而完善自己。是不是寫的有點跑題了,哈哈~,還是寫在這兒吧。

對於上邊說的那種看書過程遇到的問題,這點是針對技術類書籍,對於技術類的書籍看不下去有兩點:

(1)這本書難度係數太高,不適合你目前階段看。對於這樣的情況,可以有相匹配知識之後再看。

(2)心態不好,看到有不會的就死磕,一次又一次的,磕到自己沒有了興趣和動力。對於這種情況,需要你放寬心態,要有遇到問題掛起來的心態,因為你需要知道在後續的學習過程中你會慢慢有新的體會,後知後覺,看完一遍後再回過頭來看你之前不理解有問題的地方,你也許就理解了,而且就算不理解,在你對這項技術不斷學習和實踐的過程中慢慢之前不理解的地方會越來越少,有一個放鬆的心態很重要。

你的學習真的很有計劃嗎?

其實有很多人的問題出在第二點,給自己定製計劃的過程要做如下幾點的衡量。

(1)是否在學習區學習

美國人 Noel Tichy 提出一個理論,他將我們想學習的事物的等級分為:舒適區,學習區和恐慌區。

舒適區:學習的內容基本都是我們已經掌握的內容,沒有難度,如果學習處於該區域我們的能力基本沒有提高。

學習區:學習的內容有部分(基本比例在60%-80%,其實說到底是自身的一種感覺)是我們之前已經掌握的,但是還有一部分內容是我們新接觸到的,有一定的挑戰性,但是又不至於讓我們太難受,這樣的學習過程會給我們帶來成長和能力的提高。

恐慌區:學習的內容有大部分對自己來說是新的,只有少部分或極少部分是自己之前沒有接觸過的,這樣在學習的過程中就會感覺越來越難於接受,最終導致我們的學習無法進行下去,甚至挫敗我們的自信心,進而影響我們之後的計劃進行。

其實上一點提到的因難度係數過高看書無法看下去的原因就是在恐慌區學習的情況,而在學習區學習的過程中也會有問題有挑戰,這個時候需要我們先將問題掛起來,這樣不至於影響自己繼續學習下去。

(2)是否是階梯式學習

有這樣一句話:會的不難,難的不會。其實這句話的意思就是,對於學習這件小事,沒有難這一說,難的原因是不會,就是說,你感覺難是因為你目前還不具備條件,看下圖:

11065982-e355bc88e65819d1

你學習感覺困難,是因為你企圖直接從 A 跳到 C 上去,我不是說這樣不可以,如果你具備足夠的耐力和毅力,是可以的,不過,如果你從 A,到 B 再到 C,會感覺輕鬆,而且效率沒準也會高一些。

(3)是否為滾動式學習

對於滾動式學習是指,學習過程需要重複,不要企圖一次性將一項知識掌握,而且我相信一般情況我們也掌握不了,因為我們不是那種過目不忘的神人,至少我不是,所以重複是需要的,重複不一定是將之前的知識重新再看一遍,其實重複最好的方式是換另一個資料再看一遍,這樣可以避免資訊源孤立造成知識盲點。按照理論、實踐、再理論、再實踐的過程重複進行。

(4)每天任務是否具體

定製計劃要做到顆粒化,如果你的計劃細化到月,你的拖延症可能導致你延遲一月完成,具體到周,可能導致你延遲一週完成,具體到天,可能導致你延遲一天完成。所以說任務要具體,具體到天,這樣可以使你的學習更加目標化,更加視覺化。在這裡說明一下,任務要根據自身條件合理安排,也允許安排休息,要注意,休息其實也是自己任務的一部分。

有效通用的學習習慣

這裡分享一些我自己的一些學習習慣。

(1)學會構建知識網路

其實知識點和知識點之間是有關係的,構建一個好的知識網就不容易將知識遺忘遺漏,其實知識網我們都有,只是要看它結不結實了,舉個例子,當我們提到“成都”時,我們能想到成都這個地方,也可以想到這首歌曲,也可能想到趙雷,根據趙雷我們可能想到關於趙雷的一系列歌曲等等,這些都是掛在“成都”之上的資訊點,而後續的資訊又是新的節點,在新的節點上又有新的資訊點,所以說知識網是存在的,只是要看你的網是不是夠密夠結實。在這裡推薦大家在學習過一項技術之後,使用思維導圖整理自己的知識,讓知識融入到自己的整個知識網路中,首先可以在該項技術內構建網路,之後再往外擴充套件,把這個小的網路編織到自己已有的大網中。

下面是結合我自身學習經驗總結的知識網路圖:

11065982-be3d7b64670416b2
11065982-a49d6efe5e7385ad
11065982-8d5a9390cdbe6e83
11065982-0ab0965afb9b7c10
11065982-9d3dea056215a99a

對上圖中的技術知識體系感興趣的朋友可以加下群:826775302。

(2)實踐、實踐再實踐

理論實踐不分家,這一點很重要,一定要實踐,對於我們們程式設計師,要特別注意動手實現能力,這一點不多說,很普通又很重要的一點。

(3)寫隨筆寫總結

學過的知識要落地,寫隨筆和寫總結是一個方法,有這樣一個道理就是,感覺自己會了其實不一定會了,真正能講出來能給不懂的人講明白才算真正理解了,寫總結的過程其實就是自己在整理自己思路再學習以及整理自己知識網的過程。通過這種方式會發現自己哪裡明白了,哪裡只是感覺明白了。

如何提高學習及自己解決問題的能力

這一點主要是因為自己在工作中發現有這樣一個問題,就是有很多人遇到問題後,自己還沒好好想想就求助於別人,或者有問題總是感覺無從下手。

有問題才有成長

我們很多時候對待問題的態度是怕,其實我感覺這樣並不利於我們的成長,就是說,如果我們的經歷都是一帆風順的,那麼我們真的就無法從中獲取成長的機會,所以說我希望大家能首先在這一點上首先克服自己的心理障礙,首先我們應該在心理上戰勝問題,這樣才能更有效的解決問題。

透過 Debug 看問題解決思路

首先我說明一點,Debug 是一項很重要的解決問題的能力,如果我們還做不到通過目前知識去定位問題,那麼這將是一項很重要的技能;下面再說一下,我們透過 Debug 可以看到什麼,其實很多時候是我們從上學期間學到的技能,舉個一些常見的解決問題的思路:排除法,對比法,順藤摸瓜,找依賴等,說到底就是我們遇到一個問題,首先想想會是什麼情況導致這個問題,然後逐個排除或排查,最終找到問題的根源,如果確實還是無法解決那麼可以通過下一項。

學會百度

你可能會說,百度大家都會,我們一直都在用百度,但是其實我們應該可以發現,百度只是一個工具,每個人有每個人的用法,你會發現每個人的用法很多時候真的是不一樣,問幾個人可以測試一下:怎麼只搜尋 PPT 文件,怎麼在結果中搜尋不帶某個關鍵詞的詞條,怎麼搜尋近期文件,有沒有辦法檢視已經失效的網頁,開啟網頁一篇文章你需要看多長時間或通過什麼方式去判斷是不是自己需要的答案等等,這些問題只是做一個測試,如果有些你不知道或者你還做的不夠好可以在這方面提升一下,如果已經做的很好了,可以看下一條。

英文能力

這一點希望大家試著練習去讀一些英文的文件,有些問題在你現有的條件下如果無法解決,就真的需要你去看英文的文件,這一點能力的提升,可以在你需要的時候幫住到你。

市場上的薪資等級及需要的匹配能力

市場上我們在找工作的過程中需要合理評估自己的能力找到適合自己的工作,評估高了可能導致自己無法勝任工作,評估低了對於我們的發展也會受到影響,下面對基本薪資水平和需要的能力進行分析一下,宣告一下,分析只代表個人看法,對於不同型別的公司可能有誤,望理解。

低於10K:基本算是初入 Java 行業,有基本的 Java 基礎能力,瞭解一些市場上常用的前端和後臺框架,有少量的專案經歷就可以。

10K-15K:對 Java 思想有基本的理解,深入瞭解過 Java 基礎的一些實現原理,市場上流行的框架要做到熟練,對框架的核心要知道其實現原理,會基本的設計模式設計思想,掌握幾項市場上常用的中介軟體(不在於是什麼,但是要有幾項做到會用並瞭解基本原理的程度)。

16K-20K:有熟練的 Java 開發能力,能夠解決團隊中的一些疑難問題,框架應用能力要強,能夠將 Java 核心的物件導向思想應用到專案整體開發過程中,利用常用的設計模式組織基礎程式碼。

21K-25K:在之前專案開發過程中帶領過團隊開發,在團隊中擔任主力角色,協助專案經理做一些公共元件開發,有過大型專案的整體開發,思想不侷限於基本程式碼實現,更多考慮系統整體架構,這就要求用過或學習過多種相同功能框架的不同實現,並且能分辨其中各自優缺點,能為系統設計提供好的技術選型方案。

目前就給出這些,個人能力有限,只能給出這些了,如果沒能解決你的問題,可以單獨跟我聊,謝謝!

如何有效合理的管理自己的知識

我們的知識大概分為:精通的、熟練的、瞭解的、知道的、不知道的幾大類,精通的一般就是我們的生存技能,熟練的一部分歸在我們的行業範圍之內,瞭解的部分是我們只知道皮毛卻沒有進行深入瞭解的知識,知道的部分在我們印象中只是一個概念,不知道的部分還處在我們知識體系之外。對於這幾大方面,我們應該怎麼處理才能更有效的凸顯自己呢。

做 T 型人才

T 的構成由上邊的一橫和下邊的一豎構成,對於上邊的一橫,我們把它看成我們的知識橫向範圍,對於下邊的一豎,我們把它看成我們的專業技能,我們即要把橫體現出來也要把這一豎體現出來,對於橫向的部分,我們需要擴充我們不知道的部分,就是要想辦法去擴充自己不知道的知識,有效的方式有:多跟人交流,刷知乎等。對於縱向的專業技能,我們要想辦法把我們熟練的知識轉化為我們精通的知識,這個過程需要我們進行反覆的練習才能實現。

學會知識遷移

目前網際網路資訊爆炸的時代,對於我們軟體行業資訊量更是大,我們不可能將所有的資訊都存放在我們的大腦中,這時候我們就要學會知識遷移,將一部分知識儲存起來,解放我們的大腦,具體就是我們應該將我們的知識有效合理的儲存起來,我們可以通過如下方式實現:將我們學習的系統化的知識歸類整理,之後我們可以寫成部落格,文件,釋出在網上,我們要做的就是儲存知識的索引(就是記下來我們把那個知識點放在了什麼位置),等我們需要的時候調出來查詢即可。

融入新知識

我們有時候總會有種錯覺,就是我們是對的,如果真的可以將我們的知識體系擺出來看,我們真的就不敢再這麼想了,因為我們每個人都會有錯誤的認知,所以我們需要將我們的知識擺出來,讓大眾看到,讓大眾去點評我們的對錯,這樣做我們有時候真的可以發現自己之前錯誤的認知,並且可以吸收很多新的知識進來。具體就是我們需要多去回答別人提出的問題,將自己的知識公佈出來,從而有效的獲得來自眾人對自己知識看法的反饋,這樣做可以有效優化自己的知識結構。

如何給自己的職業做規劃

對於職業規劃這方面,相信很多人都是迷茫的,其實很多時候迷茫來自於未來的不確定性,都說35歲時程式設計師的年齡危機,我們都不確定我們30歲的時候到底能達到什麼樣的水平,所以我們都在迷茫於未來的發展,對於職業規劃這方面,我給出如下的一些建議。

眼光放長遠

如果眼光侷限在眼前就會有很多事我們看不清楚,也就是說如果我們以我們目前的實力去看未來10年後的自己,肯定會有很多的問題存在,但是我們忽略一點就是我們有時間啊,我們可以利用這時間提升自己的專業技能,到10年後我們如果做的不錯,就算拿壞的結果我們幹不了開發,也會有其他的崗位需要我們這一身的技能,即便拿再壞的情況來說我們真的找不到工作,我相信我們這10年的積累(技術、思想、認知)肯定能給我們找到一個不會很差的選擇。

學會抱團

現在這個時代不再是單打獨鬥的時代,真的是一個1+1>2的時代,其實通過上邊的那麼多講解你也應該明白,一個人是不完整的,團隊才是完整的,什麼意思,就是在現在這個講究效率的時代,你就是再牛逼,牛逼的人真的很多,真不缺你,但是你再想想缺一個牛逼的團隊又是一種什麼概念,這樣你就應該明白了,在團隊中你可以比單獨一個人存活的更長久。Java架構技術交流群:454377428文章中的技術體系在群裡可以免費下載。

學會經營自己

就是要學會用自己已有的錢爭取更多來經營自己,我們都喜歡談身價,其實身價都是需要經營的,我們應該在年輕的時候多提高自己,經營自己的方式有很多:例如我們可以專注於做一件事一直做下去,時間長了我們就是這個行業的專家,這就是我們的資本;再比如說,我們可以多拓寬自己的交際圈,認識的人多了我們就是資訊的中轉站這也是我們的資本,很多時候我們總在否定很多東西,比如我們會說“什麼積累人脈的,不就是有錢嘛”等等,其實根本原因真的是我們不懂堅持,什麼東西有真的不難,但是要有了一定的量,那真的是一件了不起的事,很恐怖的。

相關文章