*目前的程序員總數大概為800萬;而科班出身,即本科或研究生是計算機專業的程序員大概為40萬。也就是說:外行人不僅能轉行做程序員,而且現在從業的大多數程序員都并非科班出身。科迅教育下面帶大家詳細了解一下。
具體能從事的崗位大概有:
一、開發工程師
包括:前端開發工程師、后端開發工程師、算法工程師、移動開發工程師、軟件開發工程師、嵌入式開發工程師等。
不嚴謹的說法是:前端是用戶看得見的,比如瀏覽器的圖片、文字;后端是用戶看不見的,比如后臺數據。前端開發工程師是寫代碼給瀏覽器看的。后端開發工程師是寫代碼給服務器看的。
算法(Algorithm)是指解題方案的準確而完整的描述,是一系列解決問題的清晰指令,算法代表著用系統的方法描述解決問題的策略機制。
一個不恰當的比方,算法工程師就像是科學家,做完研究之后把研究結果交付給后端開發工程師應用。這個崗位對數學和邏輯思維能力有很高的要求。
移動開發工程師跟前端開發工程師類似,移動開發工也稱為手機開發,或叫做移動互聯網開發。是指以手機、PDA、UMPC 等便攜終端為基礎,進行相應的開發工作。
軟件開發工程師一般指從事軟件開發職業的人。軟件工程師跟一般程序員的分別,在于一個程序員的工作是按照指定的規格進行編碼,而軟件工程師的工作則需要設計和規劃。
嵌入式開發是指在嵌入式操作系統下進行開發,包括在系統化設計指導下的硬件和軟件以及綜合研發。
二、技術管理者
包括:主管、經理、技術總監、CTO等。
技術管理者都來源于一線,每7~10個技術人員中有一個技術管理崗位。
對于一線技術人員來說,有了3-5年經驗之后轉管理是一個比較好的契機。
三、架構師&復合開發工程師
包括:前端架構師、后端架構師、全棧(前端+后端)、后端+算法等復合開發工程師。
架構師跟普通開發工程師的區別是:開發工程師做的是一線的工作,而架構師更多的情況是作為技術儲備,類似的角色。他們不是把系統架構搭建好之后就沒事了,普通技術人員解決不了的疑難雜癥都會交給架構師解決。
架構師比管理者數量更少,通常5~6技術崗位中配備一個,小公司里面多由CTO或經理兼任,大公司會有專門的架構師,底下不帶人。
四、測試開發工程師
測試:查找軟件缺陷;開發:開發工具、平臺系統。
厲害的測試開發工程師既能測試又能開發。因為互聯網時代不像從前軟件刻盤賣的時候,需要把產品測試得非常完善才推出,而是可以在線快速修復bug,迭代版本。
五、運維工程師
負責日常維護,確保整個服務的高可用性,同時不斷優化系統架構提升部署效率、優化資源利用率提高整體的ROI。
簡單來說就是業務長期穩定運行(如網站、游戲的服務器),同時數據安全可靠(如用戶名密碼、數據)。
六、DBA(數據庫管理員)
一般意義上的數據庫管理員是一個負責管理和維護數據庫服務器的人,數據庫管理員負責全面管理和控制數據庫系統,包括數據庫的安裝、監控、備份、恢復等基本工作。
那么前端和后端工程師適不適合新手轉行呢?其實,轉行初級的前端或后端工程師,你所做的動作是使用一個普通的框架,學大眾化的技術,理論上不需要英語基礎都可以學會的。
如果一個技術,市場上只有少于30%的公司在使用,那么建議不要學習它。因為學完之后當你找工作時,一百家公司里面只有二三十家公司可以選擇,對于轉行的人來說很難。而如果學的技術市場上有30%以上公司都在使用,那么它肯定有中文的文檔和論壇,那么不需要會英文也能學習。
所以,對于想轉行做程序員的伙伴來說,可以先轉行成為前端工程師,再逐步提高自己的英文水平和學習后端或算法工程師的知識。
科迅教育講師全程面授的高品質教學模式,以實踐來驅動教學,助力學員掌握過硬技能和提升實際運用經驗!