常常有讀者問我:我不是科班出身,我工作經驗不夠豐富,新知識無法實踐,面試的時候怎么快速證明自己的能力......
該怎么辦?
以上問題我和很多同行都聊過,自己親身也經歷過,今天和大家分享下我的體會。
非科班出身,怎么證明自己的實力?
實話實說,在找工作方面,非科班出身不太占優(yōu)勢,我之前也和很多非科班出身的朋友聊過這個事,建議都是讓他(她)想辦法證明自己的能力,證明自己比科班出身的還專業(yè),可能你要說:說起來輕松,怎么證明自己的能力呢?尤其是對于一些剛剛畢業(yè),缺乏工作經驗的學生,或者是在參加面試時,短時間內,怎么樣能未雨綢繆,快速證明自己的能力?一口吃不成一個大胖子,任何能力都不是靠一天兩天就能迅速提升的,但是很多“功夫”我們平時就可以練起來了。
可以自己寫一些有深度的技術博客 利用業(yè)余時間做個凸顯深度的產品 在GitHub上提交過高質量代碼
現(xiàn)有技術太陳舊,怎么學習新技術?
在我們平時工作經歷中,好像已經很少有公司在用很陳舊的技術做開發(fā)了,這無異于自己給自己挖坑添堵,不過這幾年和讀者交流,我發(fā)現(xiàn)現(xiàn)實中還真有不少這種公司,原因我們也不深究了,比如C語言、MFC、C++98。我以前也參與過一個項目,使用的就是純C,甚至都不是C++,前前后后大概兩年時間(╥﹏╥)。這種情況那就只能自學C++啦,我接觸到的C++項目,現(xiàn)在一般都是C++14,少數會用C++17,我們可以先學到C++14,然后再慢慢擴展,其實C++20是個大變革,我更傾向于后面的項目用20甚至是Rust。
工作內容沒有挑戰(zhàn)性,應該換工作嗎?
項目迭代過程中,工作內容看似一成不變,逐漸失去挑戰(zhàn),其實這才是常態(tài)啊!畢竟需求開發(fā)只是一小方面,項目上線后,做好bug修復和性能優(yōu)化才能真正體現(xiàn)程序員的水平,很多公司都看重程序員參與的項目是否已經上線,是否穩(wěn)定,以及解決線上問題的方法論。遇到這種情況,如果暫時找不到新機會,可以再待一段時間觀望下,但是如果超過3年還是沒機會接觸新項目,那就換一家吧。
剩下的是具體的問題:
學習內容側重點
先C++,再操作系統(tǒng),再編譯與鏈接
圖和紅黑樹這種普通工作過程中基本用不到的知識點可以先不看,用處不大。重點還是C++和操作系統(tǒng)。
路線的話,可以先《C++Primer》,還有個《C++11技術實踐》之類的書也建議看看,忘記具體叫啥名了,再《Effective C++》,再《STL源碼分析》,源碼分析這本書挺重要,慢慢看,一點點理解肯定可以看懂的,不懂就問。
新技術實踐與證明
自己做個小項目吧,用C++14寫核心邏輯,然后用QT做界面,這種可以放在簡歷里,最好有源碼給面試官看,可以證明自己的能力。
職業(yè)生涯幾十年,這才剛剛開始,我們要時刻有根弦繃著,讓自己每天進步一點點,長期積累下來進步肯定很大的,我也堅持每天在學習,共同進步。
這里有 一個優(yōu)質的C++學習圈 等你加入,來一起鉆研C++吧。