數(shù)據(jù)庫開發(fā)工程師的發(fā)展方向與市場需求大嗎
2021-11-06點擊量:580
21世紀我們迎來了互聯(lián)網(wǎng)時代,也迎來了數(shù)據(jù)庫開發(fā)工程師。數(shù)據(jù)庫開發(fā)工程師(DatabaseDeveloper)是從事數(shù)據(jù)庫管理系統(tǒng)(DBMS)和數(shù)據(jù)庫應用軟件設(shè)計研發(fā)的相關(guān)工作人員的統(tǒng)稱,他屬于軟件研發(fā)工程師,但又有一部分運維工作的內(nèi)容。他主要從事軟件研發(fā)的工作,但同時也要參與數(shù)據(jù)庫生產(chǎn)環(huán)境的問題優(yōu)化和解決。數(shù)據(jù)庫開發(fā)工程師與傳統(tǒng)的數(shù)據(jù)庫管理員(簡稱DBA,也稱為數(shù)據(jù)庫工程師)是不同的職位。傳統(tǒng)的DBA主要屬于運維職位,而數(shù)據(jù)庫開發(fā)工程師則屬于軟件研發(fā)職位。但二者也有部分工作內(nèi)容重合,比如都要跟進數(shù)據(jù)庫生產(chǎn)環(huán)境出現(xiàn)的故障問題,其中DBA主要負責故障處理,而數(shù)據(jù)庫開發(fā)工程師主要跟進自己開發(fā)的系統(tǒng)模塊出現(xiàn)的bug或性能問題。根據(jù)研發(fā)的內(nèi)容不同,數(shù)據(jù)庫開發(fā)工程師可以分為兩大發(fā)展方向:數(shù)據(jù)庫內(nèi)核研發(fā)和數(shù)據(jù)庫應用軟件研發(fā):a)數(shù)據(jù)庫內(nèi)核研發(fā):主要負責設(shè)計和研發(fā)數(shù)據(jù)庫管理系統(tǒng),重點關(guān)注的是數(shù)據(jù)庫管理系統(tǒng)內(nèi)部架構(gòu)的設(shè)計和實現(xiàn),比如MySQL分支的開發(fā)、Oracle10g新特性開發(fā)等;b)數(shù)據(jù)庫應用軟件研發(fā):主要負責設(shè)計和研發(fā)數(shù)據(jù)庫管理系統(tǒng)衍生的各種應用軟件產(chǎn)品,重點關(guān)注的是數(shù)據(jù)庫外部應用軟件產(chǎn)品架構(gòu)的設(shè)計和實現(xiàn),比如分布式數(shù)據(jù)庫、數(shù)據(jù)庫中間件等。主要職責:深入研究數(shù)據(jù)庫內(nèi)核相關(guān)技術(shù),設(shè)計并實現(xiàn)數(shù)據(jù)庫管理系統(tǒng)深入了解數(shù)據(jù)庫應用的業(yè)務需求,主導設(shè)計不同數(shù)據(jù)庫架構(gòu)的應用軟件,并持續(xù)優(yōu)化根據(jù)業(yè)務需求設(shè)計數(shù)據(jù)庫邏輯和物理模型,開發(fā)數(shù)據(jù)庫生產(chǎn)環(huán)境所需要的存儲過程、函數(shù)、腳本等參與數(shù)據(jù)庫生產(chǎn)環(huán)境的問題優(yōu)化和解決探索、研究新的數(shù)據(jù)庫架構(gòu)發(fā)展方向工作內(nèi)容:數(shù)據(jù)庫開發(fā)工程師的日常工作是設(shè)計、開發(fā)數(shù)據(jù)庫系統(tǒng)和數(shù)據(jù)庫應用軟件,因此與軟件研發(fā)的過程一樣,會覆蓋需求、設(shè)計、編程和測試四個階段:需求:深入調(diào)研用戶市場需求,認清項目的應用場景,解決的問題,性能指標等,需要與數(shù)據(jù)庫系統(tǒng)使用方反復溝通,確定具體的需求。設(shè)計:根據(jù)收集整理的需求文檔設(shè)計數(shù)據(jù)庫系統(tǒng)軟件的模型和架構(gòu),劃分模塊分別進行概要和詳細設(shè)計。編程:按照模塊分工和設(shè)計文檔,進行編碼和調(diào)試。測試:將開發(fā)完成的數(shù)據(jù)庫系統(tǒng)交給測試人員進行測試,主要使用的測試方法有黑盒測試、白盒測試、壓力測試、性能測試等,測試全部通過后即可等待發(fā)布。當數(shù)據(jù)庫系統(tǒng)軟件完成發(fā)布后,數(shù)據(jù)庫開發(fā)工程師還需要跟進具體的生產(chǎn)環(huán)境使用情況,參與具體問題的改進和優(yōu)化,提供解決方案。技能要求:1.通用基礎(chǔ)技能要求1)精通一種常用編程語言(C/C++、JAVA、PHP等),了解主流的框架、庫使用和原理2)深入了解計算機數(shù)據(jù)結(jié)構(gòu)和算法設(shè)計,具備Linux操作系統(tǒng)基礎(chǔ)知識3)掌握基本的網(wǎng)絡編程知識,熟悉多線程編程及其技巧4)熟練掌握Linux、webserver、數(shù)據(jù)庫、緩存相關(guān)技術(shù)的使用,了解內(nèi)部實現(xiàn)機制為最優(yōu)5)掌握數(shù)據(jù)庫基本原理和知識,熟悉SQL語法規(guī)則和特點6)有開源數(shù)據(jù)庫(MySQL、PostgreSQL等)研究和開發(fā)經(jīng)驗高階要求:1)熟練掌握分布式系統(tǒng)理論并有著大量實踐2)開源社區(qū)成員,為開源軟件提交過patch3)精通Linux系統(tǒng)IO、鎖等調(diào)優(yōu)技術(shù)軟素質(zhì)要求:1)有良好的英語閱讀能力,能夠閱讀英文資料2)自我驅(qū)動,主動的學習能力和較強的動手能力3)工作認真細致,有責任心,勤奮踏實,善于思考問題4)有時間觀念,獨立性強,溝通能力好,具有團隊合作精神職業(yè)發(fā)展:1.人才來源數(shù)據(jù)庫開發(fā)工程師的人才來源可以分為2個方面:應屆畢業(yè)生和社招。1)應屆畢業(yè)生:對于應屆畢業(yè)生來說,要想成長為數(shù)據(jù)庫開發(fā)工程師需要具備一些軟件研發(fā)方面的技能,同時對數(shù)據(jù)庫理論基礎(chǔ)有一定了解,對于數(shù)據(jù)庫管理系統(tǒng)有一些實踐經(jīng)驗,再加上較好的主動性、工作認真細致、具有團隊合作精神即可;2)社招:社會招聘主要可以從軟件研發(fā)和DBA兩個方面來篩選人才。對于之前從事大型分布式軟件系統(tǒng)研發(fā)的工程師,比較容易轉(zhuǎn)型為數(shù)據(jù)庫開發(fā)工程師,只需要熟悉一些數(shù)據(jù)庫架構(gòu)和理論基礎(chǔ)即可。而對于DBA來說,已經(jīng)擁有大量的數(shù)據(jù)庫運維經(jīng)驗,對于數(shù)據(jù)庫研發(fā)工作非常有幫助,此時再需要掌握一定的代碼編寫能力和分布式計算的基礎(chǔ),即可轉(zhuǎn)型成為數(shù)據(jù)庫開發(fā)工程師。職業(yè)發(fā)展方向:數(shù)據(jù)庫開發(fā)工程師的職業(yè)發(fā)展主要分為兩條線:技術(shù)方向和管理方向。1)技術(shù)方向:根據(jù)研究領(lǐng)域的不同,主要分為數(shù)據(jù)庫架構(gòu)師和數(shù)據(jù)庫運維技術(shù)專家兩個方向。數(shù)據(jù)庫架構(gòu)師:熟練掌握各種數(shù)據(jù)庫管理系統(tǒng)的架構(gòu)和內(nèi)部原理,能夠根據(jù)實際業(yè)務需求,設(shè)計出不同的數(shù)據(jù)庫應用系統(tǒng)架構(gòu),并在業(yè)務高速發(fā)展時,提供數(shù)據(jù)庫模型設(shè)計的優(yōu)化建議和解決方案數(shù)據(jù)庫運維技術(shù)專家:這個發(fā)展路線與高階DBA的發(fā)展路線比較相似。當數(shù)據(jù)庫開發(fā)工程師在跟進和解決數(shù)據(jù)庫生產(chǎn)環(huán)境問題的過程中,積累了大量的運維經(jīng)驗,熟練掌握了大量先進的數(shù)據(jù)庫運維技術(shù),比如分布式部署、性能監(jiān)控、彈性擴容等,可以成長為數(shù)據(jù)庫運維技術(shù)專家,為各產(chǎn)品提供數(shù)據(jù)庫架構(gòu)設(shè)計和優(yōu)化建議。2)管理方向:從數(shù)據(jù)庫開發(fā)工程師開始持續(xù)發(fā)展,積累了一定技術(shù)深度,并且通過與業(yè)務部門交互溝通鍛煉了較強的協(xié)調(diào)和推進能力,可以轉(zhuǎn)型為管理崗位。管理崗位的常見發(fā)展路徑包括經(jīng)理、總監(jiān)、CTO、CEO等,往往在小型創(chuàng)業(yè)公司管理崗位發(fā)展迅速,在中大型公司的發(fā)展速度相對較慢。行業(yè)競爭力1.薪酬競爭力1)橫向?qū)Ρ龋簲?shù)據(jù)庫開發(fā)工程師屬于專項領(lǐng)域的高質(zhì)量技術(shù)人才,市場需求旺盛,薪酬競爭力較高,往往高于軟件研發(fā)工程師2)縱向?qū)Ρ龋弘S著經(jīng)驗和技術(shù)深度的積累,越資深的研發(fā)工程師往往越值錢。但是公司規(guī)模不同,薪酬往往差別較大。由于小公司在數(shù)據(jù)庫研發(fā)領(lǐng)域起步晚,需求低,因此中小公司的薪酬往往略低于BAT等大型公司。3)第三方薪酬調(diào)查報告:《2013年數(shù)據(jù)庫工程師薪酬調(diào)查報告《DatabaseDeveloperSalary市場需求1)數(shù)據(jù)庫研發(fā)行業(yè)的市場價值:參考ITOM(ITOperationManagement)2013年的市場規(guī)模是190億美金2)人員需求:中大型公司尤其緊缺,初創(chuàng)公司需求量較低3.技術(shù)能力1)數(shù)據(jù)庫開發(fā)工程可以接觸到最前沿的數(shù)據(jù)庫系統(tǒng),目前業(yè)界比較流行的數(shù)據(jù)庫系統(tǒng)主要分為關(guān)系型的和非關(guān)系型的,這些數(shù)據(jù)庫都成為當前國內(nèi)外大型公司的底層存儲系統(tǒng)。關(guān)系型數(shù)據(jù)庫:MySQL、Oracle、SQLServer、IBMDB2非關(guān)系型數(shù)據(jù)庫(NoSQL):Redis、MongoDB、HBase、Cassandra2)根據(jù)不同應用場景,數(shù)據(jù)庫架構(gòu)又可以分為單機數(shù)據(jù)庫、集群式數(shù)據(jù)庫、分布式數(shù)據(jù)庫和云數(shù)據(jù)庫等。由于經(jīng)驗的不同,數(shù)據(jù)庫開發(fā)工程熟練掌握的數(shù)據(jù)庫架構(gòu)往往不同,越高階的數(shù)據(jù)庫開發(fā)工程掌握和了解業(yè)界的數(shù)據(jù)庫架構(gòu)前沿知識越豐富。數(shù)據(jù)開發(fā)工程師的發(fā)展前景好,月薪也高,是一個非常不錯的職業(yè)。本文由培訓無憂網(wǎng)喜巧發(fā)布,更多信息歡迎關(guān)注培訓無憂網(wǎng)數(shù)據(jù)庫開發(fā)工程師培訓頻道或添加老師微信:15033336050...