【百天计划071】技术知识:产品经理所需要掌握的技术基础

看到身边有很多产品小伙伴都开始学python了,也有的为了和技术撕逼,自学相应前端、客户端开发技术的,我只能说你们对自己真狠。

多学点东西总归是好的,不过还是建议产品经理把更多的时间花在产品设计上,用户分析、市场分析、业务分析、需求分析、竞品分析等等,这些才更值得你花大量的时间和精力去培养能力。

可能是环境使然,感觉不掌握点技术知识都没法好好的当产品经理。其实问题主要出在沟通上,我们更应该去思考两个问题:

1、为什么技术人员会喜欢和你说“这个需求实现不了”?

需求分析过程当中是有个环节叫可行性分析的,这其中包括需求的合理性和可实现性。抖音上很多产品经理和技术撕逼的视频说为什么根据客户的心情来变幻产品背景色的需求实现不了,我不知道大家是怎么看待的,反正我认为是产品经理没做到位。

产品给到技术的需求如果因为实现不了的原因被打回来,问题都是出在产品经理身上。

2、当技术告诉你实现不了时,你该怎么办?

理论上来说,没有什么需求是技术实现不了的,合格的技术负责人肯定也会这么说。关键在于需求是否合理,合理的需求肯定能实现,不合理的需求即便技术有能力,可能也会告诉你实现不了。

如何说服技术接受你的设计思路是关键,不要学抖音上那样动不动就“人身攻击”,那样于事无补。

这两个问题想不通的话,学习再多的技术知识也没用,难道你真的代替技术人员,自己上马去写代码么?

这里需要先强调一下,产品经理需要掌握一些技术知识这事不是必备项,但却是加分项。有些产品经理是有研发背景的,即在转行做产品经理之前,有从事过开发工作,这样就比较有优势。

懂点技术知识可以让你在产品设计的过程中就进行一定程度的技术实现可行性分析,评估所设计的功能是否可以在现有条件和资源下实现。也能让你在开发人员的系统设计评审会上听懂一些实现思路,可以大致了解是否符合要求。

技术人员比较喜欢和同行交流,就像我们自己喜欢和产品经理同行交流一样。但需要注意的是,千万不能不懂装懂,不要以为自己懂技术了不起,就指手画脚的参与系统设计,这样反而会令人反感。

要记住你的技术知识只能停留在产品设计阶段和PRD沟通阶段,不要过多的给出技术实现方面的意见或建议,术业有专攻,不到万不得已不要去给技术实现方案。

从我的经验来看,以下这些技术知识是产品经理应该掌握的。

SQL语言的读和写

产品经理几乎天天都要和数据打交道,数据的来源有很多,但大部分肯定都是存储在数据库里面的,要做数据分析的前提是你要拿到数据,这时就和SQL语言有关系了。

大公司数据仓库建设比较完备,有较为完善的数据管理系统,且有专门的数据库维护人员,俗称BI或者DBA,即做商业智能和数据处理加工的。在这种条件比较优越的公司,常规的取数需求都可以提交给这些专业人士处理,如日常的分析报表、业务分析所需要的基础数据等,只要说明清楚取数逻辑和所需要的字段就可以了。

但平时的一些产品分析所需数据的获取,以及一些指标考核项的数据就需要你自己动手了。好一点的情况下,你可以央求BI给你写一个SQL语句出来,然后根据需要你自己改改;次一点的情况下,BI会将一些表结构说明给到你,然后你自己去组织表关联取数;最差的情况就是啥都没有,你自己去取数系统里面摸索着取数。

而在小公司,产品经理可以让开发人员帮你取数,但你要是频繁需要取数的,我想你也不好意思老开口,毕竟会影响开发人员的本职工作。自己动手丰衣足食,而且因为小公司数据系统建设不完善,最好的情况就是上面说的第二种,有表结构说明给你参考。

上面这些场景就要求产品经理需要懂SQL语言。首先是要能看懂SQL,比方说你是求别人帮你取数的,但看了数据总感觉不对,这时你就需要去看看人家写的SQL对不对,毕竟你自己才最清楚取数需求是什么。看懂了发现有错误的地方,还要会改,特别是别人给你一段有相似取数功能的SQL语句时,要能手动改改之后适合你自己的取数需求。

其次是要知道怎么写SQL,这就要求产品经理懂得SQL语言的语法和一些常用的函数,比如日期函数、格式转换函数、数学函数、字符串函数等等,最常见和最基本的都要掌握和灵活运用。

个人强烈建议产品经理都学习一下SQL,这样在日常工作当中会方便很多。需要注意的是,SQL语言有T-SQL(Transact-SQL)和PL/SQL(Procedural Language/SQL)两种,需要根据不同的数据库类型,有针对性的去学习。比如说产品采用的是SQLServer数据库,那就需要学习T-SQL;如果采用的是Oracle或者Mysql数据库,就需要学习PL/SQL,两种语言在语法上差别比较大,大部分情况下都不能混用。

另外Oracle和Mysql数据库在应用PL/SQL的时候,会有一些函数有使用上的差异,需要注意一下。有人会说现在还有一些非关系型数据库,如MangoDB之类的,这种数据库基本不支持SQL语言去查询,而且里面存储的都是非关系型的数据,也不需要查询出来做分析。

移动端的设计规范

这里包含产品设计规范和编码规范,无论是Android还是IOS都有自己特定的规范,移动端的产品经理在设计产品的时候就需要先了解清楚这些规范的内容,和一些技术实现的方式。

移动端的技术实现相对比较可控和有限,多了解一些技术有助于进行有效的产品设计。比如移动端的一些特效实现方式,如拖拽、滑动、下拉、手势等,两端的实现方式不太一样,产品经理如果不了解这些,操作体验可能就会差一些。

基础的技术名词

产品经理不需要去学习开发技术,但是要知道一些专业术语,如缓存、Cookie、脚本、中间件、数据库、存储过程等等名词,需要去了解一下其所表示的意思,开发人员在沟通的时候会经常提到这些。

另外掌握如缓存、Cookie的使用,还可以在产品后端逻辑中添加一些功能,比如让Cookie记录用户填写的用户名,下次再来登录时不要重复输入;用缓存记录用户的登录验证信息,在一段时间内不需要用户重新登录等等。

学习的时候要有针对性,比如公司采用JAVA开发的,那就去了解一下JAVA相关的基础知识,数据库是采用MYSQL的,那就学习这个数据库相关的SQL语言,我们的目标是能听懂开发人员说的话,以免陷于被动。

这里需要提一下的是,产品经理最好懂HTML,HTML是最基本的网页脚本语言,有时候可以点击右键属性—“查看网页源代码”来看一看,能发现不一样的天地。

上面所提到的这些是个人觉得比较基础也比较容易掌握的技术点,特别是SQL,强烈建议产品经理们都学习一下。市面上有本书《产品经理必懂的技术那点事》,里面讲的比较多,其实没必要。产品经理还是要做好自己的本职工作。

“【百天计划071】技术知识:产品经理所需要掌握的技术基础”暂时没有评论

发表评论:

姓名 (*):
E-Mail (*):
网址:
内容 (*):

XHTML: 可用标签: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>