CMO[配置管理員縮寫]

CMO[配置管理員縮寫]

配置管理員(configuration management officer 簡稱CMO)是大型軟體公司中負責代碼管理、代碼編譯、版本管理、版本發布等工作的崗位,主要工作內容是輔助軟體經理處理軟體版本相關工作,只在一些大型公司中存在,為開發人員的下游,產線與測試部的上游,直接搭檔是軟體經理,工作內容十分重要,而且需要細心才能做好這樣一份工作。

版本

CMO分為版本CMO和組內CMO,一般指的是前者,下文中不做說明的地方均默認視為前者。

版本CMO

版本CMO的工作內容雜而多,而且作為開發的下游,加班是不可避免的,在小公司,由於產品數量的有限、軟體團隊的限制以及代碼量並不是很多,所以這部分工作一般都是由軟體經理代為進行,但是當工程足夠大的時候,CMO存在的優勢也就體現出來了,但是因為CMO的工作太過複雜太過分散,所以一名成熟的CMO可以說是非常難得的。

CMO的工作包括但不限於以下幾點(某些公司的CMO的工作職責會相對少一些或者更具針對性):

代碼的管理和編譯

CMO的主要工作之一,所有開發人員的代碼全部都會匯總到CMO這裡,甚至有公司的CMO是直接擁有對代碼倉的完全許可權的,所以CMO可以看到工程所有的原始碼,甚至可以直接進行修改。但是即使CMO有修改許可權,也必須將每一個修改告知軟體經理。

此外,擁有代碼倉的管理許可權也就意味著編譯這些代碼就是他的工作,所以CMO這裡需要編寫並維護著大量編譯用的腳本,雖然有的公司有專門的CMO工具團隊來開發編譯用的腳本或者軟體,但是腳本的編寫和維護也屬於CMO的工作範疇,他就要負責通過開發的代碼編譯出一個完整的版本,並且能通過版本號和編譯時間對版本進行管理。

版本管理

CMO的本職工作,他要保存每一個版本的修改點,清楚的知道每一個版本的用途和編譯日期,保證需要修改的內容能在新編譯出的版本中進行體現,編譯出的版本會交由測試部,CMO需要提供版本修改點以便測試。

版本發布

CMO的主要工作之二,他要承接一個向用戶發布版本的職責,一般發布另有團隊負責,CMO的工作是將做好的版本傳接給發布版本的團隊,由他們來進行發布,此外牽涉到生產的產品,CMO會將版本發布至產線,由產線做批量測試或者直接發貨,CMO在版本發布中起著至關重要的作用,畢竟在發布環節,CMO是最清楚這個版本的人。

特殊版本製作

特殊版本包括一些測試用的特殊版本,一些開放管理員許可權的升級包等,這些也屬於CMO的工作職責,除此之外,對一些大型APP,例如手機版本這種升級不適宜發放全包的APP,需要製作升級用的OTA包。對於小型APP一般這樣的特殊版本基本看不到。

協助軟體經理

本身CMO就是為了分擔軟體經理的工作而存在的,所以一些軟體經理忙不過來的事情也要由CMO進行協助,例如督促開發部門合入代碼、幫助開發進行測試或者打包等工作,有時也會交於CMO,但這些工作一般不屬於CMO工作範疇。

組內CMO

在某些大型公司中,每一個開發團隊都有一個組內CMO,職責是組內代碼的管理,一旦組內對代碼進行了修改,他就要負責對每一次修改進行負責,每個小組有時只有組內CMO有許可權進行代碼上庫(有時連組內CMO都沒許可權),這樣每一個組內CMO都能對本組的每一條修改清清楚楚,更加能落實責任到人,對於大公司而言,組內CMO更肩負著記錄每一條修改內容,上報每一條修改內容的職責,直接與版本CMO對接,將修改的問題列表提交給版本CMO進行管理,版本CMO匯總過後列出總單提交測試部測試。這樣版本CMO收集問題列表時也能更加有效率。

注意事項

CMO的工作內容直接跟外部打交道,跟傳統的開發工程師完全不同,他的上游可以是眾多的開發人員,可以是眾多的組內CMO,也可以是作為搭檔的軟體經理直接下達,除此之外還有CMO團隊內部的工作,可以說一個職業牽涉到了多個工作流程,工作內容相當的繁瑣。而工作中出現一點疏忽,就有可能導致無效版本的出現,每一個無效版本對於CMO都屬於瀆職行為,如果無效版本因為測試問題外流,就會導致出現嚴重的問題,哪怕只是一個微小的疏忽,帶來的結果也是無法估量的。因為CMO的下游就是測試、發布、產線,甚至直接就是用戶,所以這在軟體行業的眾多工作中屬於高危職業,這個職業甚至可以一點技術都不懂,單純的文員都能做,但是沒有責任心的人注定無法做好這份工作,所以,想要入此行的朋友最好做好充分的心理準備。

相關搜尋

熱門詞條

聯絡我們