理解技术和业务的共同目标
昨天更新了一篇关于稳定性保障的文章,我在文末写了这样一句:
遇上降本增效,或者换一个重业务轻技术的领导上台,技术团队就是第一个被砍的。毕竟在国内这种环境,哪儿来的技术导向和工程师文化,不都是营销为王和短期利润为重。
有同学提了一个疑问,技术和业务,到底哪个重要?毕竟绝大多数公司都要靠自己的业务赚钱盈利,业务肯定很重要。
但如果技术不受重视,势必意味着在这方面的投入降低,导致系统质量不高,用户使用体验差,甚至系统出问题影响业务的正常运营,这样来看技术好像也挺重要。
这个问题不妨换个角度思考:技术和业务的关系是什么?如何平衡在技术和业务上的投入,以保障企业的核心(赚钱盈利)目标达成?
在一些专业的企业管理或者财经类书籍中,会根据企业经营的业务方向来划分行业所属板块,比如科技、服务、消费。半导体芯片类属于科技类型,白酒调味品属于消费类型,电商和物流则是服务类型。
以上周末出了重大线上故障的阿里云为例,阿里云的主要业务是通过互联网将算力以按需使用、按量付费的形式提供给用户,主要包括计算、存储、网络、数据库、大数据计算、大模型等算力形态。
云服务厂商,提供的是以云技术产品为核心的服务,注意,他们的业务是提供基于云产品的服务,而不是直接的云技术产品。产品的出现是基于市场存在某种诉求,然后才转化为具体的业务需求,然后通过技术实现产品要求,最后通过服务的形式提供给用户使用。
这种逻辑其实适用于大部分互联网企业,其中技术和业务的关系,简单来说就是通过技术手段快速实现业务需求,支撑业务目标达成,业务目标达成约等于赚钱,公司赚钱了才能在技术上有一定的持续的投入,也会反过来倒逼技术持续改进和优化,更好的支撑业务目标实现。
反之,为什么这两年很多互联网公司裁员降薪,大搞特搞降本增效呢?就是因为业务没以前赚钱了,这个时候对技术的投入就没那么积极了,且技术转化为业务增长的趋势很难直接明显看到变化。
而且在很多公司技术团队更多的被视为成本部门,最直观的感受就是技术部门薪资成本和硬件资源(主要是服务器+人手一个的mac)成本太高。
毕竟,行政和财务运营等部门,用的大多还是便宜皮实的Windows电脑。从某方面来说,谁不想用更贵更好看的办公用品和设备,有时候企业的某些流程规范和决策,并不一定是纯粹客观的。
回到本文主题,技术和业务的目标,各自是什么呢?
在实际工作场景中,业务和产品团队,对技术团队的要求主要有如下三点:
- 快速实现:这个需求很简单,怎么实现我不管。
- 变更响应:各种紧急插入的需求,研发过程中突然变更需求。
- 快速交付:恨不得上午提出需求,下午开发测试完成,晚上线上发布。
而技术团队在面对业务和产品团队的诉求时,技术团队的目标是什么呢?
- 面对快速实现,要考虑需求的实现难易程度。
- 面对变更响应,要考虑变更的影响范围和响应的技术效率。
- 面对快速交付,要考虑交付的质量以及线上的服务稳定性保障。
技术和业务的关系,或者说目标,可以用下图来说明:
综合业务和技术各自的诉求和目标,其实双方的共同目标可以归纳为如下三点:
- 明确的范围:即需求实现范围要明确标定,否则很难实现并为用户提供服务。
- 可量化的指标:无论是响应变更速度,还是技术交付效率,双方都需要明确可度量。
- 实现业务价值:业务希望自己的需求能快速实现,为用户提供服务来变现赚钱;技术则希望支撑业务赚钱,自己获得业务团队的认可,以及自身的成就感。
这三点共同的目标,背后其实就是质量。业务要的是技术能支撑业务目标达成,并且不要有技术原因导致业务受损;技术团队也不希望自己交付的产品有质量问题而被业务投诉,甚至影响绩效评级。
这其实也是软件测试工作最大的意义,同时也是质量保障最大的价值。