軟件工程師需要具備哪些知識?

Q6girl


軟件工程師是IT領域的重要崗位之一,隨著IT行業多年的發展,軟件工程師也有很多細分的方向,比如Web方向、大數據方向、物聯網方向、雲計算方向、人工智能方向、區塊鏈方向等等,不同方向的軟件工程師需要具備的知識結構也會有所區別。另外,不同行業(金融、教育、通信、醫療)的軟件工程師往往在知識結構上也有所區別。

通常情況下,軟件工程師需要具備以下幾個方面的知識結構:

第一:操作系統知識。操作系統知識是軟件工程師必須具備的重要內容,Web開發領域可能會使用到Windows系列操作系統,大數據和物聯網方向要使用到Linux系列操作系統,掌握操作系統的體系結構是進行軟件研發的重要基礎。主要內容包括資源管理、任務調度、併發管理、權限管理、網絡管理等內容。

第二:編程語言和算法。編程語言是軟件工程師必備的技能,不同方向的開發需要使用到不同的編程語言,比如Web開發可能會使用PHP、Python、Java等語言,而大數據可能會使用Java、R、Scala等語言,而物聯網開發可能會使用到C、C++等編程語言。通常來說,軟件工程師往往需要掌握多門編程語言,以應對不同的開發環境。算法是軟件工程師的重點知識結構,因為軟件研發說到底就是個數學問題,所以算法的掌握情況往往能夠決定軟件工程師的成長高度。當然,對於應用級軟件工程師來說,也有可能不會接觸到更多的算法。

第三:領域知識。不同開發領域需要掌握不同的知識結構,比如大數據軟件工程師往往需要掌握Hadoop、Spark平臺的使用,而Web開發工程師往往還需要掌握前後端開發技術,包括一系列Web開發框架的使用等等。

我從事互聯網行業多年,目前也在帶計算機專業的研究生,主要的研究方向集中在大數據和人工智能領域,我會陸續在頭條寫一些關於互聯網技術方面的文章,感興趣的朋友可以關注我,相信一定會有所收穫。

如果有互聯網方面的問題,也可以諮詢我,謝謝!


IT人劉俊明


下面是我的回答!

我現在的職位就是軟件工程師!我是用的語言是java語言!

第一;語言方面得至少能夠熟練掌握一門語言,無論是C#,java,C,C++,python等等至少要掌握一門語言,因為有了語言才能夠做更多得事情。平常開發寫代碼就要用到這些語言,如果不會得那豈不是尷尬了!精通Web編程,熟悉html,javascript; 精通servlet,JMS,Jdbc開發,熟悉Spring、iBatis等開源框架,熟悉各種常用設計模式; 熟悉基於Oracle或者Mysql的設計和開發、Linux操作系統、SVN操作; 大數據量、高併發系統,大型網站構建等等。

第二,除了會一門開發語言,還要懂得具體得軟件開發流程,需求設計,詳細設計,流程圖,時序圖,序列圖,單元測試,測試用例。什麼時候流程怎麼辦,該做什麼東西,都要做到有個時間段得規劃與驗收時間。

第三。相關得服務器得知道些吧,tomcat,jboss,nginx等等,現在最流行得微服務框架得知道吧,spring cloud ,spring boot等等。

第四。硬件得知道點吧,交換機,路由器,跳線,網線等等。

總之,只要涉及軟件相關的知識,都的要懂,最主要精通的還得是自己得語言!


以上就是我的回答,希望被採納,比心!


搞笑皮小蝦


需要懂許多從軟件需求到最後的維護等方面的知識。如果從就業方面來講應該具備以下的幾點:1.熟悉基本的測試理論、流程、規範;熟悉WinRunner、LoadRunner;能獨立進行測試方案、測試計劃、測試用例設計,搭建測試環境及測試執行;2.熟練掌握C、C++、C#和JAVA,熟悉eclipse、.net等IDE環境,熟悉SQL、HTML;3.熟悉Oracle、MSsqlserver、MSAnalysisServices(AS)及多維表達式MDX,能用AS進行數據聯機分析處理(OLAP)和數據挖掘;4.對軟硬件比較瞭解,能解決各種軟硬件問題;5.良好的英文讀寫說能力。還有就是你可以不會寫但是一定要看得懂。


軟硬件解決方案廠商


軟件工程人才是社會IT界中人氣數一數二的香飄飄,就業前景十分的樂觀,並且對人才的需求還保持著年均20%的快速增長。既然如此,想必做軟件方面的工作需要掌握和學習的知識是要夠全夠深,讓我們來看看從事它需要哪些知識技能、技術級別和職位類型。

首先知曉下軟件工程師的定義:軟件工程師是一個廣義的概念,包括從事軟件職業的人員的一種職業能力的認證,也是軟件開發相關工作的人員的統稱。

從事軟件工程師也有高低級別的區分,分別是軟件技術員、助理軟件工程師、軟件工程師和高級軟件工程師4個技術分級。

一般人都不怎麼清楚軟件工程師平時的工作內容,主要有:

1、 指導程序員的工作;

2、 參與軟件工程系統的設計、開發、測試等過程;

3 、協助工程管理人保證項目的質量;

4 、負責工程中主要功能的代碼實現;

5 、解決工程中的關鍵問題和技術難題;

6 、協調各個程序員的工作,並能與其它軟件工程師協作工作。

7、還要編寫各種各樣的軟件說明書,如:需求說明書,概要說明書等;

8、考試科目工程師是中級職稱,考試的題目包括了計算機體系結構、軟件工程、數據庫、數據結構、編譯原理等計算機學科的基礎課程;

對於想入行或從事軟件工程師相關工作的人對行業的技術要求有哪些,軟件工程師下的職位分類和開發方向又有很多,不同的職位和項目要求的能力標準又不一樣,它到底有哪方面的開發項目呢?

一. NET方面的開發

⒈熟悉.net開發體系,熟悉C# ASP

.NET

⒉熟悉SQLServer,Oracle數據庫開發

⒊以上要求至少3年開發經驗。

⒋具有企業管理系統項目經驗。

5.瞭解企業ERP及財務管理軟件(用友,金蝶)者優先。

6.善於溝通,能獨立撰寫方案。為人誠實,善於學習,做事認真負責,積極主動,具有敬業精神,有團隊精神

二.JAVA應用程序開發

熟練使用Struts2+Spring+Hibernate;掌握Jquery、Java;熟悉Oracle/xml/webservice;掌握OOD、OOP;基本文檔寫作能力

三.web、數據庫方面的開發

⒈計算機或相關專業本科以上學歷;

⒉有4年以上開發經驗,有良好的代碼編寫習慣,熟悉軟件開發規範;

⒊熟練掌握ASP,NET;等編程語言,熟悉.Net開發環境,理解.Net Framework,理解並能熟練使用WebService、O/R mapping、Remoting、多線程等技術;

⒋熱衷於互聯網WEB開發,熱衷於鑽研最新的前沿技術,精通XML,Javascript,CSS,AJAX等WEB前端技術;

⒌熟練的技術文檔編寫能力,熟練使用Rose,Power Design,Visio等建模和設計軟件,有一定的架構設計能力;

⒍精通SQL server數據庫技術,瞭解數據庫性能調優者優先.

四.C#項目開發

⒈計算機專業本科以上學歷,一年以上C#/ASP NET開發經驗,熟練使用SQL數據庫,有歐美項目開發經驗者優先;

⒉大學英語四級以上,具有較強的聽、說、讀、寫能力,尤其是聽、說能力;

⒊工作認真細緻,踏實肯幹,具有較好的團隊協作精神和溝通能力;良好的邏輯思維,能夠承受一定的工作壓力並可以按時完成工作且保證質量

五.php項目開發

⒈使用PHP語言開發互聯網應用程序;

⒉網站產品和網站功能模塊的開發與維護;

⒊與頁面設計師協調溝通,編寫部分Javascript和HTML;

⒋參與底層MVC框架的編寫與維護。

從上面的知識體系來看,對軟件工程師的要掌握的知識和工作中的經驗能力都有高的標準。如果您對這方面的有不同的見解請在評論區留言!!!


分享到:


相關文章: