那對于高級工程師應(yīng)該做什么?具備哪些能力才是高級工程師?
我想在這個(gè)時(shí)代,“高級工程師”已經(jīng)不是過去我們印象中的高級工程師。或者換句話說,“高級工程師”已經(jīng)不再是真正意義上的高級工程師。
所謂“高級”的具體含義,取決于你所在組織的實(shí)際需求以及運(yùn)營方式。我的大部分工作經(jīng)驗(yàn)都源自小型企業(yè),因此今天提到的相關(guān)職位可能更傾向于中小企業(yè)。不過根據(jù)我的經(jīng)歷,很多大企業(yè)中也存在類似的模式。下面,我將結(jié)合自己的認(rèn)知,對“高級”一詞作出更為詳盡的解讀。
專業(yè)知識(shí):有時(shí)候,積累特定領(lǐng)域的專業(yè)知識(shí)往往需要耗費(fèi)大量時(shí)間。如果你面對的是具有嚴(yán)格規(guī)范約束或相對復(fù)雜的領(lǐng)域,那么高級一詞可能代表著“這里不適合新人”。這里,高級也就意味著專業(yè)。
技術(shù)深度:要求相關(guān)人士曾經(jīng)使用過精確的技術(shù)堆棧。術(shù)語、庫以及相關(guān)缺陷,這一切都在不斷變化并持續(xù)提出新的要求。因此如果你希望成為一位高級技術(shù)人員,那么萬不可有半點(diǎn)取巧之心。舉例來說,如果你的應(yīng)用使用 Django 編寫而成,則你需要一位高級 Django 技術(shù)人員——無論候選人對 Rails 或 Laravel 多么熟悉,都將無法勝任這一職位。對于 PostgreSQL 也是如此(相對于 MySQL 而言)。我發(fā)現(xiàn)很多從業(yè)者都在職位申請當(dāng)中體現(xiàn)出了這樣嚴(yán)謹(jǐn)?shù)膽B(tài)度,但卻鮮有企業(yè)對此加以重視。總而言之,我們應(yīng)當(dāng)將這一點(diǎn)作為簡歷篩選當(dāng)中的一項(xiàng)重要條件。
技術(shù)廣度:這是指能夠運(yùn)用類似工具,并在類似情況之間加以類比以加快工作速度的能力。有時(shí)候,也許你找不到完全適應(yīng)崗位需求的人選,這時(shí)候你可以擴(kuò)大搜索范圍。從宏觀層面來講,MySQL 與 PostgreSQL 之間其實(shí)存在很多相似的特征,因此將 PostgreSQL 的知識(shí)映射至 MySQL 身上(反之亦然)可能將帶來奇效。這樣的高級開發(fā)人員在與具有 “精確的技術(shù)層面技能儲(chǔ)備”的人士進(jìn)行協(xié)作時(shí),效果最佳——因?yàn)殡p方將能夠充分運(yùn)用術(shù)語進(jìn)行溝通并使用各類資源庫。
實(shí)用類人才:這類高級開發(fā)人員能夠填補(bǔ)團(tuán)隊(duì)當(dāng)中的空白。他們能夠注意到目前工作中的缺失部分,包括是否有必要構(gòu)建系統(tǒng)、說明文檔、項(xiàng)目管理、用戶測試、設(shè)計(jì)乃至其它方案,并及時(shí)提出意見或倡議。這一點(diǎn)對于小型企業(yè)而言尤為重要。
領(lǐng)導(dǎo)力:對于高級開發(fā)人員而言,這種能力將引導(dǎo)團(tuán)隊(duì)最終實(shí)現(xiàn)業(yè)務(wù)目標(biāo)。其中具體包括了解目標(biāo)的重要性、關(guān)注目標(biāo)方向、將目標(biāo)傳達(dá)給整個(gè)團(tuán)隊(duì),以及在目標(biāo)難以實(shí)現(xiàn)時(shí)繼續(xù)保持團(tuán)隊(duì)團(tuán)結(jié)穩(wěn)定。
培訓(xùn):這種能力有助于在組織之內(nèi)培養(yǎng)出更多人才。無論是否建立有正式的導(dǎo)師計(jì)劃,技能的轉(zhuǎn)移與傳授每時(shí)每刻都有可能發(fā)生(且并不一定是由更具經(jīng)驗(yàn)的一方擔(dān)任輔導(dǎo)者角色)。這要求相關(guān)人員具備同理心。另外,如果你所在的企業(yè)本身就缺乏經(jīng)驗(yàn)豐富的開發(fā)人員,那么則應(yīng)建立起更為正式的相互輔導(dǎo)制度。
謙卑心:高級開發(fā)人員之所以稱得起“高級”,是因?yàn)樗麄冊?jīng)犯下過錯(cuò)誤。這讓他們有能力承認(rèn)錯(cuò)誤、從錯(cuò)誤中學(xué)習(xí),并努力思考如何避免犯下新的錯(cuò)誤。
持續(xù)學(xué)習(xí)者:這類高級開發(fā)人員會(huì)不斷研究新技術(shù)與新進(jìn)展,并思考如何將其與現(xiàn)有問題空間聯(lián)系起來。一般來講,他們只會(huì)在自己的業(yè)余時(shí)間當(dāng)中研究技術(shù)。而如果他們足夠出色,他們也會(huì)樂于展示自己的成果,并提倡在不影響長期可維護(hù)性的前提下對新型技術(shù)(通過峰會(huì)以及黑客馬拉松等形式)進(jìn)行探索。
跨部門協(xié)作:這種能力將在企業(yè)之內(nèi)建立起誰知道 / 誰擁有的內(nèi)部知識(shí)模式。在招聘新任開發(fā)人員時(shí),這些新人可能并不清楚現(xiàn)有結(jié)構(gòu),但也許曾在原本效力的企業(yè)內(nèi)見到過類似的機(jī)制。具備這方面知識(shí)的人明確知曉該由誰發(fā)布任務(wù)要求,又該由誰對相關(guān)變化作出通知。這種方式能夠避免為錯(cuò)誤問題找尋正確解決方案時(shí)所帶來的巨大投入與資源浪費(fèi)。這一點(diǎn)在小型企業(yè)中往往更為重要。
項(xiàng)目管理:根據(jù)你所在團(tuán)隊(duì)或企業(yè)的實(shí)際規(guī)模,高級開發(fā)人員可能需要在客觀上擔(dān)任項(xiàng)目經(jīng)理一職。他們可能并不喜歡這類工作,但又無法回避這份責(zé)任——因?yàn)樗麄儠?huì)意識(shí)到,如果缺少管理那么事情最終會(huì)出現(xiàn)哪些問題(參見之前提到的‘謙卑心’)。
開發(fā)支持 / 運(yùn)營 /DevOps:換句話說,高級開發(fā)者也需要干一些『雜活』,但這些工作卻又反過來可以迅速提升團(tuán)隊(duì)的戰(zhàn)斗力。比如規(guī)定編碼風(fēng)格、Debugging Jenkins 中執(zhí)行失敗的 job、維護(hù) Docker 鏡像、設(shè)置監(jiān)控系統(tǒng)等。
關(guān)于現(xiàn)有應(yīng)用程序的深度知識(shí):對于這方面工作,你需要做的顯然并非招聘專門的高層管理者,而是培養(yǎng)開發(fā)者并使其成長為領(lǐng)導(dǎo)者。這類高級人士了解應(yīng)用程序代碼發(fā)展道路上一切問題的答案。如果他們足夠出色,還能夠以書面資料的方式分享自己的知識(shí)。
因此,當(dāng)你發(fā)布“高級”工程師這類職位描述時(shí),請認(rèn)真考慮之前提到的各項(xiàng)因素。如果找不到一位擅長這一切的人選,那么你顯然應(yīng)當(dāng)作出自省——你到底需要什么?你的企業(yè)又需要什么?
今天文末推薦極客邦科技總裁池建強(qiáng)老師的微信公眾號(hào) MacTalk。MacTalk 開通于 2012 年末,內(nèi)容起于 Mac 而不止 Mac,內(nèi)容覆蓋了技術(shù)、創(chuàng)業(yè)、產(chǎn)品和人文思考,文風(fēng)有趣,又有一點(diǎn)力量。
比如上周朋友圈里廣泛傳播的這段話就是他說的,我看了以后深受啟發(fā)。
在我們漫長的職業(yè)生涯,每個(gè)人都希望有個(gè)完美的職業(yè)規(guī)劃,建立超高人氣的個(gè)人影響力,維護(hù)良好的人際關(guān)系……如何做到呢?欲登高而窮目,勿筑臺(tái)于浮沙,先把自己手頭的事做好。做成一件事,然后再做成另一件事,讓優(yōu)秀成為習(xí)慣,讓自己成為稀缺資源,自然會(huì)有優(yōu)秀的人來找你一起做事。
成長最好的起點(diǎn)是什么?做出一款完整的產(chǎn)品,完成一項(xiàng)有價(jià)值的任務(wù),并且得到你的用戶和工作伙伴的認(rèn)可。
如果你總覺得懷才不遇,想想自己,做成過一件事嗎?
具有1-5工作經(jīng)驗(yàn)的,面對目前流行的技術(shù)不知從何下手,需要突破技術(shù)瓶頸的可以加群。在公司待久了,過得很安逸,但跳槽時(shí)面試碰壁。需要在短時(shí)間內(nèi)進(jìn)修、跳槽拿高薪的可以加群。如果沒有工作經(jīng)驗(yàn),但基礎(chǔ)非常扎實(shí),對java工作機(jī)制,常用設(shè)計(jì)思想,常用java開發(fā)框架掌握熟練的可以加群。
-
工程師
+關(guān)注
關(guān)注
59文章
1569瀏覽量
68504
發(fā)布評論請先 登錄
相關(guān)推薦
評論