程式設計師接招!關於你的“職業進階指南”

小編是一個多年開發經驗的程式設計師,前端、Java、Python我都懂,如果你在入門學習WEB前端的過程當中缺乏系統的學習教程,或者說缺乏一個交流技術的地方,你可以申請加入我的WEB前端裙:前面二九六,中間二一二,最後五六二。裡面還有我這幾年整理的WEB前端學習手冊,面試題,開發工具,PDF文件教程,你可以自行去下載

現存的一個事實是程式設計師之間的差異其實是非常大的,只有很瞭解程式設計師的人才能完全瞭解這一點,雖然有大多數的高層管理者對所有的程式設計師都一視同仁,還是有企業是把程式設計師當做工具、資源看待,做個頭腦清醒的程式設計師,你的職業生活會更精彩。

程式設計師接招!關於你的“職業進階指南”

程式設計工種

這其實是常用也是比較簡單的方式去理解關於程式設計師這份職業,就是分析他們的程式設計工作可以歸為哪些型別:

客戶端程式設計師

伺服器端程式設計師

資料庫程式設計師

Web 開發人員及其他指令碼編寫者

其實有許多特殊的程式設計師工作其實很難歸類到某種型別。但是總的來說,這 4 種類型就可以覆蓋世界上的絕大多數程式設計師,每一種程式設計師擅長的問題解決方法、使用的工具以及側重的產品方向都不一樣。

1、客戶端程式設計師

大部分程式設計師都屬於客戶端程式設計師。個人電腦 (computer)、移動裝置 (iphone、iPad )等消費電子裝置的出現催生了無數的 “客戶端程式 “ ,所做的包括Office 系列、電子表格處理程式、遊戲APP等等。

客戶端程式設計師的任務範圍通常是有限的,需要交付的產品也是明確的。因此,客戶端程式設計師/團隊的工作職責是會很清晰,除了伺服器端傳來的資料外幾乎不依賴其他東西。

2、伺服器端程式設計師

伺服器端(server)不僅指出了程式所在的位置,還表明編寫程式的目的通常是向遠端客戶端傳輸資訊和資料。

在網際網路時代,構建系統通常離不開各個伺服器系統與程式之間進行介面轉發、資料傳輸與同步的工作。這些都是伺服器端端程式設計師的工作內容。

程式設計師接招!關於你的“職業進階指南”

3、資料庫程式設計師

資料庫程式設計師通常是對終端或應用程式所使用或產生的資料進行組織、儲存和提取工作。現在的大資料工程師可以歸屬於此類。

有個很好的比喻,把資料庫程式設計師比作汽車修理工。你可能隨便找個汽車修理工幫你換輪胎或者雨刮器,但是對於保時捷汽車上的重要問題,你絕對不會讓一個完全不瞭解保時捷的修理工來做,資料庫程式設計師也是如此。阿里在 Oracle 時代就著力培育了很多優秀的 DBA。

4、Web 開發人員及其他指令碼編寫者

不同於其他程式設計師,使用 C、C++、Java 等核心程式設計語言,Web 開發人員通常使用格式化 HTML 語言(如 HTML、CSS)和指令碼解釋語言(如 PHP「全宇宙最好」、JavaScript「一統天下 」)。

這其實意味著只從事 Web 開發的程式設計師雖能夠從正規的計算機科學訓練中收益,但並不依賴正規的計算機專業「科班出身」。

程式設計師的型別

還有另外一種看待程式設計師的方法,我們經常也會遇到,比如經常看到某些程式設計師的簽名是成為架構師。所以從技術知識、實踐經驗和程式設計師的專長去考慮也非常重要:

系統工程師/架構師

系統程式設計師

應用程式設計師

非真正意義上的程式設計師

1、系統工程師/架構師

系統工程師/架構師往往都是最有技術和經驗的。要想理解所有相關的系統元件(作業系統、通訊系統、資料庫、線上/離線訪問、安全性、硬體等等)之間複雜的關係,需要對這些技術和系統有豐富的專業知識和經驗。

2、系統程式設計師

架構師一般都是從系統程式設計師做起的,系統程式設計師負責編寫與硬體互動的裝置驅動程式,建立能夠為裝置驅動執行程式和應用程式執行提供執行環境的作業系統,為其他程式設計師建立編譯器和除錯工具。有點類似民間宗教中的大祭司,元老級人物。

程式設計師接招!關於你的“職業進階指南”

3、應用程式設計師

在專業程式設計師、學生以及自稱為程式設計師的業餘愛好者中,絕大部分屬於應用程式設計師。

應用程式設計師開發的程式包括我們常見的桌面客戶端應用和 App Store 中的軟體和遊戲等。

還有一些應用程式設計師能夠跳出程式碼本身的束縛,從使用者的角度看問題,來把握視覺化、互動式的設計之間的細微差別。這種人比較適合從事使用者介面(UI)開發。

4、非真正意義上的程式設計師

開發團隊中有一些被稱為 “程式設計師” 的技術人員其實並不是真正意義上的程式設計師。

這些 “程式設計師” 與真正的程式設計師之間的主要差別在於:他們使用現有的工具或應用程式,而不是自己直接寫程式碼。

這類 「程式設計師」 有其重要性和價值,但他們的技術深度通常不會太高。而且隨著程式設計工具的出現和日益強大,這樣的程式設計師會越來越多。現在主要從事測試等。

頂部