• 招生咨詢熱線:4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢熱線
4008-569-579
機(jī)構(gòu)主頁 > 機(jī)構(gòu)新聞 > 成為合格的程序員需要做到三點(diǎn)
機(jī)構(gòu)主頁 > 機(jī)構(gòu)新聞>成為合格的程序員需要做到三點(diǎn)

成為合格的程序員需要做到三點(diǎn)

來源:北京達(dá)內(nèi)教育        時(shí)間:2023-05-25        熱度:35℃        返回列表

成為合格的程序員需要做到三點(diǎn),新人通常會(huì)從新加一個(gè)相似的功能或者修bug開始逐步熟悉原有的系統(tǒng),作為新人,做了別人不愿意做的事可以緩和他人的壓力;做了別人沒做的事,將為團(tuán)隊(duì)增加產(chǎn)出。

最近組內(nèi)先后招了兩名開發(fā),作為他們的mentor,一方面我在觀察他們的工作方式和編碼習(xí)慣,另一方面也在對比思考自己的經(jīng)歷。自己有些感悟,覺得一名新人程序員,成為合格的程序員需要做到三點(diǎn)

一、遇事追蹤溯源,不要怕改已有的代碼

新人通常會(huì)從新加一個(gè)相似的功能或者修bug開始逐步熟悉原有的系統(tǒng),這時(shí)無論原有的代碼寫的怎么樣,都應(yīng)仔細(xì)的思考每段相關(guān)代碼的作用和對應(yīng)的需求,努力做到追蹤溯源,掌握它們的來龍去脈,這時(shí)再做task就會(huì)游刃有余,在做相似功能時(shí),你知道哪些地方已經(jīng)實(shí)現(xiàn)可以復(fù)用,哪些地方因?yàn)樾录拥拇a應(yīng)該做些重構(gòu);

修bug時(shí),你可以從根本原因出發(fā),解決問題,而不是在出現(xiàn)問題的地方修修補(bǔ)補(bǔ);更重要的是你不會(huì)打怵修改原有的代碼而躡手躡腳。

當(dāng)然一旦發(fā)現(xiàn)要修改大段的原有代碼或者設(shè)計(jì),還是要主動(dòng)和老員工先確認(rèn)下思路是否可行,是否有遺漏的地方再開始。但不出意外,你會(huì)一下子就給別人留下一個(gè)好的第一印象,因?yàn)槟銢]有在機(jī)械的完成任務(wù),而是先做了深入思考。

寫到這里不禁想起,自己剛工作時(shí)改了一個(gè)bug,當(dāng)時(shí)的做法是在創(chuàng)建一個(gè)文件的代碼之后3行再把這個(gè)文件刪了,只加了一行代碼就修好了,發(fā)給老員工review時(shí)還在竊喜自己只改一行代碼就解決問題了,結(jié)果老員工一句話就把我問傻了,前面的那個(gè)文件為什么要?jiǎng)?chuàng)建呀?

我當(dāng)然不知道了,因?yàn)楫?dāng)時(shí)我想原有的代碼我不熟悉就最好不動(dòng)。于是,那一刻我得到了工作生涯第一個(gè)重要的建議,應(yīng)該找到根本原因(root

cause)后再修改代碼。這時(shí)你不僅可以做好手中的任務(wù),還能進(jìn)一步思考問題是不是代碼設(shè)計(jì)不合理造成的,同時(shí)不會(huì)怕改已有的代碼。

二、編碼在保證正確的前提下,要足夠快

新人在做第一個(gè)任務(wù)時(shí)都想留下好印象的,首先要做的就是一定要保證修改是正確的,這里不僅局限于正常情況下功能正確,還應(yīng)考慮邊界條件,錯(cuò)誤處理情況等等,最后再提交代碼時(shí)要最終確認(rèn)一下單元測試過不過,提交代碼后再注意下Jenkins

bulid過不過。這一切都是為了防止出現(xiàn)以下情況:

一提交代碼就break build或unit test

測試隨便一點(diǎn)就有各種問題

匆匆忙忙修了一個(gè)問題,一提交又有其他問題

別以為這些都些小事,它直接關(guān)乎別人對你的評價(jià)。不犯低級錯(cuò)誤,建立起嚴(yán)謹(jǐn)?shù)挠∠螅欠浅S兄谀阍谛颅h(huán)境下脫穎而出的。

但僅僅這樣是不夠的,如何在保證正確的前提下,提高速度或者效率則是另外一個(gè)要點(diǎn)。試想一下,你持續(xù)超出別人的預(yù)期,并保質(zhì)保量的完成了task,哪個(gè)領(lǐng)導(dǎo)和同事會(huì)不喜歡你呢?

千萬不要狹隘的覺得自己做的快了要多做事,何苦呀。也許短期內(nèi)你多做了一些原本沒分配給你的任務(wù),但你在別人心中逐步建立起嚴(yán)謹(jǐn)高效的印象,從長期來看將給你帶來更多的機(jī)遇。

三、主動(dòng)承接團(tuán)隊(duì)里他人不愿意做或者沒做的事

逆向思考下,人家為什么招你進(jìn)來?相信絕大多數(shù)情況是事情多做不過來,缺人了。事情多了一定有老員工不愿意做,或者因?yàn)楦鞣N原因沒做的事。

作為新人,做了別人不愿意做的事可以緩和他人的壓力;做了別人沒做的事,將為團(tuán)隊(duì)增加產(chǎn)出,如果這件事還是一個(gè)技術(shù)難題,那不是正好可以讓別人眼前一亮,證明自己的實(shí)力嗎?

其實(shí)關(guān)于這一點(diǎn),在做的時(shí)候要進(jìn)一步深入思考。

別人為什么不愿意做或者沒做某些事?是因?yàn)槿狈ο嚓P(guān)知識(shí)而沒有做?還是因?yàn)闆]有自動(dòng)化每次手動(dòng)操作既耗時(shí)又容易出錯(cuò)?是因?yàn)閮?yōu)先級不高?還是因?yàn)橥度氘a(chǎn)出比不高?是因?yàn)榇a結(jié)構(gòu)不合理導(dǎo)致無法快速加上?還是因?yàn)樾枨蟛幻鞔_?是不是團(tuán)隊(duì)里的人因?yàn)樗季S定式錯(cuò)誤估計(jì)了問題?是不是可以從其他的角度解決這個(gè)問題?

要深入思考后,才能從根源入手,從而正確的解決問題。切記不要機(jī)械的完成任務(wù),要努力讓你的加入使團(tuán)隊(duì)變的更好。

自己在第二份工作的開始階段,就發(fā)現(xiàn)團(tuán)隊(duì)還沒有使用持續(xù)集成的工具在統(tǒng)一的環(huán)境下交付測試,測試還在通過訪問開發(fā)機(jī)器上的網(wǎng)站驗(yàn)證功能,結(jié)果開發(fā)之間互相break情況經(jīng)常發(fā)生,項(xiàng)目質(zhì)量也無法保證。詢問后才知道,大家也很希望改進(jìn)現(xiàn)狀,只是因?yàn)橐恍┰驔]法得到系統(tǒng)組的支持,組內(nèi)也沒人來搭建持續(xù)集成的環(huán)境。

于是我利用一開始相對輕松的時(shí)間,使用teamcity搭建出持續(xù)集成的環(huán)境,一時(shí)間大家都紛紛叫好,加上自己又接連解決了項(xiàng)目中一些棘手同時(shí)沒人做的問題,一下子就樹立了可靠的形象和在團(tuán)隊(duì)里技術(shù)主力的地位,慢慢的即使是公司中其他組沒合作的過的人也對我評價(jià)很高。我自己琢磨出的原因是團(tuán)隊(duì)里缺能干活的人,但更缺能讓團(tuán)隊(duì)變好的人。

其實(shí)巧的是,如何使用teamcity搭建持續(xù)集成環(huán)境是我在第一份工作離職交接時(shí)主動(dòng)做的最后一個(gè)task,因?yàn)楫?dāng)時(shí)有個(gè)小項(xiàng)目是我獨(dú)立負(fù)責(zé)的,我想在交接時(shí)讓項(xiàng)目更正規(guī)些,就主動(dòng)提出這個(gè)想法,雖然在離職的前天晚上還在加班調(diào)試,當(dāng)天上午還在和同事討論一些細(xì)節(jié),但就是這主動(dòng)多做學(xué)會(huì)的技能成了我在第二份工作里出色開端的重要一環(huán)。

感謝大家閱讀由java職場分享的“成為合格的程序員需要做到三點(diǎn)”希望對大家有所幫助,想了解更多培訓(xùn)信息請關(guān)注java培訓(xùn)機(jī)構(gòu)官網(wǎng)

免責(zé)聲明:以上內(nèi)容僅作為信息傳播,文中部分信息來源于互聯(lián)網(wǎng),僅供閱讀參考。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部