<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                > 原文出處:https://www.phodal.com/blog/rethink-one-build-dream-team/ > 作者:?[Phodal Huang](https://www.phodal.com/blog/author/root/) ## ReThought (一): 如何構建理想的開發團隊 **引言**: 過去,關于理想的開發團隊似乎是一個熱門的話題,所以我也來湊湊熱鬧。人們想要理想的開發團隊,只是因為在傳遞知識的時候很痛苦。人們總在說,這個地球多你一個不多,少你一個不少。假想有一天你們團隊中的主力走了,那么你們的團隊會怎樣?塞翁失馬,焉知非福。 也許上個月我們團隊里走了個漢子,來了一個萌妹子。也許下個月會走個老人,那必然也會來個新人。對于個人來說,這是件好事。但是對于團隊來說,則有待商榷。于是,也將過去的一系列思考整理成一些文章,方便和以后的想法進行一些對比——有時候會發現最初的想法都挺好的,只是沒有記錄下來。 ## 最初的團隊 ![document/2015-09-25/5604dd1c91eca](https://box.kancloud.cn/document_2015-09-25_5604dd1c91eca.png) 有時,我在想最理想的團隊莫過于一些創業團隊了—— 分工明確。那些還存活著的公司在過去都有著那樣理想的團隊,然而隨著公司業務與團隊人數的增長,離這一些越來越遠。 在我認識的那些創業公司的前端人員中,多數可能還充當著后臺 API、App的開發,原因可歸類為: 1. 招不到人 2. 沒有錢 3. 不知道招什么人 (他們自己并沒有意識到自己不知道) 如《REWORK》一書中所說的那樣,只有在你真正受不了時才招人。如果同那些大公司一樣,漫無目的地進行撒網,那么早晚會死在這條路上。通常在那些存活下來的團隊(也包含沒有存活下來的團隊)里,一個人可能身兼多職,會有小部分的重疊,但是不會太多。 在這一個時期主導團隊往往是Idea的所有者,Owner找來一個技術人員,這個技術人員再依照短處去尋找需要的人才。 ![document/2015-09-25/5604dd2e45779](https://box.kancloud.cn/document_2015-09-25_5604dd2e45779.png) 隨著公司業務的發展,出于個人、家庭、團隊因素,總有些人會離職(人總是有需求的,WiFi應該是最底層的吧),總需要迎進新人。 ## 有序的團隊 最初整個宇宙是混亂的、整個系統是混亂的、整個組織是混亂的。通過不斷地分門別類,整個系統看上去似乎有序了。 ![document/2015-09-25/5604dd42aa87c](https://box.kancloud.cn/document_2015-09-25_5604dd42aa87c.png) 在這樣的團隊里,A做著A應該去做的事,B做著B應該去做的事。 1. 如果A和B很熟悉,可能產生出ab —— 可能是一個新的系統,也可能是一個新的生物。 2. 如果A和B不熟悉,那么通過公司的各種各樣活動會幫ta們產生ab。 3. 如果A和B不得已熟悉,那么我想這個ab可能是API。 在最初的團隊里,A和B可能只隔著10cm,后來他們越來越遠。 職能分明的團隊是一個解耦后的系統,他們間的溝通需要比原來花費更大的開銷。在傳統IT公司及大部分的互聯網公司都有這樣的"最后一公里"問題。引自之前的文章[《知識論(一): 知識傳遞》](https://www.phodal.com/static/media/uploads/rethink/https://www.phodal.com/blog/knowledge-transfer-part-1/)?: > 傳統軟件開發流程中,知識傳遞的方式主要在于文檔,而我相信在網上已經有足夠的證據可以表明,程序員既討厭看文檔,又討厭寫文檔。 無論是在系統集成環節,又或者是在交接環節,人們所做的一件事只是知識傳遞。因為職責讓你不可能接觸太多的東西,就好比原來你可以每天吃一點的藥,突然要你在短期內吃完。 ## 理想團隊 團隊類似于人物文明,更多地在于文化與知識的傳承。人們想要一個理想的團隊,但是他們往往并不知道他們真正的問題不在于團隊本身——而在于團隊是如何協作的。 ### 理想型A 在多數的公司里,團隊的組成方式類似于下圖: ![document/2015-09-25/5604dd517f559](https://box.kancloud.cn/document_2015-09-25_5604dd517f559.png) 如果有一天大牛出車禍了,中牛roll off了,團隊就剩下一堆綠帽子了... 在這樣的團隊里,我們可能會用下面的方式來教授團隊的成員: ![document/2015-09-25/5604dd59cbf5d](https://box.kancloud.cn/document_2015-09-25_5604dd59cbf5d.png) 即類似于傳統的授課制: 1. 你今天去把《Thinking Java》看一遍 2. 你今天去把《設計模式》看一下 3. ... 在這時候,那些領悟力比較好的就在NB的路上了,但是每次只會有那么一兩個人。 ### 理想型B 在另外一個理想型的團隊里,人們想要的是這樣的結構。 ![document/2015-09-25/5604dd649376a](https://box.kancloud.cn/document_2015-09-25_5604dd649376a.png) 我想不到這樣的團隊還有怎樣的知識可以傳遞。在這樣的團隊里,傳遞知識是相當于容易,因為大家很容易就懂得別人說的內容。 讓團隊中的每一個人都是全棧程序員的難度很大,然而這并不意味著這樣的團隊不可構建。 ## 構建理想團隊 在過去我們有師徒制,這樣可以保證師徒間知識可以傳遞下來。而在多數的軟件開發團隊里,并不存在這樣的制度,換句話說在這樣的環境成長時,你只能依靠你自己。 >?*在一個團隊里,當來了一個新人時你們會怎么做?* 如果你是一個新人,你來到這樣的一個團隊: 1. A 教你如何使用各種快捷鍵。 2. B 教你使用一些特定語言的技巧。 3. C 教你一些基本的DevOps技能。 4. D 教你怎么追妹子。 5. ...... 你會考慮加入這樣的團隊嗎? ### 結對編程 或出于公司文化,或出于對自己的不明確認知,多數市場主導的公司并不會采用這樣的方式來工作。這也導致了人們一直在追逐理想的開發團隊時,一直找不到合適的時機。 ![document/2015-09-25/5604dd708a632](https://box.kancloud.cn/document_2015-09-25_5604dd708a632.png) 這時,也許會有人提醒你,你多了個分號。我曾經在看別人的面試作業時因為多了分號,reject了一個人——因為語言是Python。 而這時候團隊的組成,傾向于下圖(圖是盜的,上面的圖也都是盜的 :) ): ![document/2015-09-25/5604dd7ae921c](https://box.kancloud.cn/document_2015-09-25_5604dd7ae921c.png) 在這樣的團隊里,并非每個人的技能都需要是一樣的。會出現重疊,一個比一個強,可能有一個的技能點數是最強的。項目在不斷開發地過程中,總會有人離職,有新人進來。 然而,在這個結對編程的過程中,知識都在不斷地傳遞。 (ps: 上面只是提到了結對編程會構成理想團隊,更多內容請期待下文《ReThink2: 如何照顧團隊中的新人》(9月10號))
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看