程序員與軟體工程師有何區別?
開發程序員(development programmer)和軟體工程師(software engineer)的區別:
在國內好像沒太大卻別吧,剛畢業的應屆生簡歷裡面也可以是軟體工程師,也可以叫自己程序員;但是看國外細分為開發程序員和軟體工程師,具體有什麼區別?(難道初級是程序員,高級是軟體工程師;還是寫代碼的是程序員,負責架構設計畫uml的是軟體工程師)
應屆生別那麼陽春白雪了,都是coder而已,沒啥本質區別,就像美術,美術設計師和美工,都一樣。喜歡講點小自尊的美術聽到別人叫美工就會義正辭嚴的糾正:「請叫我美術設計師」,你如果愛聽這些,也可以義正辭嚴的糾正別人的說法:「請叫我宇宙超級無敵軟體工程師」 嘛,名片的title也可以寫為:
合天弘運前端後端通殺文能提筆安天下武能上馬定乾坤恭儉寬裕孝敬誠信上能架構操作系統下能設計嵌入晶元手握演算法無數分胸中代碼千萬行智勝仁勇功德大成謙虛謹慎全棧科學家攻城獅 張小二
多霸氣沒區別。
沒區別,看公司喜歡什麼名字而已
另外這個職位的名稱和工作內容沒有必然聯繫微軟中國的software engineer下邊有可能管著50個以上的員工
我所在的公司里,有的software developer同時要負責項目估測,客戶支持和架構設計Google和Facebook的software engineer更有可能直接負責項目規劃反過來也有很多公司這些職位只是純粹的照需求寫代碼這個職位不說明任何問題。拋開技術什麼的不說,我覺得最大的區別是工程師應該有顆匠心。我外公是個高級電力工程師,退休前在科研所工作。我小時候經常看我外公在家裡擺弄電路板,晶體管之類的東西。說幾件他的事吧。
1.他有一張桌子是他的工作台,桌面上用圖釘訂了很大一張白紙,覆蓋整個桌面。我小時候調皮在那張紙上亂畫東西,畫花了以後他總是會重新換一張。後來他告訴我那張白紙做底,再小的零件也很容易找到。2.外公的抽屜里有很多小盒子,每個盒子里有什麼零件和工具他都知道,擺放的非常規整,任何東西都可以很快的拿到。3.有一次我和他一起接音箱線(外公自己會做音箱),我把兩根線的銅芯隨意攪在一起,馬馬虎虎的貼了幾圈絕緣膠,被他看見了。他把我接的線又拆開,重新把兩根銅芯擺好,一下一下的纏出一個螺旋形,然後再貼絕緣膠,繞了很多圈。他說,這種接頭的地方,接好了以後放到沙發底下或者訂在天花板上,萬一壞了要重新接,整條線都要扯下來,就很麻煩了,所以要一次就接好。4.一次裝電視機,他在牆上用尺子量了很久,畫水平線,用鉛筆把洞的位置全畫出來,才開始鑽孔。5.小時候看我的作業,看到我寫錯字畫的墨團和斜線,總是會批評我,要我把寫錯的地方標清楚。工作以後我才慢慢體會到,外公的那些習慣可以帶來多大的好處。現在你打開工程看看自己寫的代碼和同事寫的代碼,看看那些注釋,看看那些格式,再看看牛人們寫的代碼,應該會有些感受吧。
developer 本身就是開發者了. 一般不需要跟programmer連著用.
中英文對照:
研發部門:RD, Research and Development department.研究員:Researcher開發人員:Developer產品部門:Product Department.
產品/軟體/硬體/...工程師:xxx engineer.項目組:Project team.
項目經理:Project manager編碼的(小工):coder資源線(組):resource line/team/group
資源經理/資源組長:line manager
開發:programmer/coder
測試:tester
再普及一下公司組織結構,以同相職位橫向排列,上下級關係為縱向排列。
縱線劃成部門,一般是事業部,產品部門或項目組。
橫線劃成部門,一般是RD,銷售部門
兩種情況都有時就是所謂矩陣式管理,橫向為資源線,縱向為產品線。
謝邀。
本來就沒區別。只是有的公司叫這個有的叫那個而已。而且正式非正式還不同。比如微軟的正式title都用SDE,而私底下都叫dev。不會編程的軟體工程師你們沒見過嗎?
一個格式沒問題 一個格式有問題(丟了半拉括弧)的區別
推薦一位IT精英的博客,博客地址:
- zhuweisky - 博客園
做技術是需要匠心的。什麼是匠心?我們原本是有匠心的,我們如今還有匠心嗎?我們為什麼沒有匠心了?為什麼我們要重拾匠心?如何重拾匠心?
一. 做技術是需要匠心的中國古時的玉匠,切磋琢磨,用繩與砂漿,費數十載心力,終將渾然璞玉製成傳世珍品,千年遺音在,猶見當年寂寞心。
日本傳統的刀匠,將千錘百鍊之鋼反覆鍛鑿、淬火、打造、磨製,每一處技至精微,每一處心入幽明——刀中有魂!
歐洲中世紀的石匠,在哥特式教堂的飛檐上雕刻出了靈獸狀噴水嘴,雖不為世人所見,仍一絲不苟——每一鑿中都有天堂!
米蓋朗基羅花四年雕刻出了震驚世人的《大衛》,曹雪芹批閱十載創作出了藝術巔峰的《紅樓》——任何偉大的作品背後都有一顆匠心。
二. 什麼是匠心?
匠心是對於作品而言的。
匠心是傾注於作品之中的精神、情感、乃至魂魄。
匠心發自於愛,是對作品視如己出的拳拳之心,是恆久忍耐又有恩慈。
匠心是出於這份愛的對於完美的追求,是追求中不避艱苦,是追求中自得其樂。
匠心是涵泳在作品之中的自我實現,是我與作品的相互完成,彼此造就。
在匠心看來,作品是我的至親之物,棲居著我的精神,安放著我的靈魂。
匠心即是愛心 + 恆心 + 一片苦心 + 七竅玲瓏心 + 出離心 + 寂寞心 + 金剛心 + 歡喜心 + 其人雖已歿,千載有餘情。
三.我們原本是有匠心的我們原本是有匠心的。
當年Ken Thompson 和 Dennis M.Ritchie 一起在貝爾實驗室里苦心孤詣。
如今,沒有人不知道Unix意味著什麼,C意味著什麼。
他們的匠心也彰顯在Unix和C中令無數人為之驚嘆、感懷。
四.我們如今還有匠心嗎?如今,我們再也難得見到「作品」問世。
甚至於「產品」也是少見。見得最多的則是「商品」。
對於我們而言,做什麼東西並不重要,重要的是做這個掙不掙錢。於是我們沖著掙錢做了各種項目,C/S、B/S、前端、後端、資料庫、Java、.Net、安卓——彷彿無所不知,無所不曉,十年之後回首,覺得自己已然是全才。
我們從事了大量的勞動,寫了幾十萬行代碼。我們的工資越來越高,並為此沾沾自喜。
可是,這樣的成就,無非是一個熟練工人的成就。
我們何曾擁有匠心?
五.我們為什麼沒有匠心了?隨著大生產時代的到來,那種田園詩般的男耕女織、帶月荷鋤歸的工作方式,早已一去不復返。社會分工越來越細碎化,我們面對的是一個又一個的局部。在這之中需要的是規格化、標準化、量化和同質化。換言之,你所做的工作必須是合乎統一規範的,具有統一規格的單元,如此才能拼接到整體的工作中。因此,任何的創造性,任何私人性質的感情和精神的注入,歸根到底,只是錯誤的根源。 ——我們於何處安放匠心?
如今,商品成為了一切物所具有的普遍的形式。沒有什麼不是商品。商品是以交換為目的的。我們生產任何勞務、產品、或服務,都是為了交換,為了換取一般等價物,即貨幣,即金錢。因此,錢成為了衡量一切的準繩。如今不乏偉大的商品誕生,可是偉大的作品卻乏善可陳。商品需要的是批量生產,需要對消費者投其所好,當然商品也需要創意,可是那不是匠心!在一個由商品拜物教統治的時代,我們於何處安放匠心?
世界如此繁華,匠心未免太奢侈了!我們在喧嘩與騷動中度日,有太多的追求,太多的比較,太多的你追我趕,太多的惶惶終日。每天有看不完的新聞,刷不完的微博,做不完的手頭工作。我們為無盡的事情發愁,疲於奔命。匠心未免太奢侈了!早在我們出生的那一刻,我們就開始照著大家來活,大家都在讀書,大家都在考學,大家都在找工作,大家都在結婚,大家都在買房,大家都在炒股,當我們跟著大家忙忙碌碌的時候,匠心自始就已沉淪!
六.為什麼我們要重拾匠心?假使我們沒有匠心,我們將不會在工作中獲得真正的快樂。因為我們不能自覺自由地工作,我們的工作是boss定義的,而不是自己定義的。如此一來,我們就與我們的勞動之間切斷了血肉聯繫。我們的勞動成為了壓迫我們、奴役我們的異己力量。我們淪為被迫勞動。我們真正的生活在下班之後開始。我們不停地抱怨:要不是為了幾個臭錢,我才不要干這些。如何才能回歸到那種田園詩般的勞作之中——我們必須重拾匠心!
唯有在擁有匠心之後,我們才能走向真正的自我實現。馬斯洛將人的最高層次的需求定義為自我實現。一個自我實現的人,一個將自己的才能發揮到最大限度的人,才是那個獲得最大心理滿足的人。現實生活中唯有少數精英才能夠成為自我實現人。但是這並不妨礙我們追求自我實現。一個有著庸碌之心的人,是不可能走向自我實現的。唯有重拾匠心,我們才能佔有工作的全部意義,才能不避艱苦、精益求精,與自己的作品相互完成,彼此造就。
七.如何重拾匠心?對於如何重拾匠心的問題,恐怕要留給每一個人來思考。而且是一個需要始終思考的問題。
在這裡我並不想給出答案。
只希望能在這篇文章中能夠看見你,看見我,看見大家。
能見眾生便是如來,不易匠心方得始終。
參考閱讀:
程序員的出路之一——————————————————————————————————不是一個造輪子一個裝輪子嗎?
我是這麼理解的我的理解:
碼農==會寫代碼
程序員==碼農+思想工程師==程序員+工匠精神開發者==工程師+軟技能這兩個詞都可以與「碼農」隨意互換。
其實懂IT的朋友應該知道,程序員和軟體工程師之間有著很大的區別,軟體工程師是對於軟體開發相關工作的人員的一個統稱。軟體工程師是IT行業中需求量最大的一個職位,穩居IT行業職位需求TOP10第一位。軟體工程師的技術要求比較全面的,除了最基礎的編程語言(C語言/C++/JAVA等)、資料庫技術(SQL/ORACLE/DB2等)、.NET平台技術、C#、C/S B/S程序開發,還要掌握諸如JAVA SCRIPT、AJAX、HIBERNATE、SPRING、J2EE、WEB SERVICE、STRUCTS等的前沿技術。除此之外,還要涉獵於網路工程和軟體測試的其他技術,以便於操控全局。軟體工程師可以說是一個項目開發的掌舵者。一名優秀的軟體工程師應該具有較強的邏輯思維能力,對於技術的發展有著敏銳的嗅覺。雖然要求技術全面,但無須偏執於門門技術都精通,任何軟體工程師都有自己的技術特長和偏向,對於自己手中的技術,可有精通-掌握-熟悉-了解之分,根據工作需要和職業發展的具體情況來劃分。程序員是專職從事程序開發、維護的專業人員。
按照標準來看:一個軟體工程師的工作程序是需求分析、總體設計、詳細設計、測試設計、軟體開發編程。與此軟體開發流程管理相適應,軟體企業也要有合理的人力資源結構。在這一結構中每一個人都必須按照分工協作的原則來進行流水線作業,其中數量最多的要數從事軟體開發編程等基礎工作的人員,也就是我們所說的程序員。所以,程序員和軟體工程師之間的區別就像蓋樓的分工一樣,程序員永遠是扮演工人的角色,而軟體工程師是這座大樓的設計人員。這也是程序員和軟體工程師的最大區別。
至於軟體工程師是程序員嗎這個問題,應該說一個軟體工程師首先應該是一個合格的程序員,但程序員只能是成為軟體工程師的第一步。一個軟體工程師來說,在掌握了基本的編程技能後,開發軟體所需要的各種除了編碼之外的其它知識會更為重要,比如如何從組織工程與項目的角度來看待軟體開發的問題,如何為軟體搭建合理準確的架構,什麼樣的軟體會更易於維護與更新。故而軟體工程師的級別要大於程序員。
說了這麼多,想必大家對於軟體工程與程序員都有了一定認知,對於找工作和實習的同學,可要好好加油哦!
某985,大一剛入學的時候,領導講話說,我們學院培養的不是程序員,而是軟體工程師。現在我畢業了是碼農。
老師和教師有區別嗎??若有區別,可能是口語和書面語的區別
用建房子來比喻的話,
程序員 == 將房子按照設計圖造出來的工人
軟體工程師 == 房子規劃 + 房子設計 + 程序員 + 房子驗收
程序員和軟體工程師的區別是:軟體工程師不但要有編寫程序代碼的能力而且更重要的是要懂得如何去開發一個軟體,怎樣去學習實際的UI的觀念。
就是工廠裡面技術員和工程師的區別。技術員是熟練工人,工程師是設計者。軟體工程師可以評判軟體是否可以成功被寫出來,可以判斷軟體是否具有開發的技術可行性,甚至要會經濟、法律等知識去評判軟體是否具有經濟可行性、法律可行性等等。軟體工程師有對項目的深度把握,從一開始就會對軟體的不同功能進行合理的分類,確實是從工程的角度去構建軟體,包括後續的開發和測試等。但開發人員可能只是執行了軟體工程的一部分工作,開發階段的工作中特定的功能。軟體工程師可以說是高級的開發人員吧,有些時候一行代碼會實現普通的開發人員幾十行或幾千行代碼的功能,因為有了思想在其中,而不是純粹的寫代碼。
辨析:裝修工 vs. 裝修人員 vs. 家裝工程師美工 vs. 設計師 vs. 美術工程師碼農 vs. 程序員 vs. 軟體工程師
推薦閱讀:
※零基礎轉行學習軟體測試如何入手?
※北大青鳥是否在短短 5 年內從高峰跌落到瀕臨倒閉?如果是,這背後有什麼故事和教訓?
※PPPOE撥號上網,取消本地連接TCP/IP協議勾選會導致什麼問題嗎?
※做一名糟糕的程序員是怎樣的體驗?
※大學四年如何成為世界級軟體工程師?