大數據之路:非科班、零基礎、轉行大數據開發

文章略長,重點較多,建議收藏。

一、筆者背景

1、本科階段
專業自動化,主要學習C語言、嵌入式、硬件等,拿過電設、飛思卡爾等國獎,沒刷過算法、對軟件幾乎零基礎
2、研究生階段
碩士985,控制專業,研一開始,從零基礎學習了Java基礎、算法、大數據框架等。
3、收穫offer
春招實習拿到了螞蟻金服、拼多多、華爲(終端)、遠景能源、華泰證券(Java)等。
在這裏插入圖片描述

二、我爲什麼轉行大數據開發

1、大家都選擇Java開發,那我有什麼優勢?

當我決定轉行時,身邊的同學幾乎都是Java,但是我想走一個與衆不同的路線,當時可以選擇算法或者大數據開發,感覺算法崗應該是神仙打架,而且一堆公式看不懂,所以最終選擇了大數據開發,因爲這個崗位既要學Java基礎,也要學大數據框架,雖然學的比較多,但是,就算大數據學的不理想,也可以直接轉向Java開發崗,兩手準備,最後事實證明,我選擇大數據開發是對的,當然中間也經歷了痛苦和迷茫,差點放棄。

2、未來的職業規劃
如果做Java的話,每天可能是針對不同的業務CURD,這樣感覺好無聊啊,於是,希望做一些有挑戰性的工作,比如組件優化、中間件、流計算、大數據存儲等工作,所以,希望未來工作是少一些業務、多一些技術,這樣可以幫助我技術提升和積累,未來技術路線走的更加長遠。
3、未來是DATA時代
網上很多人說:互聯網的後半程應該是數據時代,誰掌握數據,誰就能創造價值。我暫且相信了這句話,數據時代需要什麼技術人才呢?數據可靠存儲、數據計算、數據挖掘等等,感覺大數據開發還是有未來的。

三、學習計劃與過程

在這裏插入圖片描述

1、第一階段:深入Java體系
(1)Java語法基礎:跟着畢向東老師的視頻敲了一遍,看了《Java核心技術卷I》和《Java編程思想》這兩本書,剛開始看編程思想是有點難度的,不懂的地方標記出來,後面學了一段時間,回過頭再看,這樣的話,Java的語法基礎基本過關;
(2)數據庫:看了《MySQL必知必會》,學會了sql語法,刷了幾十到牛客上SQL題目,最後看了《MySQL技術內幕:InnoDB 存儲引擎》中的索引部分(有點難),數據庫基本過關;
(3)JVM和併發:開始學習《深入理解java虛擬機》、《Java高併發程序設計》這兩本書,剛開始看,真心不知道再講什麼,但當後面學了多了,看了一些源碼後,再看就明白了,前期看不懂是正常的;
(4)計算機基礎:畢竟非科班,需要看的挺多的,看了《現代操作系統》、《圖解TCP/IP》,重點掌握了一些關於內存、IO、TCP/IP、HTTP等方面的知識;
(5)Linux部分:看了《鳥哥Linux私房菜:基礎篇》,然後自己裝個Linux,練習指令操作,多多總結常見指令。
(6)緩存:看了《Redis設計與實現》 和《Redis深度歷險》兩本書,緩存基本過關;
(7)源碼:推薦學習Java集合和併發包的部分源碼,面試必問;
(8)架構:推薦看下《大型網站技術架構》,擴展自己的知識廣度。
2、分水嶺第二階段:需要選擇是Java後端還是大數據開發了
Java後端方向:要開始學習Spring框架那一套了,並做一個後端的項目,深入理解數據庫、緩存、併發、spring底層等原理,在項目中體現這些基礎,面試時可以表現出你學習的深度,不只是會用。
大數據開發方向:開始學習hadoop全家桶、spark、storm等流計算,下面第3點重點講述。
3、第三階段:深入大數據體系
(1)入門:個人感覺視頻入門最快,我看了一個關於大數據組件的介紹、安裝和使用的視頻課程,瞭解了大數據中各個組件是幹嘛的,視頻需要的話,聯繫我。
(2)Hadoop原理:先後看了《Hadoop權威指南》、《Hadoop技術內幕:Yarn》、《HBase權威指南》,掌握了hadoop中的Mapreduce、YARN、HBASE、HDFS、Hive的基本原理;
(3)流計算:先後看了《Spark大數據處理技術》、《Storm分佈式實時計算模式》和Flink官網介紹,分析了三者的優點和缺點,學了他們的計算調度原理、容錯機制、語義等方面;
(4)分佈式協議:主要學了《從paxos到zookeeper分佈式一致性協議》 這本書,並根據網上博客學習Raft協議,將這些協議進行總結,並對zk進行深入學習;
(5)深入源碼:我選擇深入的是HDFS源碼,結合《Hadoop 2.X HDFS源碼剖析》書籍,看了大概3個月左右,中途看到懷疑人生,甚至想放棄大數據了,還好堅持了下來。也可以選擇其他源碼,只要是用Java寫的就好。
(6)消息隊列:這個對於Java後端的同學也是需要的,我主要學習時Kafka,根據網上總結一些常見面試題,看了官網的介紹,基本可以應付面試;
4、第四階段:簡歷、算法與項目
這些點,根據自己情況進行發揮,後面單獨寫個文章講解。
我自己大概花了2個月,完成了一個大數據項目,博客裏面有:項目地址

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章