产品经理的技术素养
这一节是写给非技术出身的产品经理。
关于产品经理究竟需不需要懂技术,我想答案很清楚,肯定要。原因如下:
首先,判断需求的技术合理性。产品经理除了判断需求本身是否合理,还需要对技术可实现的合理性上进行基本的判断。之前坊间流传的一个段子,说一个产品经理被开发揍了,因为他提出这么个需求——“希望APP根据手机壳的颜色同步变色”。且不说这个需求有没有合理性,从技术上本身就不可行。另外,了解一点技术,可以让你提出的需求更加准确,比如网站上线,你希望小流量灰度,技术问你,如何灰度?按流量,按地域还是其它?你:"..."
其次,产品经理做为项目协调人,在项目上线后,总会收到各种各样的反馈和bug。比如线上出现了一个紧急bug,这时候作为协调人,你能不能作出一个基本的判断,这个bug大致是前端问题,后端问题?应该优先和什么人去沟通,而不是把所有工程师统统拉到群里。
再次,了解技术有助于提升日常沟通效率。尤其是涉及跨部门沟通,对方有自己的产品与技术,自己团队有产品和技术。很多时候,产品经理是居中协调人,如果你完全听不懂技术在说什么,你就会沦为一个传话筒,而且是一个总是丢失或误传信息的传话筒。
那么作为非技术出身的产品经理,需要了解到什么程度呢?放心,你不必学会写代码或者读懂代码,不必关心程序逻辑细节。你要做到的是,能够听懂并理解大家在说什么,边界在哪里。
一、基础概念及其之间的联系
了解任何一个学科的新知识,首先需要把基础概念搞清楚,然后尝试把它们关联起来,你就建立了相关领域一个基础的知识结构,后续再补充的知识,才有可能在这个结构上生长开来。
a)互联网应用的简化模型
端与后台目前我们提供的产品,无论最终的产品形态是网站还是APP,其基本构成是类似的。都有服务端(后端,后台),服务器主要负责数据存储,增加,删除,修改与查询。它是7X24小时随时待命,等着响应来自用户端的请求。
用户端,就是用户访问我们服务的界面,常见的有三种。可以是APP(有些公司叫客户端),常见是就苹果和安卓,当然Windows Phone, Blackberry也都是类似的;Web端,通常指网页;Wap端(通常指手机浏览器访问)。其实在PC互联网时代,还有Winform端,常见的如QQ,就是运行在PC电脑桌面上的程序,这种产品形态在移动互联网时代相对少了,产品经理不需要特别关注,除非你就是PC客户端产品经理。
b)信息流动
理解典型的信息流动非常关键。信息流动,就是指用户使用我们的产品时,在技术视角下,发生了什么。以使用今日头条App为例,我们点开头条打开App,这时候发生了什么呢?
一次典型的Pull(拉) 请求我们把端向服务器请求过程,称为“Pull”拉数据。服务器根据我们的请求,从数据库里把数据查询出来,预处理,排序等,返回给端,端本地把这些数据,按自己的模板呈现出来,就完成了一次典型的数据请求——展现过程。
上述前后端协作模式,在技术上我们称之为C/S(Client/Server)模式。当下App基本都是这种数据请求模式。与C/S相对的是B/S(Browser/Server)结构。
B/S结构数据请求B/S结构,通俗的说,就是用户不需要安装应用,直接通过浏览器来访问我们的服务。所以,服务端查询数据后,会先用模板把数据填充好,再返回给浏览器来呈现。从信息流动的角度,就这一点区别。
c)端的能力不同。
App应用,或者我们称之为“原生应用”,使用C/S结构访问与呈现数据。由于是原生应用,它能够访问系统的能力是很强的。重力感应,地理位置,光线亮度等典型的手机能力。“按手机壳变色需求”的不可实现性就在于,连手机操作系统本身都无法知晓自己有没有附着手机壳,更不用说判断其颜色。如果不考虑需求合理性,从端的能力来看,需求可以这么提:“按环境光线的亮度,改变屏幕的亮度”。这是可以做到的,而且很多应用已经具备,比如“夜间模式”。像爱奇艺的播放界面,你关灯后,它会把屏幕亮度降下来,避免黑暗里观看太刺眼,在你开灯之后,它会自动恢复正常亮度。
浏览器,无论是手机浏览器,还是PC浏览器,前端使用的脚本是Javascript,对操作系统的访问能力很受限。只能得到环境的IP,浏览器版本,操作系统版本等。了解了这个层面,前面提过的“Web页/Wap页灰度上线”的需求,你就知道,可以通过IP(用户所在城市)进行灰度,就是比如,只有是北京(IP城市在北京)的用户访问时,看到的才是改版后的产品界面。
二、典型案例
产品经理中需要理解自身产品典型的信息流向,把技术问题的边界就框定了,下面我们举几个典型的案例加以说明。
a) 信息流产品
信息流产品,大家最熟悉的如今日头条。可以根据用户喜好,把用户可能感兴趣的内容进行自动推荐。作为产品经理,逻辑与算法,你只需要把握边界,细节都当成黑箱即可。
推荐系统简化模型作为一个推荐系统,肯定有一个技术上相当复杂的架构。但在产品经理眼里,你就抽象成一个”推荐模型“就好。内容管理系统是运营干预内容推荐的一个平台,比如一些固定的运营位,对一些内容的修改,删除等。
对于前端产品经理而言,了解用户一个请求,在后台流经了这几个系统,且大致发生了什么就可以了(如果是AI产品经理,专门负责算法优化的另当别论,这种当然经理大部分是科班出身,不在本文探讨之列)。
比如请求拉取信息流,典型的流程会是推荐模型给出算法建议的N条内容,然后内容管理系统给出几几个固定运营位,结合一些黑白名单,对内容权重进行适当的人工干预,形成最终的内容列表,返回给端。
理解了这个流程,作为产品经理,你在提一些偏后台的需求,就会有的放矢。常见的需求比如在”feed流的第三条加一个广告位“,那么这时候,你知道这个需要应该提给”内容管理系统“,同时前端在返回的数据里,针对你这个固定广告位,作特别的渲染就可以了。
作者简介:魏佳斌,新浪网自媒体产品/技术总监,北京大学光华管理学院MBA,技术出身的产品总监。曾就职腾讯,百度,微软,微博,担任QQ开发工程师,产品经理,产品总监。对互联网商业模式,技术前沿有深度洞察。本文来自专栏:”产品经理——从新手到总监“。可关注公众号:ailabx,可接收最新最热的互联网洞见。