溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

程序員不同階段的使命感

發(fā)布時(shí)間:2020-07-23 13:11:13 來源:網(wǎng)絡(luò) 閱讀:166 作者:sxt程序猿 欄目:編程語言

 我們現(xiàn)在工作的軟件開發(fā)行業(yè)很奇怪。明明每年都有新的從業(yè)人員涌入人才市場,但企業(yè)依舊訴苦自己迫切需要大量的開發(fā)。這種問題已經(jīng)存在已久。
  軟件開發(fā)者這個(gè)行業(yè)非常年輕,也面臨著很嚴(yán)重的人才短缺問題。大部分的軟件開發(fā)項(xiàng)目無疾而終的原因是后期開支過于龐大。

  那些行業(yè)里的大佬是怎么建議我們的,他們說「世界上永遠(yuǎn)存在解決問題的辦法,但我們還是會(huì)遇到各種難題。因?yàn)槌俏覀冋嬲L試解決,否則永遠(yuǎn)不知道哪種方法奏效。」

  認(rèn)識一個(gè)現(xiàn)實(shí)吧,當(dāng)你從事開發(fā)工作三年以上,就可以稱呼自己為「高級開發(fā)者」。但實(shí)際上,有些人只是在這個(gè)位置上混三年,而他們只是虛有其表,水平嚴(yán)重不符合職位。

  一、開發(fā)者的高速成長期:

  身為一個(gè)程序員,我們生活在一個(gè) IT 系統(tǒng)越發(fā)復(fù)雜且多變化的時(shí)代。有時(shí)候執(zhí)行一個(gè)簡單的開源項(xiàng)目,都需要精準(zhǔn)定義并耗費(fèi)大量時(shí)間專注任務(wù)。尤其是當(dāng)你身為一個(gè)新晉程序員,或者對手下的數(shù)據(jù)庫還很陌生的時(shí)候。

  菜鳥程序員很難當(dāng)。你可能剛從一個(gè)還不錯(cuò)的大學(xué)畢業(yè),你覺得你已經(jīng)掌握了基本的常識。但突然間,你在工作上面臨的是另一套嶄新的知識。在很長時(shí)間內(nèi),你都對自己所要做的工作沒有任何頭緒。而對于上司提出的要求,你似乎只能妥協(xié),而且沒辦法作出有效質(zhì)疑。

  在這個(gè)階段,你必須要做的是專注。而且盡可能地放開心胸,去努力學(xué)習(xí)。初級開發(fā)者在工作之初,需要大量的練習(xí),指導(dǎo)、監(jiān)管,以及需要一個(gè)能幫助他們的老師。缺乏以上的任何條件,初級開發(fā)者都很難很難邁過這個(gè)初學(xué)者門檻。

  你可以說這個(gè)階段,是戰(zhàn)略上的積累狀態(tài),但就是要學(xué)習(xí)加積累,積累再學(xué)習(xí),缺一不可。

  初級開發(fā)者必須要專注代碼本身,在這個(gè)階段,不要分心想任何其他亂七八糟的事情。在開發(fā)一個(gè)項(xiàng)目時(shí),如果身為程序員想的是「我想讓自己的代碼在別人眼里看起來漂漂亮亮的」,而不是「我做的東西應(yīng)該以用戶感受第一」,那么他本身就是一個(gè)初級開發(fā)。

  二、中級開發(fā)者的瓶頸期間

  當(dāng)一個(gè)開發(fā)者脫離菜鳥階段成長為中級開發(fā)者時(shí),他們能夠在項(xiàng)目失敗時(shí)反省整個(gè)過程(通常,他們會(huì)看自己所做工作部分)。而且會(huì)意識到,比起匆匆忙忙埋頭苦干完成任務(wù),應(yīng)該在項(xiàng)目最初就建立起一些規(guī)矩。甚至于如果最開始有人指正他們,整個(gè)項(xiàng)目就能在最初避免走向失敗。

  而中級開發(fā)者還會(huì)體驗(yàn)另一個(gè)獨(dú)特心理過程,那就是當(dāng)他們回首一年前的工作。發(fā)現(xiàn)盡管當(dāng)時(shí)認(rèn)為「哎呦,自己做的還不錯(cuò)」,但現(xiàn)在會(huì)發(fā)現(xiàn)「這都什么玩意」啊。

  一個(gè)中級開發(fā)者是有能力通過以往經(jīng)驗(yàn)、文本資料、項(xiàng)目團(tuán)隊(duì)討論等方式,摸索出「正確方法」做事的人。在這個(gè)階段,學(xué)習(xí)構(gòu)建軟件的理論比學(xué)習(xí)構(gòu)建代碼更重要。

  另一方面,中級開發(fā)者假如自作主張起來,造成的危害比初級開發(fā)者更大。初級開發(fā)者只會(huì)堆砌算法,一個(gè)好的中級開發(fā)者努力方向是「模式設(shè)計(jì)」和「范疇驅(qū)動(dòng)設(shè)計(jì)」。這些技能是他們搭造 OO 系統(tǒng)的必備過程,學(xué)習(xí)完這些理論知識如果靈活運(yùn)用,可以讓他們更好地構(gòu)造項(xiàng)目。但如果僵硬使用,也會(huì)危害整個(gè)項(xiàng)目。

  有的時(shí)候,讓一名中級開發(fā)者搭造系統(tǒng),他耗費(fèi)的時(shí)間可能比初級開發(fā)者更長,而且更糟的情況是他可能帶整個(gè)團(tuán)隊(duì)走向迷途。很可悲的是,很多項(xiàng)目開發(fā)之所以走向失敗,因?yàn)轭I(lǐng)隊(duì)者自己只是一個(gè)中級開發(fā)者,他們?nèi)狈透呒夐_發(fā)者工作的珍貴經(jīng)驗(yàn)。團(tuán)隊(duì)領(lǐng)導(dǎo)自己,而且團(tuán)隊(duì)里其他人都沒有意識到這點(diǎn)。

  中級開發(fā)者很清楚自己在團(tuán)隊(duì)中起到的角色,能認(rèn)識到他們給團(tuán)隊(duì)工作帶來的價(jià)值。一個(gè)好的中級開發(fā)者知道代碼是用來解決問題的,而不是用來終結(jié)問題的。然而,中級開發(fā)者總?cè)菀紫萑胍环N認(rèn)知上的金字塔,那就是他們會(huì)遵循一些「正確的方式」去解決問題。

  三、高級,甚至是大神開發(fā)者需要滿足的條件

  一個(gè)高級開發(fā)者,不夸張地說,他能記住自己每次的錯(cuò)誤。他們甚至能在設(shè)計(jì)或者編寫代碼的時(shí)候,就能預(yù)見到很多失敗。他們會(huì)對錯(cuò)誤進(jìn)行非常敏銳地反饋,用一種誠實(shí)的方法去評估自己的成功和失敗。身為高級開發(fā)者,他會(huì)更傾向于熱愛復(fù)雜問題,但會(huì)癡迷于簡潔地解決它。

  高級開發(fā)者不會(huì)給其他開發(fā)者劃分等級。與之相比,他更多的是懂得。因?yàn)槎茫岳斫饷總€(gè)人在每個(gè)階段都有長處和短處。而他們也比別人更了解自己的長處和短處,力求把自己的優(yōu)勢最大化。

  一個(gè)高級開發(fā)者會(huì)懂得,所有理論基礎(chǔ)都有背景支持。他們不會(huì)執(zhí)著于「對的方式」去搭造軟件,而是把理論靈活運(yùn)用于實(shí)際,理論可以變通用于為客戶、團(tuán)隊(duì)和組織需要服務(wù)的工具。

  高級開發(fā)者會(huì)在項(xiàng)目過程中,設(shè)身處地了解客戶想要什么樣的工作結(jié)果,以及他們的喜好。畢竟這些東西,比開發(fā)者個(gè)人的偏好和成功更重要。他們永遠(yuǎn)不會(huì)說「那不是我的工作」,也永遠(yuǎn)不會(huì)推搡任務(wù)和責(zé)任。

  資深開發(fā)者會(huì)懂得一件事,那就是他們的工作是為了客戶提供解決方案,而不是埋頭寫代碼。而一位資深開發(fā)者永遠(yuǎn)會(huì)把自己團(tuán)隊(duì)能給顧客帶來多少價(jià)值放在考核標(biāo)準(zhǔn)。而不是把自己的努力和客戶需求放在對等的 PK 賽場里。

  誠然,因?yàn)檫@是一份工作,所以中間的過程總會(huì)非常枯燥和無聊。但資深開發(fā)者會(huì)退一步,思考怎么能解決和打破這些無聊的問題。他們會(huì)評估本源問題,直接解決它。或者他們會(huì)把枯燥情緒放在旁邊,修復(fù)日常必須要面對的問題。

  資深開發(fā)者也會(huì)懂得團(tuán)隊(duì)工作的高效。沒有人能自己做一切工作,他們會(huì)致力于提升自己團(tuán)隊(duì)的效率。他們把提高團(tuán)隊(duì)效率所做的行為,視為提高自己軟實(shí)力的一部分。

  如果你的團(tuán)隊(duì)中缺乏高級開發(fā)者,那這個(gè)項(xiàng)目基本都無一例外走向失敗。擁有中級開發(fā)者能讓你做事情非???,但是在工作中你會(huì)發(fā)現(xiàn),項(xiàng)目不僅僅只是搭造和維護(hù)程序。最終你只能關(guān)閉網(wǎng)站,或者用比預(yù)期中更高昂的價(jià)格維護(hù)它。只有高級開發(fā)者能選擇技術(shù)和網(wǎng)站,而不是任由他們來傷害你。

  很多需求很簡單,但大多數(shù)簡單需求后面,隱藏更復(fù)雜的需求。

  最重要的是,我們行業(yè)里需要新鮮的血液,需要招收那些剛從大學(xué)畢業(yè)充滿激情的年輕人。而即使給程序員劃分種類,也不可僅僅只看工作經(jīng)驗(yàn)。實(shí)際上我們招收程序員前,應(yīng)該先思考團(tuán)隊(duì)都需要那些人才。畢竟,我們招收的人才是為團(tuán)隊(duì)服務(wù)。招聘到錯(cuò)誤的人選,不過是給團(tuán)隊(duì)和項(xiàng)目幫倒忙。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI