軟件開發(fā)工程師
在各種IT職業(yè)的分類中,區(qū)分軟件開發(fā)人員和軟件工程師職位是造成最大混亂的原因之一。由于許多人將軟件開發(fā)視為一種工程活動,并將工程視為開發(fā)人類成就的藝術(shù),因此很難看出這些職業(yè)之間的明顯區(qū)別。
但實際上,軟件開發(fā)人員和軟件工程師之間存在差異。
許多觀察家試圖找到有趣的隱喻來表達這個想法,并提供兩個標題之間的區(qū)別。他們大多指的是拉雪橇者和雪橇,或者建筑師和木匠的類比。他們在澄清責任范圍方面做得很好,但這仍然是對他們差異的過于簡單化的表述。事實上,這兩個專業(yè)在為同一目標而共同努力方面有著重要的相似之處。因此,這兩個類比應該包含一個重要的補充,即兩者都做相同的工作并在相同的產(chǎn)品上工作,但選擇不同的路徑來實現(xiàn)它。準確地說,軟件開發(fā)人員首先要深入觀察,然后再擴大范圍,而軟件工程師則選擇更廣闊的視角,并逐漸學會區(qū)分微小的細節(jié)。更簡單地說,兩位專家都做同樣的事情——區(qū)別只是規(guī)模,或有限或大。
那么,真的存在“軟件開發(fā)人員與軟件工程師”之間的沖突嗎?簡短的回答是:“是的,但在一定程度上?!?nbsp;繼續(xù)閱讀以了解原因!
什么是軟件工程師?
那么,軟件工程師。軟件開發(fā)生命周期中整個過程背后的策劃者。系統(tǒng)思考者需要整個共同思考者團隊為 IT 專家提供必要的工具。
“工程師”這個詞完全反映了這個職位所完成工作的本質(zhì)——此類專家設計復雜的工具來促進客戶和藝術(shù)家的活動。
軟件工程師處理重大問題。這個人每天都練習從有遠見的角度解決這些問題。這就是為什么他/她需要跟蹤整個過程的工作原理——不僅在開發(fā)階段,而且還包括計算機系統(tǒng)的設計、維護、測試和評估。此外,該專業(yè)人員需要知道如何控制硬件組件。保留所有技術(shù)特征和兼容性要求至關(guān)重要。
簡而言之,軟件工程師是一位勤奮的團隊合作者,他知道如何以及為何為軟件系統(tǒng)的運行創(chuàng)建有用的工具。所有這些技能使得能夠應用最有效的方法和實踐來構(gòu)建工具。因此,這位專家類似于動漫《千與千尋》中幫助卡馬吉(或軟件開發(fā)人員)工作的煙灰小魔頭 susuwatari。如果用更現(xiàn)實的比喻的話,或者是螞蟻。
什么是軟件開發(fā)人員?
軟件開發(fā)人員的主要任務是編寫對業(yè)務有效的程序。為了做好這件事,他/她作為一名自由人才,創(chuàng)造性地使用軟件工具并為各種平臺制作所需的應用程序。因此,專家應該對整個項目有效,并逐步實現(xiàn)其目標,以幫助軟件開發(fā)過程順利且高效地進行。
事實上,軟件開發(fā)人員正在處理與軟件工程師相同的問題——他/她只是專注于軟件開發(fā)生命周期中的開發(fā)階段,并使用更具創(chuàng)造性的方法來解決問題。對于這個職位,提出一個可行的解決方案比花時間思考這個程序是否符合所有流程要求并考慮到項目周圍的所有因素更重要。更大的任務是從混亂的工具中創(chuàng)建一個可以運行的程序。
每一天,軟件開發(fā)人員都會編寫代碼并創(chuàng)建可在一個或多個平臺上運行的解決方案,具體取決于客戶在訂單中提到的平臺數(shù)量。由于這一職位僅與開發(fā)階段相關(guān),因此許多觀察家傾向于通過確定其活動的有限范圍來將其與軟件工程師的職位區(qū)分開來。但這是不準確的:軟件開發(fā)人員在創(chuàng)建程序時擁有更多的創(chuàng)造力和復雜的愿景。這位專業(yè)人士以獨立藝術(shù)家的身份構(gòu)建軟件的基礎,使現(xiàn)成的工具真正發(fā)揮作用,并保持遠見并解決重大問題。
那么當今軟件工程師和軟件開發(fā)人員的角色是什么?
那么,軟件工程師在業(yè)務流程中的主要作用是什么?簡而言之,這可以幫助客戶和雇主從軟件開發(fā)公司設計和開發(fā)的解決方案中獲得最大利益。對于這位專家來說,關(guān)鍵任務是確保所有相關(guān)利益相關(guān)者的完整性和自由。在這種情況下,提供道德領導的能力是所需的另一項關(guān)鍵技能。
對于軟件工程師來說,最需要的熟練程度之一是,該職位需要具備技術(shù)能力、情感領導力以及對所有基本工具(如自動化測試和容錯系統(tǒng))以及高科技趨勢(如云技術(shù)和大數(shù)據(jù))的認識。 )。需要所有這些理論和實踐背景來規(guī)劃設計理念,不僅維護工作解決方案,而且維護整個 IT 基礎設施。
至于軟件開發(fā)人員的角色,這個人堅持創(chuàng)建程序并使整個業(yè)務正常運轉(zhuǎn)。他使用準備好的工具創(chuàng)造性地開發(fā)設計的應用程序,并考慮到客戶的需求。這就是為什么這個職位的職責清單不僅僅是編碼,還需要主題審查、設計、規(guī)范、調(diào)試、文檔和優(yōu)化方面的經(jīng)驗。
此外,軟件開發(fā)人員所需的資格清單包括了解計算機語言和擁有軟技能——尤其是分析思維和以客戶為中心。通過區(qū)分客戶的需求和品味,這位專家能夠設計和開發(fā)完美匹配的高標準和工作組件。
那么,軟件工程師和軟件開發(fā)人員之間真的有區(qū)別嗎?
我們回到這個問題:“軟件開發(fā)人員與軟件工程師之間有什么區(qū)別?”。簡而言之,兩位專家都致力于創(chuàng)建有效的軟件,因此差異很小。一方面,軟件工程師是發(fā)起新系統(tǒng)和工具的科學家。另一方面,軟件開發(fā)人員是創(chuàng)建新程序和軟件網(wǎng)絡的藝術(shù)家。
但在他們的職業(yè)道路上,這兩個職位發(fā)現(xiàn)自己更加相似。這是因為真正的軟件專家既是開發(fā)人員又是工程師,確切地知道如何以及為何構(gòu)建軟件解決方案?!?a href="http://www.lnqkjt.com/" target="_self" title="軟件開發(fā)">言鼎科技】