产品为什么要懂技术


——还是要学习一个。

  产品需不需要懂技术,要懂到什么程度,这已是老生常谈了。
  窃以为,产品还是得懂技术的,要懂到什么程度则因人而异。下面就结合一点自身体会,发表一些微小的见解。

2.1 问题解析

  在说为什么之前,先来分析问题是什么,不难发现,问题可分解为四个要素:

    产品 + 为什么要 + + 技术

  那么,让我们先弄清楚其他三点分别指的是什么。

2.1.1 产品的分类

  产品是做什么的这里就不展开了,以后会找个时间专门说一下产品的职责和使命,这里主要就产品的分类做一下说明。其实产品也是分很多类的,不同种类的产品需要懂的技术种类和程度都不同,比如移动产品经理就需要侧重于移动端的技术,运营导向的产品经理对技术的了解程度就不需要太高。简单来看,产品可以按以下几种方式进行分类:

  • 按行业分:电商产品、社交产品、搜索产品等
  • 按职能分:技术导向、运营导向、用研导向、设计导向等
  • 按级别分:产品总监、产品经理、产品助理、产品实习生等
  • 其他分类方式:按公司规模分、按公司类型分等

  这只是一个很粗糙的分类,但可以看到产品能被细分成很多种类。先明确自己属于哪一种,才能知道具体需要懂什么技术,以及需要了解到什么程度。

2.1.2 什么技术

  那么,产品需要懂哪些技术呢?
  首先,一些基本的东西得了解,例如什么是面向对象啊、如何从删库到跑路啊、以及PHP是最好的语言哇,但程度可以不用太深(详见2.1.3)。当然啦,有基本的编程能力,能明白一些算法思想、数据结构,可以使用数据库做一些查询操作,这是最吼的。
// 绘制原型这些属于产品的基本能力,不算是产品需要懂的技术
  但技术并不是懂的越多越深就越好,需要根据自己的工作来定。我们需要明确一点,产品要懂技术,是为了更好地让技术服务于目的,是为了更好地去解决问题,盲目地追求技术,过度陷入技术的细节,只会起到反效果。
  因此,产品要从实际需要出发,主动去了解自己工作中(包括未来的)会遇到的技术,例如一位数据产品,就需要去学习一些和数据相关的技术。
  另一方面,若是个人对技术有兴趣,也可以主动利用空闲时间去了解、学习一些技术,拓宽自己的能力域,为未来提供更多的可能。

2.1.3 “懂”的层级

  在明确自己是属于哪一类的产品,知道工作中会涉及到什么技术后,就可以对需要多懂技术有一个判断了。一般来说,“懂”的层级可以分为以下四级:

  1. 清楚概念,掌握技术的可能性和局限性(能做什么和不能做什么)
  2. 基本了解,知道技术的部分原理和方法(如实现过程),具有基本的编程能力
  3. 运用自如,能独立运用技术完成特定目标
  4. 悟得大道,通晓技术的核心思想,掌握核心科技

  其中,第一级是基本要求,如果这一点都没做到,那基本上就不是一个合格的产品。“大家明白,不论做什么事,不懂得那件事的情形,它的性质,它和它以外的事情的关联,就不知道那件事的规律,就不知道如何去做,就不能做好那件事。”
  而第二、三级则视个人工作和兴趣而定,如果是数据产品、后台产品等比较需要技术的,或者干脆就是技术导向的产品,没有一定的技术水平,怕是说话都没底气。而本身对技术感兴趣的话,也可以努力修炼到第二、三级,这样实在做不下去了,还可以转技术产品嘛。
  最后一级比较特殊,做到这个程度的,你就可以“出家”了。
// 其实很多产品只达到第一级,但这并没有妨碍到他们的优秀。

2.2 为什么

  解析完问题,我们可以来试着回答下,产品为什么要懂技术了,主要有五点:

2.2.1 与技术人员更好地沟通

  笔者自学技术,最主要的就是为了能更好地和技术人员进行沟通,能做到换位思考,这一点很重要。
  很多时候,我们会将技术和产品看成互相对立的两面,但其实能给到产品最多最直接支持的,往往也是技术。与技术的有效沟通真的太重要了 ,在三个月的实习中,有好几次问题是出现在沟通不到位的情况下。另一方面,技术猿(媛)并不是想象中那种死板的“工科生”,他们的思维其实很活跃,而且很有逻辑,只是平常话可能少了点=。=如果能和他们充分沟通,会少走不少弯路,还能得到很多的启发,甚至可以搞出个大idea。
// 有的技术猿(媛)比文科出生的产品汪还文艺,动不动就念上两首诗。

2.2.2 可能性和局限性

  产品汪可以不懂技术具体是怎么实现的,但必须了解技术的基本概念,知道技术能做什么,不能做什么,也就是技术的可能性和局限性。好比产品要用某型发动机制造一台汽车,可以不知道该发动机的技术原理,但必须知道这个发动机的特性、性能,可以为汽车提供怎样的支持。在此基础之上,才好发挥自己的创意和才能,为汽车设计更多更好的功能。而对这些都一窍不通,那不但利用不了该型发动机的优势,反而还有可能因为不清楚它的短板,而设计出一些听上去美好得“令人窒息”,事实上真的令人窒息的汽车了。

2.2.3 更懂取舍

  产品汪们日常要面对的主要矛盾,是产品日益增长的用户需求与有限的开发资源的矛盾。尤其是小公司,能投入的资源十分有限,若想用最少的资源获得最大化的产出,以确保目标的达成,每一步都需要精打细算。在这种情况下,如何选择需要舍弃或延后的需求,以聚焦于能有效帮助目标达成的,就很考验产品的功力了。而对于技术的了解,可以帮助产品评估需求的开发成本,以选择性价比最优的发布方案。

2.2.4 提升解决问题的能力

  作为一个技术渣,在自学技术的过程中,经常遇到各种各样的问题,有的问题连google都找不到(可能太过低级以至于没人提问),但最后总能找到解决的办法。这种不断出现问题又不断解决问题的过程,其实和产品的工作很像。产品本身就是要应对不断变化的需求,以及解决各种各样的问题。自学技术以来,技术水平没提高多少,但解决问题的信心和能力倒长进不小(毕竟技术渣,疯狂Error是日常)。

2.2.5 懂技术本身就是一件很酷的事

  最后,懂得技术本身就是一件很酷的事情。这里的酷不是指对着键盘啪啪啪乱打一通那种骚操作,而是运用技术去实现自己的想法、达成目的,例如用python写个爬虫抓取些音频、视频,又或者拿R分析一批数据最后导出成优美的图表,再或者建个个人站放些作品,既能提升效率,又可以提高逼格,岂不美哉。

2.3 小结

  总的来说,产品需要懂技术,不在于懂得了技术的原理和方法,因而能够负责具体的实现,而在于通过对技术的认识去推动问题的解决以达成目的。
  而要做到这点,有些个人心得,供诸君参考:

  1. 将本职工作做好:产品再懂技术,甚至本身就能胜任技术的工作,也应将产品的工作放在首位,例如产品逻辑要理顺、最基本的文档和原型要做好,一个思虑周全、逻辑清晰、不乱改需求的产品,才是最讨喜的。
  2. 不要过多干涉:产品懂技术,不意味着产品可以更多地干涉技术实现的细节,不要越俎代庖,更不要指手画脚,职责分明,才能合作无间。
  3. 主动了解技术:产品需要了解技术的可能性和局限性,从技术的角度看问题,以更好地让技术服务于目的。
  4. 积极与技术人员沟通:在这方面最能帮到产品的,还是团队的技术猿,产品与技术间良好的互动和沟通,可以极大地提升效率。
  5. 持续关注技术发展:一个合格的产品,是不断追求卓越、乐于拥抱变化的,技术永远都是在不断地发展变化的,产品要主动去了解技术的发展,紧跟趋势,才不至于被时代所淘汰。
  6. 在业务方面下功夫:产品除了需要懂技术,还需要懂业务,对业务逻辑越熟悉,就越有利于满足用户需求、实现公司目标。

  加上一篇私密的个人总结,三个月实习总结已经完成,接下来将会从敏捷软件开发原则开始写一些伪干货,望各位能多给些意见,也可以把我给批判一番嘛(Θ..Θ)

下篇预告:敏捷软件开发原则


Designed & bulit with all the love in the world by @GAIUS_YAO

你可能感兴趣的:(产品为什么要懂技术)