日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

程序员,与工程师的区别在哪里? (3)

發布時間:2025/3/15 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 程序员,与工程师的区别在哪里? (3) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這里不是從人力資源的崗位定義層面來探討這兩者的區別,而是要從廣義的概念和能力上看兩者的差距、補短板,讓“程序員”們開闊眼界、擴展知識、更上一層樓。先和大家分享一個我在培訓過程中的小插曲,在一次以程序員為主的分析與設計培訓會上,我向學員們提了這樣的問題:
□問:認為工程師的能力比程序員高一級的請舉手,大家都舉了手。
□問:認為自己是程序員的舉左手,認為自己是工程師的舉右手,結果大多數人舉了左手,只有3個人舉了右手。
□問:你們3人認為自己是工程師,請說明什么是工程、什么是工程師?程序員與工程師的區別是什么?結果這3個人馬上就改為舉左手了(全場大笑)。

這個小插曲說明了什么呢?首先是“程序員”與“工程師”的定義不清,其次,大家缺乏對自己的信心。關于稱呼,在不同的軟件公司中對寫代碼的人有稱為“開發工程師”的、也有稱為“程序員”的。這里暫定對“工程師(開發工程師的簡稱)”的要求高于“程序員”,提出幾點對這兩者的認知以及理想的工程師應該具有什么能力的參考意見。

一、兩者的相同點
都能熟練地寫代碼,這是他們的相同之處。

二、兩者的不同點

1. 工程師(理想、期望)
□理解何謂軟件“工程”,知道完成軟件的過程、交付物、標準等;
□能夠從“系統、關聯”的視角看研發對象,能從整體、架構上理解;
□遇到問題,會尋找解決問題的“共同方法”,比如抽提、梳理、建模;
□善于分析、并能夠“用設計圖說話”,用圖形表達意圖、邏輯;

2. 程序員(現狀、不足)
□不理解何謂軟件“工程”、也不清楚開發的過程,只知道與自己相關部分的內容;
□更容易從“代碼、程序”的視角看研發對象,多從細節入手、思考;
□遇到問題,立即去尋找“具體做法”,比如上網查、復制;
□不善于做分析、用設計圖表達自己的意圖,缺乏邏輯意識,只會“用代碼說話”;

三、兩者不同點的分析

大致可以從下面三個視角看出來工程師優于程序員(不限于此):工程視角、系統視角、邏輯視角

1.工程視角
工程師理解軟件實現過程的不同階段、每個階段需要的理論、方法、工具、交付物以及標準等。

2.系統視角
工程師研究對象時能夠做到從整體到細節、由上到下、由粗到細,觀察對象是按照從“系統→模塊→功能→控件→程序”的順序,具有綜合多方面知識的能力(包括客戶業務層面、軟件技術層面)。

3.邏輯視角
工程師在研究課題時,可以通過分析、設計表達出自己的意圖,具有很強的邏輯思考、邏輯表達的能力。

四、如何快速成長為工程師

明確了這些差距后,程序員該如何做才能快速地達到理想工程師的水平呢?除去靠個人的努力學習、花費時間積累以外,我還想向軟件企業提一個建議:大學畢業生進入軟件公司后的第一件工作不是寫代碼,而是去做需求調研的“學徒”,體驗一次從需求調研到設計的全過程,這個過程可以幫助新學員理解什么是“工程、系統”,軟件開發的依據是如何得到的,工程的每個階段需要做什么,同時可以掌握一定的分析與設計方法。根據參與項目的規模不同,這個過程可能要花費2~3個月或更多一些時間,但這將會在未來大大縮短新入職者從“程序員→工程師”的距離和時間,早日成為公司的業務骨干。

■如果入職初期沒有花費這個時間去對他們做啟蒙,沒有培養他們這個意識,很有可能過了5年甚至是10年之后,發現他們還站在“程序員”的原處,沒有走向“工程師”的位置。

■如果入職后立即著手寫代碼的學員,可能長期處于對自己參與的開發內容“知其然,不知其所以然”的狀態,所以長期都是做“小工”的。如果預先參與過了需求調研、分析和設計的學員,進入開發工作后則可以做到“知其然,也知其所以然”。不同對待的新入職學員工作一段時間后就會發生質的區別,后者成長得會更快。

從事建筑設計、制造設計的大學畢業生進入公司后的第一步是先下到工地/車間去實習,實習一段時間后再進入到設計崗位工作,通過實習看到了全生產過程,使得他們更加理解了什么是工程、系統的概念,這個過程的體驗成果加速了他們的成長。

以上三條關于程序員的博文主要是想對從事編程工作的朋友提一些期望和建議,程序員是IT行業的基礎力量,所謂35歲程序員的門檻是對人才的極大浪費,而造成這個浪費的原因之一就是程序員們只會編碼,“太過專一”了!

如果能讓“編碼”和“創新”相關聯,則程序員的價值就大增,但“編碼”到“創新”之間需要一個過渡的橋梁,這個橋梁就是“分析與設計”的能力,有了這個能力程序員就可以永不轉行。提升分析和設計的能力,可以參考《大話軟件工程—需求分析與軟件設計》。

總結

以上是生活随笔為你收集整理的程序员,与工程师的区别在哪里? (3)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。