9年經驗技術總監分享:小白如何入門編程

本人於2010年開始從事WEB領域相關開發崗位,前後從事過ASP#net、PHP、JAVA、前端、項目管理、技術總監等崗位。參與研發重構互聯網產品60多項,領導負責項目12例。職業生涯算是中國互聯網中生代開發者中比較常規的路線選擇:初級工程師>中級工程師>高級工程師>全棧工程師>項目管理>技術團隊管理,曾經也的在A/T等廠子工做過,也完成了基礎的財富積累。整體來講不算成功,但也是實實在在享受到了互聯網和資本帶來的紅利。php

最近受到貿易風波的影響,不少朋友和網友都有向我詢問過如何才能轉行進入互聯網行業發展,而問的最多的就是怎麼才能成爲一名developer(開發者) 從而進入這個看起來很美好的高薪圈子。因此今天我就把我成長經驗和對於要不要成爲開發者的見解梳理總結一下,但願可以幫到屏幕前有一樣想法和疑惑的朋友。前端

爲何選擇想要成爲一名開發工程師?面試

每一位想要踏入這個行業成爲一名開發者的朋友, 必定要問本身這個問題。 爲何想要成爲一名開發者?數據庫

記得在07 08年的時候,大學最熱門的專業是法律、土木、金融、貿易、財會這些方向。選擇計算機科學、軟件開發、信息工程這些專業的同窗算不上是主流。我還記得選專業的時候曾被有一位親戚關切的阻止過, 理由是: " 玩電腦, 開機關機這些還用去大學學習? 仍是跟你表哥一塊兒選土木「 原話大概就是這樣。編程

如今回想起來當時選擇這條道路的緣由有3條:後端

  1. 計算機互聯網很神祕,有不少未知的領域能夠探索,這很酷。讓我很好奇。
  2. 作開發的話應該不須要和別人應酬、喝酒。我討厭酒局和繁瑣的社交
  3. 能夠光明正大的擁有本身的電腦,玩遊戲。(這是真的,那時候不像如今上大學人手一個筆記本。那時候仍是買個臺式機搬去了學校)

這兩年我問過不少想轉行的朋友和網友,大部分人都很坦然的表示只是由於薪資真的很高而已,很乾脆也很純粹,不論你心裏的答案是什麼,必定要有一個明確的目的,而且時刻提醒本身。運維

成爲開發者我能獲得什麼?學習

不知道從何時開始,月薪過萬已經成了一個普通剛畢業的年輕人所追求的目標。debug

1、實實在在的薪資視頻

2010年我剛畢業的時候第一份工做工資是2500元,那時候在老家的地方政府做爲一名體制外的php開發人員。屬於放羊模式,有大量時間去研究新技術本身瞎折騰,也沒人管我。一年以後開始北飄,在後續的幾年裏就是北京 上海來回折騰。2018 年末我忽然發現,算上各類名目,本身的收入比最開始提高了將近20倍。是的,形成這種狀況的緣由除了自身的努力和積累,更可能是由於在15年開始 大量資本涌入互聯網。

2、自我成長的知足感

不少朋友都說他們的工做沒什麼技術含量,隨便來我的學一兩個月就能替代他們的工做,因此常常晚上會象徵性的焦慮一下。作開發徹底不用擔憂,由於有學不完的知識等着你,學到手的別人也無法從你腦子裏偷走不是。在我看來很公平,不須要靠家庭背景,不須要拼關係,也不須要送禮、陪酒、刻意奉承。技術到位了只要不是特別沒情商,基本都能得到和本身付出同樣的回報。每一次自身技術實力的提高都能帶給你正向的反饋,激勵你繼續提高自身實力。

3、可以及時洞察各類新風口

做爲互聯網開發人員,天天都會主動被動的接收到各類最新的互聯網資訊。在這個信息爆炸的年代,你所處的圈子決定了你的信息來源和質量。開發者本身的圈子中充斥着大量的互聯網資訊,你所參與的項目都須要你對其業務和總體流程有必定的瞭解。要是願意觀察和思考你能夠比該業務線上的的大部分普通員工都瞭解他們的業務模式,若是有必定的志向,這些業務模式和行業信息均可以給你以後創業提供參考。

想要學開發我須要具有什麼?

天賦可以決定你的上限,後天的努力決定你的下限。

1、 可以忍受孤獨而且坐得住

作開發是一個須要靜下心來的事情,不論你是學習、coding、思考業務梳理邏輯、debug、review,這些都須要靜下心來長時間的思考和專一的行動。固然,有的朋友說本身就是坐不住,幹什麼都靜不下心來,性格就是這樣,還能作這行嗎?其實也是能夠的,由於能夠經過後天的有意注意的剋制、練習來進行修正和提升的。我小時候老師都說有多動症,也都是本身一點點修正過來的。

2、對計算機/編程/互聯網感興趣

在這些年的經過觀察和總結髮現,圈子裏能真正把這份工做堅持作下來,而且越作越好的朋友,大部份內心深處都是對編程這件事自己有興趣的。固然,尚未接觸和了解這方面的話,興趣也就無從提及,由於興趣是須要對這件事有認知,而後經過一次次的正向反饋積累起來的。剛開始只須要有好奇心就能夠,就是有最基本的求知慾就是能夠的。畢竟正式工做以後若是一點興趣都沒有,那天天都是很是煎熬的,由於實際的業務開發並非一件很是好玩的事情。

3、有一個良好的心態來應對困難

其實學習編程自己並不難,只不過很朋友把這個過程想的過於美好,並無作好心理準備。學習的過程當中會遇到不少的困難和打擊,放平心態去面對它們。由於困難是一時的,辦法總比困難多,可以讓你蛻變成爲大神的也正是這些困難和障礙。後面會列舉幾個最現實也是最多見的困難給各位朋友參考。

學習開發會遇到哪些困難?

只有流過血的手指才能彈奏出世間的絕唱 ---泰戈爾

  1. 學習目標和知識體系的創建 編程領域的分類很是多,從硬件到軟件,從工業到互聯網,從底層語言到高級語言。對於大部分沒有基礎的朋友來講,選擇編程的門類和學習方向是第一步。這裏也是比較推薦新手朋友選擇當今最多見WEB領域開發,其中大概能夠分爲:前端開發、後端開發、自動化運維、數據庫開發這幾類,當中之前端開發最易於上手和學習,選定了方向的同窗也會苦惱於學習資料選擇性太多,不知道如何選擇適合本身的,也沒有太多精力去依次辨別內容和質量,致使在猶豫中消磨了學習熱情。
  2. 學習方法不對 看能看得懂,本身寫就寫不出來。 這個能夠說是不少朋友最頭疼的問題,跟着教學看的時候都能理解,可是本身開始寫代碼的時候就無從下手,致使不少朋友感受本身不是學編程的料,從而放棄。其實這個問題的根本在於練習上。「學習」 是兩部分(學 + 習),有好的視頻指導當然是解決了知識來源的困難,可是如何把知識變成本身的,只有經過結合實際狀況,用豐富的案例和實戰來練習來消化和吸取。因此合理的案例和高強度的練習是很是重要的,甚至比課程視頻要重要。由於只有在實踐的過程當中,你才能真正知道它是誰,它是作什麼的,它怎麼用。學習方法這裏還有不少方面就不擴展來說,我會把聯繫方式放到結尾,歡迎各位朋友找我探討交流。
  3. 遇到問題沒有辦法解決 一杯茶,一包煙,一個bug卡一天。對於職業開發者來講,bug是一個老朋友,雖然會苦惱,但也能夠憑藉本身的技術積累和科學的debug流程進行排查,再不濟也能夠和圈子裏的同事,朋友進行交流。可是對於新手來講既沒有技術積累,也沒有友好的圈子幫助。常常遇到bug就是去百度,可是本身沒有經驗,因此百度的關鍵詞也不許確,最終不少人都會被一個小問題勸退,放棄學習。你若是遇到困難想要尋求幫助,能夠聯繫我或者發私信。
  4. 惰性和現實問題 這應該是最現實的一個問題了,前面3個問題其實找到對應的渠道和方法均可以克服,可是這個問題只能靠本身去面對了。學習編程是一個漫長的過程,中間又有那麼多的障礙和困難,可是我告訴你,只要你認真的堅持下來就已經戰勝了90%的人了。由於每一年學習編程的人有上百萬,但最後堅持下來的甚至不到10%。若是你認爲結果值得付出,那就時刻提醒本身爲什麼選擇這條道路。以前有一位面試者讓我記憶深入,專科畢業學的是酒店管理,畢業後一直在飯店端盤子。電話面試階段發現基本功和技術能力都不錯,我問他爲何選擇成爲一名開發者。「我不想再天天都是吃剩飯,不想和8我的擠在一個15平米的宿舍,不想被別人刁難侮辱。我必須改變,沒有關係沒有背景,學技術是最好的選擇。「 他說的很實在,也能想象爲何他可以如此努力,由於若是有了這種執念,沒有什麼困難能打到他了。

我是海牙,一隻來自北方的鹹魚,但願個人分享可以幫助到你。關注個人公衆號: WEB技術戰線 ,裏面有更多的學習資料、技術資訊,心得分享。

相關文章
相關標籤/搜索