0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

軟件工程師和程序員的區(qū)別

工程師人生 ? 來源:wv ? 作者:簡書網(wǎng) ? 2019-09-04 14:52 ? 次閱讀

軟件工程師通常認(rèn)為好的軟件是采用正確的模式、遵守規(guī)范、制定規(guī)則、遵循最佳實踐和正確處理流程的產(chǎn)物。

程序員知道這些都是狗屎。

相對于建設(shè)一座大橋,編寫代碼更像是創(chuàng)作音樂,編寫書籍,拍攝電影,或者是繪畫。事實上,編寫代碼更難。這需要我們做更多,使我們的產(chǎn)品不僅僅是好看或者好聽那么簡單。大家知道,好的音樂、繪畫、文學(xué)作品不是關(guān)于如何循規(guī)蹈矩,更多的是關(guān)于如何打破常規(guī),探索新想法。你以為音樂排行榜或者最佳銷售榜上那些最流行的作品是因為遵守了什么標(biāo)準(zhǔn)或者規(guī)范而上榜的嗎?如果是那樣,那些榜單將會變得很不一樣,而且也不那么流行,因為社會在向前發(fā)展,總會出現(xiàn)新事物,或者以不一樣的觀念審視舊事物,而且永遠(yuǎn)不會停止。

最好的程序員能夠簡單自然的完成他們想做的事情,工作穩(wěn)定,而且有足夠的直覺讓自己不那么討厭。通常那些被忽視的東西,要比顯而易見的東西要重要的多。比如:相對于一個可配置的軟件,我們更希望得到一個可以自己完成配置,或者干脆不需要配置的軟件。我們大概沒有意識到身邊存在許許多多正在使用的運(yùn)行良好的軟件,因為它們只是在默默的在運(yùn)行,我們不需要關(guān)心或者擔(dān)心他們。當(dāng)軟件出現(xiàn)問題的時候,我們才會關(guān)心那些“軟件工程師”是不是遵循了規(guī)范和流程,軟件崩潰讓我們很滿腦,因為軟件是一樣關(guān)注人,關(guān)注解決問題的東西,而不僅是工具或者技術(shù)(直到有一天,你嘗試了各種各樣的軟件最后發(fā)現(xiàn)一款合適的軟件的時候才能深刻的理解這一點),也不是其他什么。當(dāng)軟件好用的讓我們吃驚時,我們?nèi)匀徊粫浀檬裁匆?guī)范什么流程,除非我們做過類似的事情。所以看起來只有軟件工程師關(guān)心規(guī)范或者流程之類的東西。

我發(fā)現(xiàn)那些傾向于工程師的心態(tài), 傾向于聚焦技術(shù)、代碼、流程是否被正確執(zhí)行、以及測量那些武斷的規(guī)范或風(fēng)格的執(zhí)行是否到位 的人往往忽略了真正的問題是否被解決了?使用者的真正需要是什么?好的軟件能夠在用戶體驗、實際問題以及技術(shù)之間取得平衡。最好的結(jié)果通常來源于對三者都做微小的修改,但是如只聚焦于工程本身,那就顯得過于短視。

當(dāng)被要求遵守規(guī)范的時候、當(dāng)糾結(jié)于繁復(fù)的流程的時候創(chuàng)造力被扼殺了,這是個問題。大部分主流的指導(dǎo)和流程是對管理友好的,管理者得到了他們想要的東西。但是軟件工業(yè)發(fā)展非常快, 真正的創(chuàng)新不會產(chǎn)生自“最佳實踐”。當(dāng)工程師還在糾結(jié)于流程的時候,程序員則在不斷創(chuàng)新,不斷尋找更先進(jìn)方法,這時候他們也許不會遵守流程,不會按部就班,但是他們往往能成功。

舉個例子:也許大約200行 Node.js 代碼也許能比10000行 java EE 代碼更好跟容易的解決問題?也許稍微修改一下用戶需求能大幅降低實現(xiàn)的復(fù)雜度?

當(dāng)用戶體驗、軟件功能、技術(shù)實現(xiàn)出現(xiàn)沖突的時候,只有程序員能看透其中的奧秘。而軟件工程師傾向于忽略這些問題,因為在搞清楚到底出了什么問題之前他們已經(jīng)決定該如何解決了。他們會控制變更,好像問題會自己修復(fù)一樣。

當(dāng)我14歲的時候我成為了一名程序員(自學(xué)的),后來我成為了設(shè)計師、架構(gòu)師,然后我意識到我整天只是在畫流程圖,編寫文檔,這是在浪費時間,而且感覺糟透了。我現(xiàn)在48歲我又開始寫代碼了, 而且很喜歡,這是因為相比之前,我能讓軟件變得更快更好,讓它能真正滿足用戶的需求, 而不是整天在宏觀層面胡扯。

有些人認(rèn)為雇傭工程師能夠帶來比卑微的‘程序員’更多的穩(wěn)定性,但我更愿意雇傭程序員或者叫軟件開發(fā)者,因為工程是反自然的,比如鋼筋混凝土,我們?nèi)绻_的安裝它,但是計算機(jī)、人、軟件并不是這樣運(yùn)作的,想想一下你需要給一個飛行中的飛機(jī)更換零件。

對于我而言,編程和軟件開發(fā)不僅僅是需要實踐的天賦或藝術(shù),雖然它的確需要一些規(guī)矩,而更多的是關(guān)于創(chuàng)造一些真正的新的充滿希望的,讓人快樂的或者能夠帶來真正價值的東西。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 軟件工程師
    +關(guān)注

    關(guān)注

    8

    文章

    218

    瀏覽量

    21148
收藏 人收藏

    評論

    相關(guān)推薦

    TMS320C6000程序員指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000程序員指南.pdf》資料免費下載
    發(fā)表于 12-24 17:19 ?0次下載
    TMS320C6000<b class='flag-5'>程序員</b>指南

    機(jī)械革命發(fā)布CODE AI程序員

    近日,英特爾新質(zhì)生產(chǎn)力技術(shù)生態(tài)大會在成都舉行,機(jī)械革命作為重要參展商帶來了多款明星產(chǎn)品引爆全場!其中更是在AI PC軟件生態(tài)產(chǎn)品發(fā)布分論壇上,Intel、智譜、機(jī)械革命三方聯(lián)合發(fā)布了專為程序員設(shè)計的CODE AI程序員本,成為本
    的頭像 發(fā)表于 11-30 10:34 ?455次閱讀

    Linux驅(qū)動程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動程序程序員指南.pdf》資料免費下載
    發(fā)表于 11-22 15:53 ?0次下載
    Linux驅(qū)動<b class='flag-5'>程序</b><b class='flag-5'>程序員</b>指南

    AI編程工具會不會搶程序員飯碗

    AI編程工具可輔助編程,減少手動編碼,提升效率,對程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識應(yīng)對。長遠(yuǎn)看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?199次閱讀

    FPGA算法工程師、邏輯工程師、原型驗證工程師有什么區(qū)別?

    ,還需要與軟件工程師、硬件工程師緊密合作,對整個系統(tǒng)進(jìn)行集成和測試。 總的來說,F(xiàn)PGA 算法工程師著重于算法優(yōu)化,F(xiàn)PGA 邏輯工程師專注于邏輯設(shè)計,F(xiàn)PGA 原型驗證
    發(fā)表于 09-23 18:26

    阿里云發(fā)布首個AI程序員,引領(lǐng)應(yīng)用開發(fā)進(jìn)入“分鐘級”時代

    近日,在備受矚目的阿里云上海AI峰會上,阿里云向全球開發(fā)者們展示了其最新的技術(shù)成果——首個“AI程序員”。這款創(chuàng)新應(yīng)用基于通義大模型構(gòu)建,具備了令人驚嘆的多項技能,包括架構(gòu)、開發(fā)工程師、測試
    的頭像 發(fā)表于 06-24 10:36 ?670次閱讀

    嵌入式軟件工程師如何提升自己?

    嵌入式軟件工程師如何提升自己? 作為一名嵌入式軟件工程師,在這個充滿機(jī)遇和挑戰(zhàn)的領(lǐng)域里,如何提升自己顯得非常重要,它決定了你未來的發(fā)展方向和成就。接下來,我們一起探討一下。 1.奠定扎實
    發(fā)表于 06-12 11:20

    扎心靈魂小拷問:有了AI編寫代碼之后,軟件工程師會被AI取代嗎?

    軟件開發(fā)者們有很多讓他們焦慮的事情。他們最擔(dān)心的不再是如何用他們最喜歡的編程語言(C、C++、Erlang、Java等)表達(dá)最新的算法。相反,這種擔(dān)憂正逐漸被人工智能(AI)所取代。 在這里,我們將探討AI編寫代碼的過程,并回答這個問題:AI會取代程序員嗎?
    的頭像 發(fā)表于 05-24 19:17 ?681次閱讀
    扎心靈魂小拷問:有了AI編寫代碼之后,<b class='flag-5'>軟件工程師</b>會被AI取代嗎?

    索尼誠邀軟件工程師參與PS免費手游平臺設(shè)計

    據(jù)悉,近日,澳大利亞知名媒體TweakTown發(fā)現(xiàn),索尼互動娛樂正在為其旗下的PlayStation Studios Mobile招募一名資深的軟件工程師,負(fù)責(zé)設(shè)計PlayStation的免費手機(jī)游戲平臺。
    的頭像 發(fā)表于 05-23 17:08 ?746次閱讀

    嵌入式軟件工程師和硬件工程師區(qū)別?

    嵌入式軟件工程師和硬件工程師區(qū)別? 嵌入式軟件工程師 嵌入式軟件工程師軟件開發(fā)領(lǐng)域中的一種專
    發(fā)表于 05-16 11:00

    Cognition發(fā)布首款A(yù)I軟件工程師Devin

    據(jù)報道,Cognition公司今日公布了其首款人工智能軟件工程師——Devin,掀起了打造軟件模式變革的序幕。該產(chǎn)品在SWE-bench代碼測驗中展現(xiàn)出卓越表現(xiàn),甚至超過了部分頂級人類工程師的水準(zhǔn)。
    的頭像 發(fā)表于 03-13 10:57 ?641次閱讀

    適者生存,程序員最終會流向哪……

    程序員沒有永遠(yuǎn)的護(hù)城河!!就目前的互聯(lián)網(wǎng)大環(huán)境來看,it行業(yè)已經(jīng)是……
    的頭像 發(fā)表于 03-11 17:11 ?423次閱讀
    適者生存,<b class='flag-5'>程序員</b>最終會流向哪……

    薪資高、青春飯,是不是程序員=青樓?

    花期太短。技術(shù)迭代快,年齡大容易失業(yè)。 就這幾年的互聯(lián)網(wǎng)環(huán)境而言,不管是前端、Java、Android開發(fā)等等行業(yè)。已經(jīng)感受到程序員不是太卷就是工作難找,薪資過低。以前高工現(xiàn)在拿著中低程序員薪資
    發(fā)表于 03-06 21:32

    企業(yè)老工程師和高校老師有啥區(qū)別

    電子工程師硬件
    電子發(fā)燒友網(wǎng)官方
    發(fā)布于 :2024年02月28日 17:50:00