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