3W分析法告訴你,產品經理懂技術的必要性

5 評論 19408 瀏覽 521 收藏 10 分鐘

關于產品是否需要會寫代碼一直是個比較有爭議的問題,早期的產品經理基本都是從開發崗位轉成的,最近幾年隨著移動互聯網的飛速發展,產品經理也變得十分熱門,吸引了越來越多的人的加入,也有不少應屆生進入這個崗位。我??吹揭恍┤藛枺瑥氖庐a品經理是否需求懂得寫代碼?如果要懂,又需要了解哪些?筆者我科班出生,建過網站也做過系統,還從事過一段時間andorid開發的工作,這次我嘗試著用3w分析法則對這個問題做出回答。

What:產品設計是什么?

目前的產品經理一般可以根據公司崗位側重點不同分為產品策劃和產品運營。在一些大公司還會為產品經理配上交互設計師來完成產品策劃/設計的工作。目前產品設計的準確形容還不統一,廣義上可以把交互設計,用戶體驗設計等產物為產品原型的統一成為產品設計。

產品/交互設計目前來看,是一項門檻相對較低又富有靈活創造性的工作。一些不曾學過美術,開發的新人也能憑借自己對市場上一些APP的分析和原型優化快速上手進入這一行。當然,這并非不可,市場需求決定了價值,但如何提升自己的價值還需要很長的路要走。

Why:產品設計為什么要懂得開發?

以下是產品設計中可能會遇到的一些場景:

場景1:

產品:“我希望能在這里加個動畫過度,讓用戶覺得更加有趣,提高粘度”。

研發則會想:如果是網頁,如何能保證動畫加載順利?如果是APP,會不會對流暢有影響?以及等等。也許研發還會進一步思考,到底有沒有必要加動畫,我該找什么理由讓這小子把動畫這事先放開?

場景2:

產品:“這個地方需要加入搜索框”。

研發則會想:是要求搜索什么,用戶?標題?內容關鍵字(關鍵字是否需要分類)?還是所有的字段都能搜索?

場景3:

產品:“這里我希望用戶進度頁面就能夠對熱門動態點贊收藏”。

研發則會想:這個操作是不能實現的,因為用戶還沒注冊,我們并不知道他是誰。

這樣的次數越來越多之后,研發很容易就會在暗中吐槽,產品經理什么都不懂,跟他交流特別費力,總給我制造麻煩。

長久之后,便會失去研發的信任,讓工作變得不那么融洽,甚至讓產品經理對產品的主導權開始動搖。

曾經聽過很多的人說,產品經理不需要懂得技術,只需要關注業務及需求就好。誠然,在不少公司,現有產品比較成熟,不需要開發新產品,對技術的要求當然會降低,產品經理的工作更多的在于如何通過市場盈利而不是做好產品,這部分的人這次暫時不做討論,以后便見分曉。還有另一部分不了解技術的產品,容易對研發產生崇拜,降低自己的價值。

另外研發最頭疼的有兩類產品,一類是不懂裝懂的,一類是只懂一點又亂吹的。前者設計的產品很容易出現邏輯問題,后者則容易讓研發工期困難。(前者的舉例說明可以參照我列出的場景)

經歷過多次迭代我明白一個道理,做一個產品出來容易,做好一個產品難。讓一個人能用的產品和讓10萬個人能用的產品不是一個級別的,同樣的需求滿足一次和同時滿足10萬次也不是一個級別。

筆者曾經做過一個Android端的相冊功能,(早期的設想是通過SD卡路徑來訪問圖片,但問題出現在不同的手機圖片存儲路徑不同只能作罷。)其原理是通過讀取系統相冊的ContentProvider圖像數據,該功能的實現只用了一下午就完成了,直接使用了開源框架ImageLoader,加載一千張圖像十分流暢,堪比原生相冊。但是,在測試的時候問題來了,在運存只有1G的手機上,加載二千多張,大小總計2G左右的圖片時,該APP變得非常卡,甚至容易崩潰,對其的優化花了一個星期。

當產品經理質疑我為什么一個簡單的相冊需要一周時,我需要花費大量精力解釋,并非我有偷懶。。。

也聽說過其他一些產品,加需求加太多,代碼重構耽誤產品上線日期的。

產品經理是項目的推動者,很多人把溝通能力看的格外重要,但如果一個產品經理是懂得開發,那么他和研發的溝通將會順暢許多。

當然,也有很多不懂技術的產品經理是踏著一個個坑成長起來的,被研發指導得多了,也能慢慢成長起來,那么他的成長期,對大家會不會是個災難呢?

產品經理是個對綜合能力要求很高的崗位,這也常是優秀的產品經理和產品汪的區別,現在入門做產品經理也許很容易,但成長為優秀的產品經理還有很多高臺階要上。我也覺得這是件公平的事情。研發寫代碼雖然門檻較高,但是入門后臺階相對較低,努力2-3年也許就能成為優秀的研發。優秀的產品經理則需要更久去沉淀。

How:要做產品經理,需要懂哪些技術呢?

對產品經理來說,掌握一門計算機語言是不必要的。不需要了解到具體的代碼如何編寫,但一定要懂數據間是如何傳遞的。我推薦多虛心向研發請教,了解不同研發不同語言負責的工作,會比較容易快了解。

目前在軟件開發中有幾種常見模式

  • MVC(Model-View-Controller)
  • MVP(Model-View-Presenter)
  • MVVM(Model-View-ViewModel)

目前大部分的WEB開發和移動開發也是采用MVC模式

1454643-3e265dde1e6ded35

WEB和移動應用運行的流程:

網站

如圖,一般網頁的工作是需要前端工程師來完成,這時候寫好的頁面稱之為靜態頁面,可以被瀏覽器直接解釋執行。這時候的頁面還不具備動態的功能。拿注冊功能舉例,當用戶進入注冊頁面后,在輸入框輸入自己的用戶名、密碼等數據,數據會傳遞到后臺,后臺再存到數據庫相應的表中,存儲的結構一般為字段名+值,存儲成功后,后臺再會返回相應的數據告訴頁面,頁面這個時候再提示用戶注冊成功。

app

如圖,移動端的流程和網站大致相同,不同的是移動端(安卓和IOS)如果不是混合開發,大多數時候不需要前端工程師參與。

也許看完這些你仍舊對技術缺少概念,那么可以嘗試自己做個天氣預報APP或者個人的簡單網站出來,并沒有太高難度,程序入門還是比較輕松的。在研發忙不過來時,一些小的改動自己就可以完成,必會讓研發更加高看你一眼。

更何況,編程這么酷的事情,為什么不試試呢?

 

本文由 @placeless 原創發布于人人都是產品經理?,未經許可,禁止轉載。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 非常不錯的一篇文章

    來自廣東 回復
  2. 你可以用Glide框架

    來自福建 回復
    1. 謝謝指教,當時還研究了好久fresco和Picasso,看到ImageLoader用的多就用啦

      來自湖北 回復
  3. 我們是做智能硬件的 ,開發有三種崗位,即andriod, ios ,服務器,服務器用的是阿里的 ,想問服務器開發崗位是不是就是做后臺和數據庫?

    來自廣東 回復
    1. 根據你們公司來看,用的是阿里的云服務器吧?貴公司的服務器開發崗應該是做這些的。

      來自湖北 回復