互聯網公司如何管理研發團隊
在互聯網公司,每天都會有不同的需求被反饋,可能是線上bug、可能是用户體驗優化、也可能是新的項目需求等等。這些需求按類別可以分為三類:日常需求、缺陷需求、項目需求。與之對應的有3個管理池:需求池、缺陷池和項目池。
需求池
需求池裏可以建立簡單的日常需求,這些需求一般是一對一可以指派的問題。比如運營提出的可以提高用户體驗的一些優化建議、UI提出的視覺方面的修改和調整。這些問題一般不屬於線上BUG,可以短期(1到2天)內修復上線的。日常需求的生命週期如下:
建需求 -> 拉分支 -> 本地開發測試 -> 代碼評審 - > 預發佈驗證 -> 正式發佈驗證
缺陷池
缺陷池是給測試部門使用的。無論是日常需求還是項目發佈都會有測試工程師介入測試,測試過了才能發上線。測試過程中發現的一切問題都要如是記錄在缺陷池裏,指明對應的責任人和處理人,並跟蹤此缺陷的生命週期。缺陷按照嚴重性可以分為P0~P5,P0最為嚴重,一般發生P0缺陷,整個網站或者系統將無法正常運行,責任人和處理人需要在1個小時之內解決,如果解決不了需要立即回滾代碼。如果你造成P0缺陷,那麼對不起,輕則季度考核不合格,重則直接勸退。
而P級數字越大,缺陷嚴重程度越低。不過如果無法在規定時間內解決該缺陷,會自動上升一級。所以一旦出現缺陷,壓力還是很大的,開發工程師應該在自測完全沒問題之後才能申請測試工程師進行專業型測試。
項目池
一般一個需求的生命週期超過8天的必須申請立項——即成為一個單一項目進行管理。一個項目完整的生命週期如下:
需求評審 -> 產品出文檔和交互 -> UI 製作視覺稿、標註稿 -> 後端給出Mock數據接口 --> 前端編寫頁面,綁定數據 -->視覺UI走查 --> 前後端線下連調 --> 後端接口上線 --> 用例測試 ---> 前端頁面上線 --> 用户反饋和優化
每個項目會有一個產品經理、項目經理整體跟進,如果項目成員多的會設立專門的項目室(所謂的“小黑屋“)進行開發和溝通,以提高溝通效率。
wiki文檔管理平台 Doc每個研發團隊都需要有一個統一的平台來管理一些文檔,包括接口的API文檔、代碼規範、最佳實踐和技術分享等東西。在互聯網公司我們不會寫一大堆的word文檔或者整一些PPT,所有的文檔都採用markdown語法編寫,簡約又易於分享。
接口API文檔
接口文檔的作用是為了前後端解耦。現在前後端分離的開發模式已經深入人心的,如果你還發現你的公司仍然搞一大堆什麼JSP、Smarty、Velocity、FreeMarker等所謂的後端模板引擎的,趕緊告訴他們已經Ou t了!前端模板引擎的性能和用户體驗都遠遠高於後端。呵呵,可能這時遠方飄飄然會傳來一聲不屑——胡扯,後端模板引擎的`性能怎麼會輸給前端呢?會這麼想你肯定不知道前端模板引擎強大的預編譯功能——模板引擎再厲害還是會有編譯過程,預編譯則把編譯事先做了。
好了迴歸主題,規範的接口API文檔應該包含以下幾個內容:
第一:接口的用途
第二:接口的類型、是否需要登錄
第三:接口的參數列表和字段説明
第四:接口成功返回的數據字段説明
第五:接口失敗返回的數據字段説明
第六:接口對應的mock數據入口
代碼規範
説到代碼規範,各個團隊有所不同。前端、後端、客户端、測試、大數據等各有各的代碼規範。代碼規範的作用是統一編碼風格,提高代碼複用能力。這個規範可以是長期開發經驗積累整理的一套編碼風格。前端的話應該包括:文件命名規範、HTML文檔規範、less或Sass編寫規範、JavaScript編碼規範等。代碼規範應該隨着變成語言的升級而不斷更新,並且每次更新後應該對每位開發人員進行代碼規範 考試。
最佳實踐
最佳實踐是指針對某個問題總結出的最佳的處理方式,可以是代碼片段、設計模式或框架設計等。每次項目完成之後應該做這樣的總結工作,梳理一下項目的脈絡和技術實現,思考性能優化和用户體驗細節提升的技巧,然後積土成山,並長期維護和更新,構建團隊自己的技術棧。
技術分享
技術分享應該以專題的方式進行,理論上團隊每個成員定期都應該做特定專題的技術分享,並和各自的績效掛鈎。分享方式很簡單,演示文稿和markdown文檔,如果是技術實踐應該還有配套的demo代碼,最好在小組的週會上進行,鼓勵討論和反駁,一起進步。最後這些分享資料以期刊形式進行整理和出版,構建團隊的技術棧。
開發管理平台開發管理平台主要用於開發過程中的所有流程的把控和個人質量統計。這個平台應該和需求管理平台以及代碼管理平台聯通,協同使用。
個人缺陷管理
該模塊可以反應開發者目前的代碼質量水平,統計扣分情況。上面説了代碼缺陷等級分為P0~P5,開發者一旦出現缺陷會被統計在缺陷池裏,並以扣分的形式呈現在這裏。並且扣分排名前30名會上榜,全公司的開發人員都可以看到,互相督促。
開發任務跟蹤
該模塊裏會呈現開發人員當前的任務隊列,每個開發任務的生命週期只要沒有走完,都可以申請發佈計劃或取消發佈,任務一旦發佈成功該任務就會從列表裏隱藏。
發佈計劃
開發任務一旦成功生成發佈計劃,會自動從trunk裏產生新的分支,並給出新生成的分支號,然後開發者把代碼切到該分支,在此分支上進行新的開發。
代碼評審 codeReview
開發者一旦完成本地開發並自測沒有問題,申請發佈前必須先經過上一級的代碼評審。代碼評審包括編碼風格審查,代碼執行效率、業務邏輯實現的性能等多方面的排查。評審通過了才允許繼續發佈。否則打回上一步,問題修改完成後繼續提交評審。
代碼發佈
代碼評審通過後,會進入當天的發佈隊列。
發佈隊列
平台管理員每天在規定時間把發佈隊列裏的發佈計劃進行預發佈操作,即把分支合併到trunk。
預發佈
代碼正式發佈前先進入預發佈環境。預發佈環境和正式環境一模一樣,測試人員需要把本地的hosts配置成預發佈的IP地址。然後進行預發佈驗證。驗證如果不通過會被打回,開發人員需要在30分鐘內進行修改,問題解決後管理員會重新合併代碼,繼續預發佈驗證。超時或無法解決問題,回滾代碼。該發佈計劃失敗。
正式發佈
預發佈驗證沒問題了,發佈隊列裏的任務會進入正式環境。測試人員需要把本地hosts配置成正式的IP地址。然後進行正式發佈驗證,一般不會再出現問題。
緊急發佈
每天進行發佈的時間是規定的。過了規定的發佈時間如果還需要發佈代碼的,需要走緊急發佈。緊急發佈每個開發人員都有次數限制,一般如果存在未知風險或涉及核心代碼的,不允許緊急發佈。
代碼回滾
如果正式環境出現問題,在規定時間內開發人員無法解決的,必須回滾到上一個版本。
代碼管理平台 gitLab、SVN每個開發團隊都需要一個代碼管理工具,svn或者git 是目前常用的工具之一。如果使用svn則只需要提供兩台svn服務器(正式和預發)。如果使用git則需要搭建gitLab作為代碼的私有倉庫。
分支管理
開發統一拉分支進行開發,然後合併到trunk。並且trunk上一般開發人員沒有寫的權限,保護trunk的安全。
版本控制
各分支之間允許合併和回滾,由開發人員自己管理。
團隊管理平台 team每個小組應該成立一個team平台進行管理。在這個平台上可以查看隊伍各個成員之間的工作情況(日報、週報、項目進度等)
日報
每日一報,寫一下今天做的日常需求,如果是項目,就寫一下項目的進度。
週報
每週一報。本週工作總結和下週工作計劃。
項目進度
開發管理平台各自的任務的生命週期應該同步到這裏。方便你的leader進行查看和工作彙報。
員工管理平台 oa這個幾乎每個公司都有,就不介紹了。
規章制度
保密。
人事流程
請假、考勤、打卡、離職、入職等。
場地申請
會議場地、項目室申請。
會議通知
會議開始前會定時通知與會人員。
組織架構研發團隊是互聯網公司強大的後盾,“養“着一羣技術人員。這些人員不僅更具崗位職能進行劃分。還有一個更重要的分法是根據工作性質進行分配。
業務部
負責新業務開發和舊業務的維護。
基礎部
負責開發服務化工具和大數據分析。
系統部
負責系統架構設計和新技術研究。
運維部
負責服務器管理和維護。
質量保證部
我們的測試工程師同胞們。
相關文章
-
互聯網UED團隊如何管理?
互聯網設計師總是青出於藍勝於藍,目前情況:本人UED管理剛一年,團隊有12個人,有視覺,前端,交互,用户研究暫時還沒有到崗位,現在白天的時間主要在設計需求溝通,戰略會議,設計項目管理,等等,做實際設計項目的時間就變的很少了,但我是 -
大一如何在杭州找到互聯網公司和創業團隊暑期實習機會?
今年念大一,專業是Computer Science。明年暑期應該有3個月的時間,希望能找個實習機會。但現在沒有方向,不知道如何找起。本身能派上用的專業技能基本為零,就是希望通過實習瞭解一下一個創業團隊是如何分工,如何運作的'。 -
移動互聯網外包開發團隊,如何建立銷售隊伍和銷售制度呢
人員配合、工資待遇、獎懲制度一般怎麼建立? -
請問互聯網公司裏研發和產品/運營/策劃之類的待遇如何?
短髮時尚又好打理,還能提高辨識度,於是韓國女星剪短髮的越來越多,演員或者女團成員都紛紛剪了,馬上來看看這些韓國明星短髮髮型圖片吧。 説道韓國短髮女演員,不少人會想到的是《太陽的後裔》中的尹中尉扮演者金智媛。她的 -
中國互聯網公司如何處理“網絡中立”的問題?
關於網絡中立 Net neutrality ,簡單説,如果沒用網絡中立的法規,網絡運營商就可以對不同網站、網絡應用提供差異化的信道服務來影響其市場地位,舉個不太恰當的`例子:電信的網絡可以讓微信大量丟失信息,促使用户棄用微信。國 -
錯過校園招聘,該如何進入理想的互聯網公司?
錯過了九十月份的校招黃金期。。。 理想的互聯網公司基本都宣告校招結束了,也參加了一兩個的筆試==但結果不盡人意 非常希望能夠有個好的職業起點(==當然騎驢找馬,先找個崗位的道理是懂的) 請問如果錯過了校招黃金期,該如 -
互聯網科技公司如何招聘?
我是一家網絡科技企業的創始人,目前整個團隊一共有4個人並且獲得了一定的.的資金,公司現在即將註冊好,想要招聘產品經理以及工程師。想請教各位,除了通過網絡招聘(如智能招聘)、校園應屆生招聘以及微博人人等途徑,還有什麼好 -
互聯網公司如何進行績效考核?
最好事例説明 比如:騰訊 360 百度 美麗説 和其他創業小公司比如一個美工工資怎麼給?怎麼考核?獎金怎麼發放?一個程序員工資怎麼給?怎麼考核?獎金怎麼發放?一個產品經理工資怎麼給?怎麼考核?獎金怎麼發放?一個編輯工資 -
互聯網創業公司如何起步更好?
我現在正處在創業的初期,缺少資金,不過數額不是很大,只是超過了我目前的程度。我覺得創業的.方向前景很不錯,目前國內在這方面也沒有特別有影響力的企業,而且我們在研發一些別人沒有的特色功能,我認為未來的潛力很大。現在 -
大家對各類互聯網公司的印象如何?
沒有互相攀比或者瞭解忠誠度的意思,互聯網行業各家各有千秋,若只是去作比較就沒啥意思可言,只想瞭解各位對每個企業和產品的印象和使用感受。