程式設計師到產品經理的晉級路

edithfang發表於2014-10-28



很多程式設計師的自我認識中,大概就是程式設計能力、技術手段的體現。不過在現在市場經濟的作用下,不少程式設計師也開始從技術類轉向管理類或銷售類。

其中,最快捷也是最便利的智慧轉換,就是成為程式開發產品的產品經理。也許很多程式設計師不理解,作為產品經理及要做管理又要做技術,甚至包括銷售等等,程式設計師是怎麼轉化或晉級的呢?

既然是程式設計師向產品經理的轉化,那麼就從技術觀念上的變化說起。至於其他職能,可以在技術觀念中逐步顯現。

技術架構/實現方式

比如設計一個網站類的產品是使用什麼程式語言開發的php,jsp或者Python。確定了程式語言以後你要知道整個產品專案中使用了什麼開發 框架,是團隊自己研發的框架,還是使用市面上比較流行的框架。其次是資料庫的選擇,根據你們的業務需求是使用mysql這種關係型資料庫還是 mongodb這類非關係型資料庫,最後就是伺服器,伺服器一般關心的問題就是穩定性,安全性,還有負載了。

根據不同需求選擇伺服器,

使用什麼樣的伺服器?自己管理的,還是雲。如果是雲的話還要了解一些雲服務和產品的內容,比如RDS,負載均衡,內容分發等等。

使用什麼作業系統是window還是linux?Linux的話一般還分Ubuntu和redhat兩個派系。

伺服器的執行環境是怎樣的?使用怎樣的代理nginx,Apache還是tomcat或者為了實現高負載混合使用它們還是要自己用node來寫一個更好更適用的。還要注意是否有其他外掛需要支援。

如果是桌面級應用或者是手機APP這樣的產品需求的東西還不一樣,你還要考慮跨平臺性以及其他細節問題。上述例子主要是網站產品主要依靠瀏覽器,平臺相容的考慮少一些。 

技術特性

技術的生命週期:作為產品經理的你已經知道了產品是有生命週期的,那麼其實我們生產產品使用的技術也是有生命週期的。假如專案週期比較長,比如 10年吧,技術生命週期一般就2~3年,伺服器作業系統生命週期會更長一些,,如果這部分能考慮到能節省很多重構成本。可是關鍵問題是這個問題本身就不太 現實,我們很難預測2~3年以後我們的產品的樣子。

技術的優缺點:作為PM你不用瞭解具體的實現方式,關鍵在於你要知道不同技術架構有什麼優缺點,適合做什麼事情。比如mysql和 mongodb的區別,php和jsp的區別,它們的開發效率和健壯性怎麼樣,是不是符合我現階段產品開發的需求。專案不大其實沒區別,專案大的話就很明 顯了。 

技術成本

不管怎麼說作為PM掌控產品全域性你要知道整個專案的技術開發成本是怎樣的。其實都是專案管理裡面的內容這裡就不多說了,值得提的是程式設計師是個喜 歡創造的工種,如果你只是設計好了讓他們照著設計做他們會玩的很沒樂趣的。要讓他們也參與其中你會發現你的專案會比你想象中的進展要好。親測,上個專案, 我的開發團隊就為客戶提供了超出合同範圍的各種各樣的功能……重要的是這部分開發人員是願意付出不計較成本的。(丫的,你們搞那麼多功能就不怕有BUG客戶再讓我們們改嗎????)  

瞭解設計模式

其實才是整個業務架構裡比較重要的東西,不過我現在理解的也不深刻,只能建議了。

一般你要先了解物件導向程式設計是怎麼回事。

然後瞭解一些,單例模式,工廠方法模式,抽象工廠模式,建造者模式,原型模式,這類的設計模式。瞭解以後對你認識程式設計師的工作有所理解,最少忽悠不了你,你知道他們設計一個業務邏輯的流程是怎麼樣子的。這樣就能做到心中有數了。
相關閱讀
評論(1)

相關文章