非專業(yè)自學(xué)編程的人,如何找第一份開發(fā)工作?
非計算機(jī)專業(yè),畢業(yè)兩三年之后才開始自學(xué)編程的人,都是怎么找到第一份編程工作的?
招聘要求中有很多學(xué)歷,專業(yè)和n年工作經(jīng)驗的要求,感覺會很難的樣子。
從零基礎(chǔ)自學(xué)到獲得第一份編程工作又需要大概多久?
我現(xiàn)在在自學(xué).net,想轉(zhuǎn)行做程序員,目標(biāo)很明確,也有興趣,不過迫于生計問題只能邊工作邊業(yè)余時間學(xué)習(xí),問這個問題并不是因為急于求成,而是希望能對未來狀況,這個目標(biāo)的可實施性以及我目前最擔(dān)心的問題:能否順利獲得入行工作的機(jī)會有一個大概的了解。
https://www.zhihu.com/question/25034235
我因為在做線上編程教學(xué),所以接觸過不少轉(zhuǎn)行開發(fā)的人。每個人在學(xué)習(xí)時的起點和狀態(tài)都不一樣,其實沒有一個百分百有效的標(biāo)準(zhǔn)模板,可以讓你按照任務(wù)列表一個個完成就能達(dá)到目標(biāo)。但是,凡是最終成功轉(zhuǎn)行的,我覺得基本都或多或少滿足以下幾點:
1. 自我定位明確
既然想自學(xué)編程,必然不是相關(guān)專業(yè),有很多人學(xué)校牌子也不是很響,加上對現(xiàn)有工作不滿意,于是想轉(zhuǎn)行。但首先你得明確,以上述條件來看,和相關(guān)專業(yè)本科的畢業(yè)生相比,確實存在不可忽略的差距,這個是需要正視的。我曾看過有的人,培訓(xùn)班上了三個月,了解點開發(fā)皮毛,然后找工作不順利,就在論壇上發(fā)帖,說公司招人就知道看學(xué)歷看專業(yè),根本不給機(jī)會。然而,這種牢騷沒有任何實際幫助,只會增加你放棄的借口。
還有的人,目標(biāo)定太高??戳司W(wǎng)上各種機(jī)構(gòu)的招生宣傳說零基礎(chǔ)三個月成為人工智能程序員,就真的覺得離人工智能只差一個培訓(xùn)班的距離。
如果你真的打算轉(zhuǎn)行,正視差距、定下合理目標(biāo),這個是必須的第一步。舉個例子,如果你想做安卓開發(fā),那么你的定位就是一個初級的安卓程序員,從做最簡單的控件開始。
2. 項目為王
之所以很多人會談?wù)撟詫W(xué)編程轉(zhuǎn)行,就是因為這個可能性是存在且不低的。程序開發(fā)是個非??粗貙嵺`的事,學(xué)歷專業(yè)的要求相對來說不那么高。之所以很多公司招聘時會以學(xué)歷專業(yè)作為標(biāo)準(zhǔn),一是大公司出于效率考量(成千上萬人應(yīng)聘,簡歷初篩是必然),二是如果你沒有其他可以證明能力的東西,只能看學(xué)歷專業(yè)。
那么,反過來,如果你沒有學(xué)歷和專業(yè),或者說你要超越那些學(xué)歷和專業(yè)看起來更好的競爭者,你能依靠的只有項目。多做項目,做好項目。我認(rèn)為項目分三級:
初級,學(xué)校課程大作業(yè)級別的,一眼看上去就是練手的項目。用到某些技術(shù),但是不完整,甚至不能體驗。
中級,花時間設(shè)計過項目,功能相對完整,用戶可使用。
高級,正式的項目,可以是外包項目、開源項目、有真實用戶的個人項目。
盡可能是去做高級項目,實在不行也要盡可能有看起來像樣的中級項目。一個功能簡單的高級項目,含金量也高過一堆初級項目。有這樣的項目在手,面試過程也會順利許多,不然你也別怪面試官五分鐘就讓你離開,因為可能實在沒什么可聊的。
另外要注意的一點是,要選擇和你目標(biāo)方向一致的項目。比如你想做安卓開發(fā),然后你的項目全是python爬蟲,那就是為難招聘方了。
3. 重視基礎(chǔ)
開發(fā)技術(shù)經(jīng)過這么多年發(fā)展,已經(jīng)比較傻瓜了:一個經(jīng)過簡單培訓(xùn)的人,也可能通過拖拽控件、加幾行事件處理腳本,就完成一個能運行的程序。但你要明白,僅僅是這樣是達(dá)不到合格開發(fā)標(biāo)準(zhǔn)的。就像學(xué)吉他,硬背幾個和弦,也能彈唱不少歌了,但稍微改一點就做不到,因為你不懂樂理、并沒掌握演奏技能。
所以不要覺得專業(yè)學(xué)生學(xué)的那些計算機(jī)組成原理、操作系統(tǒng)、離散數(shù)學(xué)、數(shù)據(jù)結(jié)構(gòu)與算法、軟件測試、編譯原理等等都是在浪費時間。具體的開發(fā)技術(shù)是決定求職的下限;而這些基礎(chǔ)才是決定你發(fā)展的上限,是否能在開發(fā)這條路走得更遠(yuǎn)。因此,改補的課,遲早得補上。
4. 尋找圈子
不管什么行業(yè),不管學(xué)什么,其實都不存在嚴(yán)格意義的“自學(xué)”。互聯(lián)網(wǎng)上自學(xué)的問題不是缺少信息,而是信息太多了,多到你無法僅通過自己就得到正確的判斷。當(dāng)然你可能通過自己反復(fù)摸索嘗試進(jìn)行區(qū)分,但這個過程就太痛苦了,可能很多人就放棄了。而如果能有一個過來人給一些建議,或許就少走很多彎路。
也許你會說,我身邊沒有相關(guān)人士啊,上哪找?我覺得,網(wǎng)上技術(shù)大牛還是很多的,用心看看別人分享的文章已經(jīng)可以受益不少,如果有明確的問題也可以嘗試去請教,并不是所有人都很高冷。而且退一步說,就像健身,身邊沒有健身教練,但是有幾個一起健身的伙伴,也是好過自己一個人摸索的。
5. 相信長期的回報
大多數(shù)人會犯一個錯誤,就是高估短期的收益,低估長期的收益,尤其在學(xué)習(xí)這件事上。什么21天學(xué)會XXX,本身就是種不好的提法。對于一個零基礎(chǔ),想在業(yè)余時間自學(xué)并轉(zhuǎn)行的人,我一般建議,做好一年以上的心理預(yù)期,這還是在你每天都能抽出一點學(xué)習(xí)時間的前提下。簡單算下:入門基礎(chǔ)3個月、具體方向進(jìn)階3個月、開發(fā)項目半年,你才能拿得出一些能吸引招聘方的貨來。而讓我感到不可思議的是,很多人寧可花幾年的時間在網(wǎng)上追問,有什么快速轉(zhuǎn)行的方法,也不愿埋頭嘗試一下。
不要擔(dān)心時間長,不要擔(dān)心走彎路,只要你開始走了,每一步都不會浪費。而且當(dāng)你走了一陣子回頭看,會發(fā)現(xiàn)進(jìn)步其實比想象中要快。
附兩個轉(zhuǎn)行成功人的案例,之前也在“Crossin的編程教室”公眾號里發(fā)過:
一個是我親自帶的實習(xí)生,畢業(yè)一年后,來我這里邊學(xué)邊做,過了一年被獵頭推薦到其他公司做開發(fā),目前已經(jīng)立足開發(fā)崗位了:
另一個不是身邊的例子,從reddit上翻譯的一篇轉(zhuǎn)行經(jīng)驗,但是里面很多體會說得都是普遍存在的道理:
最后,我提一句個人觀點:如果你想轉(zhuǎn)行開發(fā),我希望你是因為對編程感興趣,而不僅僅是因為工資待遇。編程是件很“挑人”的事,愛它的人樂在其中,而不愛它的人只會覺得枯燥乏味。只是為了一份工作,真的沒必要擠開發(fā)這條船,在各種機(jī)構(gòu)近幾年的推波助瀾下,低端開發(fā)崗位已經(jīng)明顯供大于求了,用個流行的話叫做“內(nèi)卷”很嚴(yán)重!如果你并不熱愛這行,接下來的日子恐怕并不好過。
以上是根據(jù)以往很多案例和經(jīng)驗總結(jié)出的個人觀點,供參考。希望對相似境況的讀者有所幫助。
來源:Crossin的編程教室
推薦閱讀:
八張圖,看懂?dāng)?shù)據(jù)分析如何驅(qū)動決策
2020中國品牌人物,任正非第二,馬云第三,第一名實至名歸!
歡迎關(guān)注微信公眾號:互聯(lián)網(wǎng)全棧架構(gòu),收取更多有價值的信息。
? ?
