技术人员做产品的盲区
原文 Typical problems of technical founders ,很多做技术的喜欢嘲笑产品经理,这是非常无知的。很多基础架构的产出(产品)都是面向公司内部的其它团队,如何让其它团队使用,是非常大的挑战!而这比销售创业产品要简单很多,对比之下,技术能力相形见绌。
盲区具有毁灭性。你挣扎多年,直到意识到自己思维中显而易见的问题,一直在抹杀你的努力。在过去,直到花光六位数的投资,我才意识到项目基于的假设是错误的。尽管这让我认识到了自己的一些盲区,但我确信前方还有更大的盲区等着我。
做软件生意是困难的,开发者构建自己的产品,也会碰到同样的问题。开发者的软件开发经历还会带来认知偏差。要完全消除这种偏差首先得认识它们。
1 工程引力
工程似乎有强大的引力,把我们从生意上拽走。对于非技术背景的企业主,开发是成本中心,他们的主要目标是构建盈利的生意,软件开发是一个代价高昂的阻碍。但是对开发者而言,编码相对简单,所以不假思索的添加功能,把软件复杂化。
最糟的情况是,他们把添加功能当成挑战,并乐在其中。这或许有灵光的时候,但决策应该建立在市场调研上(和潜在的客户或现有客户沟通)。
生意90%的结果,90%的努力都是编码无关的,它们应该是:售前、调研、市场、SEO、客户支持等。
构建和维护内部工具是一个黑洞。一些工作似乎不可避免,但当他们耗时超过一周时,需要警惕,它的引力可能完全摧毁你的项目。大多数时间应该购买现成解决方案,短期看是一笔不小的开销,长期看却是省钱的。
另一个危险稍小的问题是:借开发之名逃避企业琐事。纵然是困难的工程问题,看起来也比含糊不清的任务让人舒服。目标是盈利的生意,时刻围绕这个安排工作的优先级。
1.1 建议
- 不在没有市场调研的情况下开发。
- 使用成熟的技术栈。
- 使用简单的方法,第三方服务、脚本等。
- 编码是为生意服务的。
2 过度思考和完美主义
当设计和管理你的第一个独立产品时,会过于自由而不知所措。当我做第一个项目时,我用了一个月调研可行的技术方案,而这个方案最后还被抛弃了,期间没有写一行代码。
为了避免这种情况,设置一些约束是必要的。例如:最多调研一周,然后挑选一个最好的。不要担心不完美。对产品而言,100%的完成度不是必须的。你可以提供比竞争对手功能少,但在解决某些问题上更优的产品。
通常而已,特性不是好事情。每一个特性都会搅乱UI,引入BUG,让代码维护更复杂,增加支持成本。这是为什么 mininum viable product
如此高效的原因,它验证了核心思想,并且可以根据真实的市场反馈开发后续功能。
客户不在乎产品代码是不是优雅,算法是不是复杂,他们"雇佣"产品解决问题。很多成功的软件都是在获取第一批用户后,慢慢改进质量的。另一方面,很多产品迷失于完美主义,迟迟不能发布。(你会什么招数不重要,重要的是解决问题。)
2.1 建议
- 设立最后期限避免完美主义
- 关注收益,而非特性
- 尽早发布,让市场反馈指导后续改进
- 从小目标开始
3 内向
不喜欢社交的人,如果不强迫自己面向大众,他成功的概率会大大减小。没人会注意到你的产品,除非你在网上大声说你的产品。对于软件而言,病毒式传播的机会是必须的。
3.1 建议
- 一周至少专注市场和推广一次。没什么可展示不要紧,聊你的想法和构建过程。
- 别害羞联系你不认识的人,这是做生意的核心。
- 经常获取反馈修正自己的感觉。
4 活在科技泡泡中
现代软件开发的要求很高,我们必须不断学习、更新自己的技能,语言、框架、工具等。专业发展占用了大量工作之外的时间,所以软件工程师倾向于法制技术相关的爱好。不幸的是,过度专注技术在某种程度上降低了成功的可能。
首先,失去大多数用户如何使用软件的感觉,因为你一直和专业用户打交道。在技术社区,你经常看到人对 slack
成功的困惑,甚至愤怒,它只是一个基础的IRC,怎么如此受欢迎?android设备如此灵活和实惠,为什么iphone卖的这么好?通常的解释是:消费者被市场愚弄了,但这是一种懒惰思维。在用户体验方面,这些产品有很多值得学习的,这对非技术背景的用户而言很重要。
当然,可以创造面向其它开发者的软件,但这条路上早已人满为患。同样的道理也适用于:当你能想到某个普通问题时,这个市场早已成熟并饱和。为此,必须离开技术泡泡,去探索其它行业鲜为人知的需求。
4.1 建议
- 观察非技术人员如何使用软件,他们是怎么想的。
- 学习流行产品,纵然你不喜欢它们的使用场景。
- 寻找机会,接触不同行业,了解他们是如何运作的。
- 每周花时间学习其它课题,例如设计、市场等。