設為首頁收藏本站

                      LUPA開源社區

                       找回密碼
                       注冊
                      文章 帖子 博客
                      LUPA開源社區 首頁 業界資訊 技術文摘 查看內容

                      倔強的程序員

                      2018-12-19 13:37| 發布者: joejoe0332| 查看: 1544| 評論: 0|原作者: 四火的嘮叨|來自: oschina

                      摘要: 對于程序員來說,大多數人公司都有技術和管理兩條發展路線,通常在同一家公司,管理路線的發展可能性,要相對廣闊一些;但是技術路線也有技術路線的好處,比如相對而言更依賴于硬實力,因而工作機會豐富。我相信有不 ...

                      對于程序員來說,大多數人公司都有技術和管理兩條發展路線,通常在同一家公司,管理路線的發展可能性,要相對廣闊一些;但是技術路線也有技術路線的好處,比如相對而言更依賴于硬實力,因而工作機會豐富。我相信有不少程序員都和我一樣,堅守著技術路線,無論是進還是退,都對管理者的崗位沒有什么興趣。

                      興許大家都聽到軟實力和硬實力的概念。對于一個技術人來說,硬實力大致上可以認為是計算機和軟件工程相關的技術能力,1 還是 0,是還是非,會不會算法,懂不懂設計,清清楚楚,明明白白; 而軟實力則反過來,聽起來挺抽象,挺模糊,比如溝通能力,自我管理能力,但是卻扮演者重要的角色,甚至隨著職業生涯的發展,它的影響力越來越大。而性格,是軟實力中一個很特別的影響因素。


                      下面我講的是在程序員技術發展路線中,“倔強”性格的影響這一個窄窄的范圍,而且是就我的認知而言的。顯而易見它不可能是很客觀的。我相信會有很多人持有不同的看法。

                      我想大家都認可的是,基本上每個團隊里面都有各種脾氣性格的人。記得我剛工作的時候,團隊里面平和和好說話的人更多。多數人性格都比較平和,這可能和資歷、眼界等等因素也有關。以前讀過一篇文章,說一個團隊里面,有各種各樣的角色,有牛、有豬,有狗、有猴子等等等等,分別代表著不同的性格。隨著時間的試煉,大家發展的情況各不相同。在討論方案和問題的時候,肯定有人不同意,但是只要多數人決定了做法,或者是幾個強硬派決定了做法,大多數人也就不再計較,因此 commitment 比較容易做出,且朝著一致的方向。

                      但是隨著工作年頭的增加,我發現團隊里面個人的性格,普遍是越來越倔了。無論什么時候我們討論問題,觀點不同是司空見慣的。可現在不同的是,要達成一致,并不是那么容易的事情。好吧,大多數人支持方案 A,少數人支持 B,興許幾年前這票支持 B 的就表示愿意按照多數派的 A 來實施了;可是現在呢,少數派一定要爭論下去,技術方案的選擇不是少數服從多數的選舉,為什么要 A,我們來給 A 和 B 做做分析,我們來激烈地爭論吧……

                      以前我認為,職業生涯的發展,到一定階段,高級別一些的工程師,想必也是性格各異的吧,應該有的人比較強硬,有的人比較容易 pushover 的吧,性格這東西嘛,分布都是有隨機性的。可是如今我接觸到的情況呢,卻恰恰相反。 這些發展比較好的程序員,相對于其年齡和資歷,級別比較高的程序員,居然性格幾乎無一例外的“倔強”。 而那些性格比較“好”的呢,相對來說發展普遍都沒有那么好。看到的案例多了,似乎可以粗略地得到這樣的結論:走技術路線的程序員中,性格倔強的人不一定發展得快,但是性格平和的人肯定不行。

                      雖然我能看得到的案例數量并不大,但我依然覺得這個現象有一定代表性。我覺得這里有這么幾個因素:

                      • 倔強的程序員,往往也是較真的程序員,他們會追求最佳的解決方案,他們會追求最合理的代碼實現,他們可能摳一點某些人看來無足輕重的東西,但是就是這些東西把軟件的質量提高。

                      • 倔強的程序員,懂得維護自己認為正確的觀點,而為了維護這個觀點,會反復思考和分析。我沒有見過一個能把 trade-off 做得好的人對維護自己的觀點抱無所謂的態度。

                      • 倔強的程序員,遇到困難也不那么容易退縮。這也是顯而易見的,性格軟弱的人,通常也不愿意堅持己見。

                      • 倔強的程序員,他們享受爭論的過程,也就更能夠在爭論中得到多樣的視角。

                      但是,物極必反,倔強的程序員,也可能死得特別慘。我見過一些 被踢出團隊的程序員,大致分為兩類。一類是能力實在不足,績效特別差,比如代碼寫得又慢 bug 又多;還有一類就是這類硬骨頭,倔強到難以維持基本客觀的程度,到處樹敵,太過拖累整個團隊的工作。

                      再結合程序員工作中的許多具體事情,再進一步談一談這些倔強的程序員們。就說個有趣的事情吧。我們把他們中的其中一個,叫做大 Z(這個字母看著就很霸氣),而相對不那么“難搞”的程序員,叫做小 s。

                      在一次的設計討論會議上大 Z 說對小 s 說,我認為你的方案不如我的好,理由是 xxxxx,于是大 Z 和小 s 來來回回一番爭論,剛開始還算可控,但是大 Z 說,“我覺得你缺少擴展性的常識”。有經驗的人可能馬上意識到,大 Z 的這句話已經從“對事”變成了“對人”,這明顯是不對的。于是這句話一冒出來,小 s 馬上就不高興了,再不痛不癢辯論幾句以后,沒有繼續爭論下去,顯得很失落。

                      這個場景看起來是不是很熟悉?哪怕小 s 是更在理的一方,也放棄了繼續爭論下去的欲望,反而落得自己不爽好幾天,每次和大 Z 溝通都會想著當時的場景,甚至覺得大 Z 還會有意無意針對他。有人可能會覺得,那大 Z 會不會事后覺得自己過分呢?我想說,大多數情形下,不會的, 以大 Z 的性格來說,他冒犯了小 s,他也許意識到了,也許沒意識到,可是這樣的事情他根本就不會放在心上 。回到事情本身,誰的方案更合理很難講,但這件事情本身傷害到了團隊中的成員,影響了團隊的氛圍。我們可能見到類似的事情到處都是,甚至在某些溝通強烈的地方尤為嚴重,比如 code review。

                      多數情況下,我們撇開技術本身的因素,誰的發展更好呢?卻是大 Z。雖然有少數情況并非如此,但是多數情況下,大 Z 卻有著更更為廣泛的影響力,而 某些情況下爭論所顯露出來的 backbone 會蓋過他在爭論和為人上面的“惡霸”屬性 。這也從某種角度說明,為什么到了一定級別的程序員,且不論技術如何,心理承受能力和溝通的技巧,都是有一定造詣的,那些敏感而脆弱的呢,已經掛在晉升的半路上了。

                      交流和溝通本身就是一個說不清道不明的復雜體,很多人可能會想要安安心心做技術,我相信也有很多公司希望提供這樣環境。可事實是,絕大多數情況下,越是這樣想的人,就越會發現,這只是一種美好的愿望,不可避免地,有很多為人處世上的“屁事”,未必要上升到“職場政治”那么高的程度,卻依然會考驗你的心理,磨煉你的性格。

                      最后,從團隊管理的角度來說,哪一種人更合適呢?

                      其實,“合適”這個詞的定位很難講,但是倔強的程序員通常更難管理,這倒是真的。可是,換一個角度想這個問題,為什么要“管”,管理又要做到怎樣的侵入性?理想的狀況是,雖然有一些性格似乎比較“強硬”的程序員,但是他們是講原則,講道理的,如果團隊的成員在總的目標上大致是一致的,團隊就能夠具備一定的兼容性。可理想畢竟是理想,團隊中的磕磕碰碰遇到誰都能喝一壺的。特別是,如果管理者想成為那個決策絕大多數事情的人,碰到這些倔強的“大爺”們,很可能就會碰一鼻子灰。

                      在我的職業生涯中,待過好些團隊,我見過這種管理者和倔強的程序員們之間的碰撞,有在掙扎和妥協中尋求平衡的,有程序員滾蛋的,也有管理者掃地出門的,甚至有兩敗俱傷,魚死網破的。這里面也有很多有趣的故事,下次再說吧。

                      來源:四火的嘮叨


                      酷斃

                      雷人

                      鮮花

                      雞蛋

                      漂亮
                      • 快畢業了,沒工作經驗,
                        找份工作好難啊?
                        趕緊去人才芯片公司磨練吧!!

                      最新評論

                      關于LUPA|人才芯片工程|人才招聘|LUPA認證|LUPA教育|LUPA開源社區 ( 浙B2-20090187  

                      返回頂部
                      双色球中奖图片

                                                              安徽时时预测 重庆时时如何看胆码 北京5分赛历史 燕赵风采2o选5开奖 福建体彩19050期 秒速时时开奖走势 福彩深圳风采走势图 11235倍投什么意思 bbin体育比分 内蒙古时时三星开奖走势图