作者:小傅哥
博客:https://bugstack.cn
沉淀、分享、成長,讓自己和他人都能有所收獲!😄
一、簡介
小傅哥,一線互聯網 Java 工程師、架構師,開發過交易、營銷類項目,實現過運營、活動類項目,設計過中間件,組織過系統重構,編寫過技術專利。不僅從事業務系統的開發工作,也經常做一些字節碼插樁類的設計和實現,對架構的設計和落地有豐富的經驗。在熱衷於Java語言的同時,也喜歡研究中繼器、I/O板卡、C#和PHP,是一個技術活躍的折騰者。
13年畢業的我和大多數同期畢業的小伙伴一樣,經歷過;校企合作的培訓
、傳統外包的求職
、平米小屋的蝸居
、工作跳槽的應聘
,以及逐步在互聯網大廠中承擔起 Java 工程師、架構師的職責。這些經歷讓我在技術職業發展中不斷的積累、沉淀和成長,直至目前完成了個人第一本技術書籍的出版。
希望我接下來關於這些經歷和經驗的分享,也能幫助你在求職和職場發展中少走一些彎路,增加一些成長借鑒。
二、大學
給師弟和師妹出出招!
如果我的讀者里有一些在校大學生,或者有你的師弟或者喜歡的師妹在校的話,那么你或者他喜歡編程,但在學習的路上一直沒有找到方向,接下來的這段內容,可能會對你有一些幫助和指導。
大學階段怎么學這突如其來的技術編程,看着課本上的C++已經有點戰戰兢兢,老師講的課程內容不像是傳道更像是勸退,所有別人明明已經可以運行出來的程序,只要自己寫就會出現各種問題。我該從哪下手,怎么下手,老師讓我問不會的,我都不知道哪不會。
可能這就是大多數同學學習編程的經歷,以我過來人的學習經驗來說,這個階段其實會留下一部分有興趣愛好的同學,巧妙的弄走一批學着痛苦的伙伴。這不是因為誰聰明、誰數學好、誰英語強導致的結果,而是堅持學習和本身的興趣喜好導致。
就像我們新買回來一個自行車,那么是拆了看看輪子怎么卸下來更優雅還是騎上走幾圈浪一浪呢。當然你肯定知道要走起來,讓自行車在自己的屁股下奔跑奔跑,感受下沙際春風卷物華,意行聊復到君家。
所以呢,剛接觸來的編程,最重要的是先把代碼跑起來,把遇到的bug、問題、異常,藍屏不算,那你得換電腦了,這些都一一解決掉。好,現在已經度過第一個階段,就是學會了怎么Ctrl+C、Ctrl+V,把別人的代碼復制過來,運行運行。接下來就是需要大量的編寫階段,要多大量呢,以我的經驗來看,整個大學敲了不下20萬行代碼,畢業找工作真的太容易了。
20萬行代碼很多?其實在你學習的階段這些代碼量並不多,尤其是你寫的各種屬性、方法、調用、展示,以及在學習編程過程中需要熟練掌握的API、不同功能的方法片段,就像求個水仙花、兔子生兔子、楊輝三角等等,都是你在初學編程階段的下手菜。那么這個階段就是學習編程的蓄力階段,主要是對編程技術的基礎的夯實,以及多學習與數學相關的內容,比如;數據結構、算法邏輯,這些知識對將來在技術上的提升和造詣都是非常好的基石。
當你能堅持做一件事就把一件事做好,事事,事必躬親、親力親為,想以后“為所欲為”都有可能。
三、培訓
你願意參加培訓嗎?
我參加過,參加過校企合作的就業培訓、參加過入職前期的崗前培訓,還有一次是在校期間大學聘請的外部有開發經驗的工程師培訓,似乎只有最開始的這次培訓是讓我收獲最大的,后面的幾次培訓不斷的重復Java基礎,可能這樣的課程對於連續幾次都沒有入門Java的同學是有幫助的,但對於很大一部分想提升技術的同學來講,還是有些浪費時間的。
通過這樣的經歷想給大家表達的是培訓,不一定好或者不好,如果是在校期間就能參加一些培訓,那么還是非常能提升個人學習的能力的,也能開拓對技術的認知和視野范圍。但如果因為剛一畢業就找不到工作,報名去參加Java培訓來說,處於這個畢業需要就業階段去參加培訓就會顯得非常匆忙,也會有不小的壓力。因為你需要為培訓還需要花家里一筆不小的費用而感覺慚愧,也因為有同期班里其他同學找到一份不錯的工作而失衡。
其實講道理,大學四年有足夠的時間讓你學會編程,也能從一個較長時間的學習中,知道自己適合不適合做程序員。就像我的同學里雖然都是計算機或者軟件工程專業,但畢業后並沒有都從事軟件開發工作,或者從事了一段時間發現並不適合這個行業而選擇到其他領域發展。
所以如果你是真的喜歡編程,那么在這個行業里工作你會很開心,如果不是那么往后路還長,你所要面對的晉升
、加薪
、跳槽
都可能成為一道道障礙。目前可能你還是新人不了解自己是否喜歡編程開發,那么可以在以后的學習中體會,自己是否願意為一個運行結果調來調去,輾轉不寐的研究分析,只為最后那一個運行通過而激動!
那就究竟怎么學才能在畢業就能找到一份工作,而不需要再額外培訓?
如果把這個“究竟”,用一個數量單位來度量的話,那就是在大學期間完成20萬行代碼的開發。20萬行多不?如果從大一開始每天完成200行代碼的開發,一個月算6000行,一年算6萬行,3年就有18萬行,在大學畢業前夕找工作時,你將成為同學眼里的面霸。因為有這20萬行代碼的學習,基本你已經成為了一個初級研發工程師的水平。
可能有人想,都工作十幾年了也沒寫到10萬行吧!這200行代碼能寫完沒,有意義嗎?
其實對於一個在大學階段上學求識的人來說,在編程的學習過程中,你要嘗試開發各種書本、視頻、資料中關於Java里API的使用,哪怕是一個現在看來很簡單的 List 使用,可能對於初學編程的你來說都是巨大的障礙,所有的這些基礎知識認認真真的學完,你都將要寫下龐大數量的代碼。
那些我們難以言表、不作聲響、暗自發力的日子,其實並不是我們想要的生活,而是通往我們想要的生活的路上。
四、就業
我經歷過兩家公司的實習,你呢?
12年冬,校企合作培訓后,我面試上了國家科技和中軟國際的管培生,最終選擇了月薪7k的中軟。也就是因為這個選擇,有意思的經歷就此發生。
面試完中軟國際,口頭offer溝通完畢后,久久不發正式錄用通知,也不能去實習。電話溝通后說是需要等到13年4月,具體時間待定。咋辦?我又不能一直在北京租着房子啃饅頭吧!沒辦法就又出去面試,找了一家中科軟進去實習,直到13年4月中旬,接到了中軟的同時,“來參加,崗前培訓”,好,又是一次培訓。
待培訓結束后,終於正式的到公司里開始工作,但又出了點小狀況,我一個Java開發,入職的到公司的崗位竟然是C#,還需要倒騰中繼器、IO板卡、PLC、攝像頭等,就這樣我增加了許多其他的技能。好在當時遇到的第一任領導,非常贊,帶着我學會了很多很多,否則可能很早就跑路了!
五、跳槽
2015年8月25日,我跳槽去大廠做Java了!
其實講到跳槽,可能是每個程序員職業發展的必經之路,你積累了多久、沉淀了多少都將會為下一份工作做好鋪墊。
對於我之所以跳槽最大的原因就是想從傳統行業去互聯網看看,也不太想寫C#了,畢竟我從大學開始到經過到幾次培訓都是寫Java語言,對於C#語言來說並沒有那么大的熱情。為了不拋棄Java語言的學習,在第一家公司期間,還把很多公司里用C#寫的項目,拿去用Java重新寫一遍,只為了學習Java語言。
后來因為在第一家公司需要做一款數據采集的軟件,正好把 Java 和 Netty 叨叨給領導了,領導也是非常支持,去搞吧!正式因為有了這次技術實踐驗證的經歷,在后來面試互聯網大廠時,會Netty還是挺加分的。
就這樣從一個似乎是外包、傳統的行業里,跳槽了互聯網大廠開始做Java開發,一做就是5年多。往往對於跳槽來說,選擇一個你喜歡的行業、喜歡的技術,還是會做出很多自己想做的東西的,也能得到滿足於自己那種快樂的成長。
六、副業
"副業",我是一個多能折騰的人?
開過移動售電話卡的小店、做過淘寶賣數據線、接過私活做網站、線上給人講課賺錢、也做過一段時間的技術論壇。但無一例外這些事情並沒有做的長久,有因為跳槽搬家黃的、有因為業余時間不足沒的、有因為沒有用戶流量掛的,總歸都一一而去了!
所有這些折騰的過的事情,雖然並沒有賺多少錢,可這樣一份份的經歷卻讓我也摸索到了應該適合我的路,那就是做長期價值沉淀的事情。這需要找一個自己擅長的方向,有可持續輸出的內容,與自己的工作內容貼近,能讓自己沉淀也能幫助他人。
所以從2019年7月開始,我參與到技術號主這條路上了,用了整整將近兩年的時間積累了全平台近8萬粉絲才慢慢做的“人盡皆知
”,說人盡皆知是誇張了,哈哈哈,但現在你去搜小傅哥
、搜重學Java設計模式
、搜字節碼編程
、搜面經手冊
等等,都會看到的我的身影。當然並不是我的技術有多牛,只是我希望在不斷的沉淀積累中可以把每個屬於我認知范圍的技術內容全部輸出出來,至少這樣可以提升自己也可以幫助屬於這個階段的技術同好。
但目前這個副業並沒有賺多少錢,因為沒有接任何一條廣告。當然我不反對技術號主適量的接廣告,畢竟做技術輸出也是非常耗費時間和經歷的,我用了近兩年的時間才走到這個圈子里,也深深的知道每一個技術號主的辛苦。就像你是否想過,你要放棄幾乎全年的周末和假期,也可能需要家人承擔更多的情況下,讓你有空閑的完整時間去思考、編寫、設計、發布你要做的文章和內容呢?你看到的每一篇長文配圖、萬字技術文,只要是原創都至少要在3-4個小時思考、68個小時輸出、12個小時發布,也就是說一個周末的時間就全部投放到這項熱愛的事情上了!
之所以我現在並沒有去接更大廣告收入,主要是因為我對公眾號的技術輸出主要是因為我對技術內容極大的興趣愛好,而我公眾號和博客的運營成本,包括:域名、服務器、圖庫VIP等,都是靠較長假期寫一些付費的技術專欄
、整理的PDF
和贊賞收回
這些費用。不過從21年情況有所好轉,還可以少賺一些錢。早期的粉絲知道,以前小傅哥都是靠薅羊毛養活粉絲的!
所以對我來說,技術沉淀是具有長期價值的副業
,我也更希望用技術輸出來養活自己!
七、出書
2021年4月23日,圖書節,我的第一本書
《重學Java設計模式》
正式在京東發售。
出書是我個人在技術成長路上的一次打卡,我就想走走沒走過的路
,爬爬沒爬過的山
,看看風雨后的彩虹是否有別人說的那般絢爛
。
2020年07月12日,小傅哥的《重學Java設計模式》PDF版在公眾號首發,但沒想到那天起這本設計模式徹底火了,火成什么個鬼樣子呢,幾乎全網的號主都不知情的情況下被廣告主投放過 “字節跳動總結的設計模式 PDF 火了,完整版開放下載!”
- 那3個月這本書我提供的鏈接全網下載量一度突破30萬次,不能統計到的還有很多!
- 公眾號一天能漲粉600個+
- 每天都有人問小傅哥,你是不是字節跳動的
- 百度搜小傅哥竟然給我加了熱詞“小傅哥的設計模式”
- GitHub 設計模式對應的代碼庫持續霸榜 GitHub Trending
- 可能就是從那段時間起,很多人知道了我,雖然當時不太喜歡被這樣宣傳,但也就這樣莫名其妙的火了
也是從火了那段時間開始,每天都有出版社編輯聯系,要不要出書,最開始並沒有心動,也覺得自己文筆不好,還很多錯字。
之所以后來上車了是因為遇到了宋亞東,給我介紹、給我講解、給我分析,好吧!在20年10月1日放假起,我開始重新整理設計模式稿件,重新整理文章、收集粉絲反饋、繪制技術圖稿,一點點的完成所有內容並添加新的章節,於11月左右交給出版社,接下來的路漫漫長….
一本書的出版要選題、交稿、審稿、之后是一遍遍的改稿、審核、改稿、審核,終於感覺要完事了又開始了三審三校,說要過不了就不成功便成仁!好在是一周左右時間通過了,接下來又申請書號、出版印刷、晾干、裝訂,嗯多久呢,從提交編輯到上架京東商城,用了7個月時間,在加上我的編輯創建時間,這本書耗時一年半出版了!
其實出版一本書並不會特別難,而且也不會膨脹。出書只是個人成長努力路線上的一次結果印證,但不是最終的目標,我們可以用自己長期積累的個人能力完成更多自己想做的事情。
八、總結
👣心懷天下,聲色犬“碼”。生有熱烈,藏與俗常。
有時候真的很感謝自己還能堅持做原創技術輸出,即使再忙再累也給自己一個當下的交代,在寫文章的過程中幾乎沒有過周末這樣大塊時間,也沒有過小長假期。但每當自己完成每一篇文章后,那份給自己的努力下的沉淀,也傳播給其他人知識,都能讓我樂以忘憂。
所有的努力都是因為:能力,是你前行的最大保障。哪怕你是兢兢業業的工作者,也要擁有能留下的本事和跳出去的能力,才能在相對頻繁的變化和不確定中獲利。
好,祝大家在以后的路上,都能:所求皆如願
,所行化坦途
。承遇着朝霞
,刻印着風華
!