国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何成為一名專業的程序員

工程師人生 ? 來源:工程師吳畏 ? 2018-11-30 10:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

“專業”,在百科里有下面這三種解釋:

學校里的學科

生產部門里的業務部門

有知識修養的專門職業者;職業畫家[演員等],職業選手;內行,專家

標題中的“專業”,指的是第三種解釋。請注意這個詞——“有知識修養”,有知識還不夠,還要有修養。

職場里各行各業,唯有“專業人士”,才能夠受人尊重;人們尋找幫助時,首先想到的也是對應領域里的“專業人士”。我們說一個醫生很專業,除了他醫術精湛之外,還有他心系患者、盡心盡責的醫德,同樣的,對于程序員,我們除了要有犀利的技術之外,還要有對應的職業修養。

業余選手 vs 專業主義

面對同樣一件事情,業余程序員(Amateurs)和專業程序員(Majors)往往有不同表現:

1)看到爛代碼時

A:WTF!!! 這代碼誰寫的!

M:讓我來重構它

2)項目進度緊張

A:哎,時間那么緊,考慮不了那么多了,先把功能做了再說

M:我得找經理商量,這么短時間是不可能把這個功能完全做好的

3)被同事打斷時

A:要么馬上被從工作中帶走,“啊,怎么啦”,要么很不耐煩,“少煩我,沒看我這正忙么”

M:“稍等一下哈…”,然后記下當前工作的上下文信息,讓自己重新回到工作時,能盡快進入狀態

4)業余時間

A:終于有時間好好睡個懶覺了

M:終于有時間學習新知識了

……

最近閱讀了一些關于程序員職業素養的書籍,發現專業的程序員,大都有下面這些特質:

主動學習

專業的程序員懂得不斷精進自己的專業技能,抽出時間來學習。就像《歡樂頌》里的趙醫生一樣,帶上你的Mac,找一家安靜的咖啡廳,待上一個上午,看最新的醫學文獻。程序員也要這樣做,必須不斷地更新自己的技能,提高自己的“基線”。

這里的基線是一個很重要的概念,用吳軍老師的話來說就是:

每個人的基線都不一樣,民間科學家的基線,決定了他們就算奮斗一生,最多也只能到達中科院科學家的基線。

我們只有通過不斷地學習,才能用知識把自己墊高,站的更高,才能看的更遠。

個人品牌意識

《軟技能——代碼之外的生存指南》里,作者提到,程序員要學會自我營銷,在業界打造自己的個人品牌。而在工作中也一樣,對公司和同事來說,你的名字就是一個品牌。別人一提到你的名字,就會想到這人的代碼寫的怎么樣、看他的代碼累不累、實現的功能質量怎么樣、Bug多不多…

專業的程序員會努力打造和維持自己的個人品牌,在同事心目中樹立一個品牌的形象。

代碼潔癖

專業的程序員不會僅僅滿足于實現功能,他們還會主動優化自己的代碼。

他們會聞到自己代碼里的壞味道,對變量命名、函數、注釋等進行重構優化。

專業的程序員遵守童子軍軍規——“讓營地比你來時更干凈”,他們知道“破窗”的危害,他們有代碼潔癖。

不畏懼任何代碼

專業的程序員在開發之前,會閱讀相關模塊的代碼,因為他們知道,文檔會撒謊,但是代碼不會。不管代碼寫的多難看,他們都知道,那才是反映系統真實運作機制的“文檔”。

如果代碼寫的非常一般,他們會對其進行一小步一小步的重構,每次重構之后都會運行單元測試,以確保自己的改動沒有對原先功能造成影響。

如果這個模塊之前沒有足夠的單元測試,那么在開始重構之前,專業的程序員會主動補充測試用例,因為他們知道,如果自己連測試用例都寫不出來,就根本談不上理解了這個模塊,也就根本沒資格去動這塊代碼。

如果代碼根本無法正常運行,在很多情形下都有Bug,那么專業的程序員不會浪費時間去重構,他們會選擇重寫。

重構,是在不改變代碼外在行為的前提下,對代碼作出修改,以改進程序的內部結構。 —— 《重構》,Martin Fowler

在這里墻裂推薦大家,把《重構》這本書放在自己座位旁邊,你不必一下子把這本厚厚的“重構字典”看完,因為它就是一本字典,在你需要重構的時候,去里面檢索就好,有興趣的同學可以前去看看我對怎么使用這本書的一些感受。

敢于說不

專業的程序員懂得主動掌控自己的工作,如果有一個需求最早也要在周五才能完全,但是領導要求必須在周三之前,他們不會說,“好,我盡量”,因為那不僅是在欺騙自己,還是在欺騙經理,最后傷害的是整個團隊。他們會跟經理商量,如果要在周三之前完成,哪些功能是無法實現的,讓經理作出取舍。

與此相反,不專業的程序員,往往會屈服于經理的權威,最終交付一個代碼質量極差、還帶有很多Bug的功能。

《程序員的思維修煉》中提到了德雷福斯模型,這個模型對“新手”的定義就是——只會按照指令列表做事,如果你不懂得說不。把別人交給你的每一件事都接下來,那你和“新手”也沒什么區別了。

不要以為你說“不”會辜負了經理的期望,相反,答應一件自己完成不了的事情才是對經理最大的辜負。學會說不,恰恰是你靠譜的表現。人們都喜歡真實的人,經理也不例外。

謹慎承諾 言出必行

專業的程序員不會輕易許下承諾,如果承諾,那必定是他自己能夠完全掌握的事情,而不是承諾需要依賴他人的事情。

比如你的模塊需要依賴Peter的模塊,你就不能承諾既把自己的模塊開發完成,還可以跟Peter的模塊完成對接,因為對接可以完成地前提是Peter能夠按時交付他的模塊,而這不是你能控制的。你能承諾的只有跟Peter一起坐下來,討論一下對接的方案,然后每天互相匯報一次各自的開發進度。

專業的程序員還懂得及時匯報風險。有些事情確實很難預測,這時候你就要去調整別人對你的預期,盡早向你的承諾對象發出預警,跟他溝通有沒有更好的解決方案。Peter就經常干這種事,每當工作被堵塞時,他會主動地跟項目經理說,“Bob,幫忙看個問題”,“Bob,感覺周三之前完成有很大風險啊…”

不在狀態不好的時候寫代碼

剛和老婆吵了一架,然后回去公司,心煩意亂地寫代碼?

通宵定位問題,然后在疲憊不堪時打算修改代碼解決這個Bug?

專業人士不會這么做,他們知道,在狀態不好的時候寫代碼,只會寫出一堆Bug。

善于對付中斷

編程時總免不了被同事打斷,一個突如其來的電話會議,右下角突然冒出來的聊天信息,還有Peter突然從背后過來的擁抱…

面對“打斷”,專業的程序員懂得說,“稍等一下…”,然后他們會在記下當前工作的上下文信息,讓自己重新回到工作時,能盡快進入狀態。

當然,如果你在跟別人結對編程,或者你用了TDD,那么保存上下文信息就變得非常簡單。

重視單元測試

專業的程序員知道單元測試的重要性,他們會把測試代碼和產品代碼看的一樣重要,他們還會使用TDD。

關于單元測試的重要性和TDD,我在之前的文章中有介紹過,歡迎閱讀:如何說服你的同事使用TDD

管理時間

專業的程序員對待會議的三項原則:

拒絕那些與自己無關的會議;

如果進入會議后發現自己沒必要參加,那么安靜的離席;

尊重對方的時間。只召集那些必要的同事參加會議,并且會在會議前整理好會議的主題和議程。

管理精力

專業的程序員能夠讓自己精力充沛地投入到工作中。

他們知道保持充足的睡眠,知道通過一些體力活動,來放松自己的大腦。

管理壓力

專業的程序員會盡量避免壓力,他們謹慎承諾,不答應做不到的事情;他們保持代碼的整潔,方便問題定位和重構代碼;他們堅持著自己的編碼原則,對自己交付的功能有很大信心,就算有Bug,也能很快定位處理。

而當壓力來臨時,專業的程序員不會驚慌失措,因為他們了解他們負責的代碼的邏輯,如果有不懂的地方,他們會及時溝通,向他人求助。

不固執

專業的程序員不會在一條道上耗費太多時間,一旦發現這是個死胡同或者泥潭,就會及時抽身,往回走。

編程之外的技術

專業的程序員不會是“離開了編輯器就渴死的魚”,他們具備計算機原理、TCP/IP協議這些計算機學科的基礎知識,他們對常用的Shell命令牢記于心,他們還善于使用各種工具的快捷鍵來提升他們的工作效率。

我的同事Peter就是這樣一個專業的程序員,作為一個前端工程師,他對網絡方面的知識非常熟悉,VLAN、網關、掩碼、信任域等等,簡直就是一本網絡百科全書,他操作起Linux命令行也是相當熟練,出現問題了,需要定位,他會說,“給我環境信息,我上去看看”,然后就是各種查找日志、抓包分析,他敲鍵盤的速度也是賊快賊快,我想,這大概是我見過最完美、最酷炫、最專業的程序員了吧。

以上就是我總結出來的專業程序員的特質。你心目中專業的程序員還有哪些好的職業素養呢?歡迎在評論區里和大家一起分享!讓我們一起做一只既有技術,又有修養的程序猿!

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 程序員
    +關注

    關注

    4

    文章

    956

    瀏覽量

    30942
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    大理的AI野心藏不住了——風花雪月中千程序員探討人工智能

    2025 年12月4日至6日第二屆CCF程序員大會暨大理人工智能與應用國際開發者大會在大理圓滿落幕。
    的頭像 發表于 12-24 17:45 ?721次閱讀
    大理的AI野心藏不住了——風花雪月中千<b class='flag-5'>名</b><b class='flag-5'>程序員</b>探討人工智能

    隼眼科技獲得第六屆綜合交通創新創業大賽總決賽第一名

    由中交集團舉辦的第六屆綜合交通創新創業大賽總決賽于12月16日落下帷幕,隼眼科技參賽的“基于92-94GHz毫米波雷達的全天候感知系統”獲得了第一名的好成績。
    的頭像 發表于 12-18 17:07 ?642次閱讀

    程序員最常見謊言

    了。 28我已經測試過了,這個功能沒問題,可以上線了。 29別擔心,這個問題很快就能解決。 30代碼快寫完了,已經完成 90% 了 。 希望大家對程序員些容忍以及諒解! 各位程序員你們都被我說中了哪些?說說你們的觀點
    發表于 12-10 08:24

    奔赴熱AI,碼力全開!Talkweb House@1024程序員日系列活動圓滿收官

    1024程序員日”系列活動至此劃上了個圓滿句號。本屆1024程序員節以“AI構建世界,智能引領未來”為主題,廣邀技術大咖、產業領袖、企業代表與全球開發者齊聚星城
    的頭像 發表于 10-27 18:59 ?782次閱讀
    奔赴熱AI,碼力全開!Talkweb House@1024<b class='flag-5'>程序員</b>日系列活動圓滿收官

    開鴻智谷“以賽促學、以賽選才”|1024程序員節暨開源鴻蒙構建大會圓滿落幕!

    10月24日,由開鴻智谷聯合主辦的長沙1024程序員節暨開源鴻蒙構建大會在長沙圓滿落幕。本次活動以“湘聚長沙,共赴熱AI”為主題,通過技術分享與實戰競賽相結合的方式,著力培養“開源鴻蒙+AI”領域
    的頭像 發表于 10-27 17:58 ?709次閱讀
    開鴻智谷“以賽促學、以賽選才”|1024<b class='flag-5'>程序員</b>節暨開源鴻蒙構建大會圓滿落幕!

    東風本田CR-V榮獲2025合資SUV質量體驗第一名

    近日,2025年中國汽車產品質量表現研究(AQR)結果發布暨頒獎典禮圓滿落幕。東風本田CR-V憑借卓越的質量表現,榮獲“合資SUV質量體驗第一名”的桂冠,這權威獎項不僅是對東風本田CR-V的肯定,更是對品牌在質量、品質等方面多年堅守“長期主義”的最佳褒獎。
    的頭像 發表于 10-09 09:56 ?605次閱讀

    作為一名PCB質檢工程師,我為什么在用手持式面銅測試儀?

    在PCB行業,銅厚直是決定阻抗、散熱與可靠性的關鍵指標。過去,工程師把板子搬到實驗室、等待臺式銅厚儀出結果;作為一名PCB質檢工程師,如今,我更愿意把“實驗室”揣進口袋——手持式面銅測試儀正在成為
    發表于 08-11 11:59

    軟通動力斬獲2024年中國IT服務市場份額第一名

    近日,賽迪顧問發布《2024-2025年中國信息技術服務市場研究年度報告》。軟通動力憑借在智能化轉型浪潮中的卓越表現,以領先的數智化能力持續領跑中國IT服務市場,不僅斬獲2024年市場份額第一名,更在IT咨詢、IT運維等核心領域鞏固優勢,綜合競爭力持續提升。
    的頭像 發表于 08-01 17:53 ?1929次閱讀

    潤和軟件穩居數字業務類解決方案市場第一名

    ”)憑借自身卓越的技術實力和創新能力,連續五年穩居數字業務類解決方案市場第一名;在細分領域:數字信貸系統解決方案子市場持續保持第一名,數字銀行解決方案子市場躍升至第一名。同時,其在開放銀行、交易銀行、智能營銷、智能風控、數據智能
    的頭像 發表于 07-14 17:36 ?1370次閱讀

    華為榮登GlobalData運營商基礎設施管理服務排名報告Leader象限第一名

    象限第一名。 報告對通信服務商從商業模式、解決方案、網絡設計與優化、網絡轉型能力、服務規模、和業務敏捷性六個維度進行了全面評估,華為綜合得分第。這印證了華為在對全球運營商客戶提供領先服務解決方案、網絡極致性能和數智化轉型等方面做出了卓越
    的頭像 發表于 05-22 18:43 ?1087次閱讀
    華為榮登GlobalData運營商基礎設施管理服務排名報告Leader象限第<b class='flag-5'>一名</b>

    如何成為一名合格的KaihongOS南向驅動開發工程師

    如何成為一名合格的南向驅動開發工程師 1. 我需要具備哪些方面的知識? KaihongOS南向適配的方向分為:驅動開發、內核開發。根據適配方向劃分,需要掌握的知識技能分別為: 驅動開發
    發表于 04-23 08:02

    如何成為一名合格的KaihongOS北向應用開發工程師

    培訓:參加相關的培訓、研討會或會議,不斷提升自己的技能。 10. 獲得認證 專業認證:如果可能,獲取相關的專業認證,這可以增加你的可信度和市場競爭力。 成為一名合格的北向應用開發工
    發表于 04-23 06:46

    如何成為一名嵌入式軟件工程師?

    如何成為一名嵌入式軟件工程師? 01明確崗位的角色與定位 嵌入式軟件工程師主要負責開發運行在特定硬件平臺上的軟件,這些軟件通常與硬件緊密集成,以實現特定的功能。 不僅需要精通編程語言(如C/C++
    發表于 04-15 14:37

    Gemini Vision + Raspberry Pi 化身“數字導盲犬”?

    本文討論了程序員利用樹莓派、攝像頭、Gemini和Python構建PeregrineEye設備,使其成為“數字導盲犬”為視障者服務的項目經歷,包括項目靈感、功能、構建過程、遇到的挑戰及未來計劃等
    的頭像 發表于 03-25 09:20 ?1926次閱讀
    Gemini Vision + Raspberry Pi 化身“數字導盲犬”?

    基于XIAO ESP32C6的HA空氣質量檢測儀設計

    今天小編給大家帶來的是來自MIT的Jason的基于XIAO ESP32C6的HA空氣質量檢測儀項目,作為一名程序員,Jason經常自己連續幾個小時坐在辦公桌前,沉浸在行行代碼中。后來意識到周圍的空氣質量,尤其是二氧化碳水平不斷
    的頭像 發表于 03-21 14:09 ?2153次閱讀
    基于XIAO ESP32C6的HA空氣質量檢測儀設計