成为会带团队的技术人(六) 业务理解:深入业务是做好架构的前提

前面 5 讲围绕稳定性、技术债务和大项目管理分享了一些过往的经验与思考,从今天开始,我会用两讲的时间,围绕“架构设计与系统演进”与你分享我的经验。这几方面是我认为技术 Leader 在技术工作上一定要做好并且极为重要的,从八二法则上看,它们也是我认为值得花 80% 的精力去做好的,而你能否做好这几点会影响团队未来的发展。

其实对任何一个技术人来讲,“架构设计与系统演进”都不是陌生的话题,早些年“架构”还是一个有身份、充满力量的词,很多同学不敢张嘴闭嘴谈“架构”,但最近几年这个词变得愈发平常,与架构有关的各类书籍、文章层出不穷,而很多文章里都会有这样一个观点:架构要结合具体的业务场景来设计“结合业务场景”听起来应该是一件容易的事儿,但据我观察,在自己负责的领域里真正深刻理解业务的技术人凤毛麟角,所以我想专门拿出一讲,和你好好聊一聊“理解业务这件事”。

为什么技术要理解业务?

产品需求不等于业务诉求

日常工作中,往往产品提出要实现的系统功能未必等于业务想要解决的问题,但是有了一个明确的功能需求再搭配好 DeadLine,大部分技术同学的关注点就会变成:怎么在规定的时间内搞定这个需求。至于为什么要实现这个需求、它能否真正解决业务问题可能就没人关心了,这种情况你肯定不陌生。在这里插入图片描述

有时产品需求就好像说我们要造一艘船,这艘船要满足:载客量1W、速度200km/h,能抵抗10 级海浪,2 个月后完工。技术一看需求这么明确,马上着手实现,开始计划按照标准需要多少钢材、多少工人、几个发动机、船舱结构要如何设计。但是业务上的诉求是造船吗?如果你去找业务的同学仔细了解,可能会发现他的要求是:安全到达对岸。至于你是修桥、造船、开着老爷车绕路他其实并不是那么在意。
在这里插入图片描述

虽然我的例子略微极端,但是在实际的开发工作中,如果你不关心需求的源头,不去理解业务,只是低头实现,长此下去,真实的情况会更可怕。

另外,在大部分商业公司中,技术处于价值创造流程的末端(技术团队会被定义为支撑实现的团队),用户的真实需求在到达技术之前会经过业务、运营、产品等多个环节,每一层都会被加工、处理、拆分,技术看到的问题可能距想解决的问题已经很远了,没有搞清楚问题的源头而去解决问题,结果会很糟糕。
在这里插入图片描述

同样的,技术 Leader 可能会花时间参加各种会议,尤其是产品需求的会,在会上如果仅仅是听“自己团队应该做什么”,而没有思考和探究业务的根本诉求,那么就我的经验来说,技术团队不可避免的会成为工具人。Leader 缺乏独立思考,人云亦云,最后整个团队都会被拖累,这也是为什么大多数研发团队被产品以及业务按在地上摩擦的原因!

领域建模的前提是理解业务

在大型互联网公司中,DDD(领域驱动架构设计)是目前的主流,也是微服务落地的最佳实践之一。我们定义领域并且通过 DDD 思想设计服务模型是为了通过一套统一的标准描述业务流程与组成,但业界并没有一个共识的标准去定义,主要是根据经验、主观地设计,其中发挥最大作用的就是你对业务的理解。
在这里插入图片描述

以饿了么交易系统为例,熟悉订单系统的同学可能不会陌生,订单作为交易的载体需要承载大量的数据,在一开始,订单系统的演进完全跟着业务需求走,我们发现总有一些数据要存储在订单上,比如商户系统要在订单上加一个标志、营销系统需要在订单上放一个计算中间值……之前我们很难判断是否应该让这些数据落到订单上,因为这些系统的研发同学说得也有道理,数据落在订单上可以少几次调用,可以根据订单号便捷地获取。但是早期订单系统并没有做好对应的冗余设计,所以这些信息都存储在一个无法管理的 JSON 字段中,给我们带来了数不尽的麻烦。在这里插入图片描述

我们复盘后发现,出现这个问题表面上看是系统设计和实现不够好,但是根本原因是没有在深度理解业务的基础上对交易系统进行建模,确定边界与能力范围。如果可以更早地设计好交易模型,拆分正逆向交易,将订单场景、类型配置化实现,设计好标记数据的存储结构,那么很多问题都不会发生。
在这里插入图片描述

正因为没有仔细看业务的现状、推测业务的发展、去思考业务上对交易的诉求,我们认识的只是一个个需求,而非整体的从业务维度思考系统的设计,导致系统复杂度越来越高。所以要想设计可靠、简单、真正可持续迭代的系统,深度理解业务就是前提,你对业务的理解程度影响了你对系统未来发展的预判程度。
在这里插入图片描述

提升技术团队的使命感

最后,我认为通过理解业务可以让团队的同学进一步了解自己工作的价值和意义。技术同学对业务的直观感受大多来自线上的产品和系统,这和直接接触用户有很大差别,就好像有些设计你可能觉得不那么好,但如果有用户打电话过来投诉,你才能真的意识这个“不那么好”有多糟糕。

我之前负责的技术团队会定期安排同学在客服中心听线,然后与一线的客服人员直接沟通痛点,往往技术同学会受到来自用户和客服的双向暴击。比如营销系统研发的同学,可能一边用户会责问为什么某个红包无法使用、为什么系统优惠计算的金额和自己算的不一样,另外一边客服同学也在抱怨优惠信息查询复杂、不同红包的互斥规则在系统中没有体现等。技术同学一边收集问题,一边真实地与这个世界交互,而不是写完一段代码提交发布就结束了。

这种感知到自己的代码对真实世界产生影响进而生成的同理心是非常关键的,当你能清晰且直观地感受到:你写的每一行代码,线上的每一次发布,都会改变用户的体验,解决实际的问题,你就会发现这份工作的意义。

如何理解业务?

根据我的观察,很多 Leader 之所以能在技术组织中崭露头角,除了技术功底扎实之外,对业务的熟悉和理解也占了很大因素,尤其是阿里这样“尊重技术的公司”,P7 以上的技术人员能否晋升,深度理解业务很重要。而且级别越高,对你理解业务的程度要求也越高,可能你觉得理解业务并不难,某个领域的系统做久了,自然而然就了解了,但了解、熟悉和深刻理解不能混为一谈,这里面还有深度与广度之分。

很多人一开始对饿了么的理解就是一个送外卖的公司,觉得系统的架构和设计与电商会很类似,送外卖这么件小事儿能有多复杂?可能这些同学在饿了么上点过餐,加之这是一个 To C 的业务,在流程和操作上看起来也并不复杂,所以推理出背后的系统应该不难。

但实际身处其中的感受可能会完全不一样,我们常说看得见的都是最简单的,难的东西都藏在背后。过千万的订单、数百万商户和骑手,这背后是一整套业务体系和复杂的系统支持,餐厅和餐品的数字化、交易流程包括商户和骑手并且时效性要在 30 分钟以内、营销补贴长年持续不断,种种业务上的差异在系统上的体现会更加明显。单是一个骑手调度就包含了业务、商业、技术等多个角度的博弈,所以远观一个个业务只能说是知道,近观乃至下场去看、去做、去思考和尝试才能说是真正理解。关于理解业务我有三个小的建议:

不要盲信产品

在这里插入图片描述

借用雷军的话:永远不要试图用战术上的勤奋,去掩盖你战略上的懒惰。这句话形容大部分的PD 再贴切不过,厉害的PD很多,“说起来厉害的PD”就更多了,他们从业务方接收需求描述说明,然后简单加工成 PRD,再根据业务方的嗓门大小进行优先级的排序,最后直接输出给技术。

我对技术同学尤其是技术 Leader 的建议是: 不要盲信产品与 PRD,在讨论 PRD 和执行开发任务之前学会独立思考,深入理解业务想要解决什么问题,需要什么效果或作用,严格把控那些伪需求和无价值需求,防止它们侵占团队的技术资源。
在这里插入图片描述

要知道,如果 PD 已经退化成一个 PPT Designer 和业务需求的传话筒,那你就更不能让技术同学充当需求的实现机器,不然技术会陷入无价值的需求中,很难创造自己的价值,这也是为什么很多技术团队没时间偿还技术债务、业务节奏停不下来的原因。你要去看业务想要什么、处于一个怎样的环境、为什么想做这件事儿,把自己作为半个业务同学去理解业务,这样才能找到技术与业务平衡的空间。

建立走进业务的机制

在这里插入图片描述

技术领域 90% 的事情可以在理论层面证伪,10% 的事情在意料之外需要遵守墨菲定律,大体上还是可以通过数据来判断。但在业务领域,并不是所有的内容都可以通过数据判断对错,技术同学去理解业务,就是应该加强对业务的认知和体感,毕竟大家日常的思维方式已经很结构化和数字化了,更需要在理性之上去建立感性那部分。

最简单的方法就是代入用户视角,去实际地体验一下,看一看具体的服务、感受和业务流程是怎样的。滴滴就建立了走进业务的机制,滴滴的朋友曾经和我提起过这样一件事儿:他们内部有一个打车体验改进的机制,每个月选取一些同学,并给予他们一定的打车报销额度,这些同学将日常打车的体验总结下来,觉得哪些比较好、哪些比较糟糕,然后统一反馈给专门的同学,之后会按照问题的分类在业务流程上形成一个个实际的需求,由运营、产品、业务一起去解决。

饿了么也是这样,我们也会定期到某个城市去和市场 BD 的同学一起走访商户,或者作为骑手去餐厅取餐送餐,以此体验业务上的细节。比如走访商户后我发现如果营销系统比较复杂,大部分商户的使用成本就会增高,使用的意愿就会降低,往往商户只会用满减和红包几个简单的玩法;我之前在珠海体验送餐,因为珠海禁止电动车所以只能自行车送餐,每一公里都累得想吐,那时你才会发现派单系统有多么关键。

在技术团队你也要建立走进业务的机制,因为实际去体验业务会让你建立很强的认识感与同理心,还能发现一些痛点问题。你从统计数字上看一个骑手一天可以送20单,和你真的作为骑手一天去送20单,那个感觉是完全不一样的。只有站在他们的角度你才能看到他们的痛点,才会思考技术是不是能解决这些你原本未必知道或关注的问题,这就是业务同理心。
在这里插入图片描述

当然,我也想提醒你,不要让业务机制成为“一次性作秀”,最好有一个低成本可持续的机制,而不是仅仅是为了走个形式到业务侧打个卡。要带着发现问题、解决问题的想法走进业务。我建议你从客服入手,成本低、效果好、每次都带着任务来也带着问题走,很容易就形成一个可持续的循环。

业务上多参会多画图

在这里插入图片描述

可以适当参加业务会议,比如运营、客服、BD 的月度复盘会,或者给老板做的业绩汇报会,定期与产品一起参加业务需求的评审会,从源头来看业务方想解决的问题是处于一个怎样的背景。

另外,如果说技术了解系统,梳理架构是通过画各种架构图和系统链路图,那么对于业务同样可以结合自己的整理去画业务流程图。技术视角的业务流程图并不需要特别复杂,也没必要一定遵守某个标准范式,只要能将“谁在、在什么时候、做什么、产生什么变化”这些画明白就可以了。比如饿了么点餐的交易流程图,可以简单画为:

在这里插入图片描述

技术人员梳理业务流程图时还有一个优势就是可以借助系统和数据来辅助你理解,因为系统是你做的所以你非常清楚数据流是怎样的,中间发生了什么变化,通过追踪数据来研究每一步的处理逻辑进而理解业务的处理步骤。

同时,你可以将自己的理解分享给团队的其他成员,对一个团队而言,最好的改变肯定是从个体到集体,你一个人认识、熟悉、理解业务还不够,还要让整个团队认识、熟悉和理解业务,这样才会让系统和产品产生质变。在这个过程中也会让团队成员建立正确的认知,让成员明白理解业务与编码交付同样重要,这样一来,其他人也会有意识地去关注业务的变化、去了解业务的现状。试想如果团队中每个人都对某一部分业务了解很深,大家就可以通过各自分享的方式组合成一个完整的业务认识。道理与熟悉系统、分析架构是一样的,重要的是形成这种认识和氛围。

小结

这一讲我和你分享了理解业务的重要性和一些小的建议方法,希望你意识到理解业务对实际工作会有巨大的帮助。并且理解业务并不是嘴上说说或者参加一两次业务会议就够了,你要先在心里意识到理解业务的重要性和收益,然后愿意像研究代码一样去琢磨业务是如何运作、接下来可能会怎样发展,并且将这些思考和对业务重要性的认识反复传达给团队。

技术人深刻地理解业务所产生的结果是“1 + 1 > 2”的,很多时候业务乃至产品认为只能通过A方案来解决的问题,可能在你眼里还有B、C、D的方案,或者更清楚不同方案的利弊与取舍,因为懂技术可以带来无限的可能。

在这里插入图片描述

留个作业:你对当前负责的业务是如何理解的?如果你团队有新成员,你会通过何种方式帮助他快速理解你们的业务?

精选评论
**8904:
BD是什么意思呀?

讲师回复:
business development,我们一般指的是一线业务人员,直接面向商户的,以前饿了么比较多

**涛:
十分同意,业务同理心很重要,理解起来有点类似于广义上的用户体验

*春:
非常认同,业务可能要个马,其实背后是要辆车

讲师回复:
没错,业务要的和技术做的,之间永远有一个适配,多了少了都不行

注:该文章为拉勾教育【成为会带团队的技术人】课程课件,写此文章主要是做笔记,如有侵权,请联系删除

帮我检查下面内容中有无错别字或者用词不当的地方。新岗位要求评估 1、夯实能力:需要具备协调资源、达成组织目标的能力,具备更广阔的技术视野和沟通能力。 2、战略执行:对业务交付目标、技术发展趋势要有更为清晰和全面的认知,既要关注团队的短期价值交付目标,更要规划好团队的长期发展目标。 3、平衡职责:做好团队管理工作和技术研发工作之间的平衡,定期和团队成员进行一对一沟通,了解成员遇到的困难和挑战,对成员遇到的问题要提供必要的支持。 4、团队赋能:扮演好员工与部门、中心之间的纽角色,防止过度释放责任和压力到团队成员,确保形成良好的团队氛围和价值观,打造有能力、有动力、有活力的技术团队。 发起日期 2025-03-28 个人现状评估 个人优势 1、业务理解能力:入职后专注于场外衍生品平台的研发工作,作为核心开发人员全过程参与了平台0到1的实现,在业务需求理解的广度、深度上具备了较强的优势。 2、技术研发和创新能力:具备优秀的研发能力,通过了部门首批3级开发工程师的认证,主导了场外衍生品平台前台系统核心开发框架和功能模块的研发,善于跟踪和应用新技术,推动自研技术框架在平台内的广泛应用,参与申请了4项发明专利和1项外观专利(其中3项已授权,2项公开中)。 3、计划和流程管理能力:作为开发组长,在研发工作的计划管理和流程管理方面积攒了较多的经验,能够协调资源,推动项目按照计划顺利实施。 当前不足 1、团队培养系统性:遇到技术难题时,更加倾向于亲自解决难题而非指导成员成长; 2、向上汇报沟通技巧:技术细节过多,缺乏业务价值提炼; 3、战略思维高度:关注点仍集中在短期交付,对技术路线图与业务长期发展目标的关联度思考不足。 个人90天转身计划 我该如何为新角色的成功做好准备? 1、升级认知:完成云端学院”BAL接力者“系列课程的深入学习,从思想层面理解新角色的重要性并形成认知上的转变。 2、重构时间:做好研发工作和管理工作的时间分配平衡,以研发交付为根本,以管理工作为手段,推动团队研发和业务交付的有序进行。 3、增强技能:学习相应技能课程以及和上级进行密切沟通,针对个人现状评估中针对新岗位的不足之处,通过学习、实践到再学习的循环,实现技能水平螺旋式的上升。 4、建设网络:从有利于团队发展整体角度出发思考和构建人际网络,包括业务部门和部门内兄弟团队的关系,尽快推动人际网络的构建,以便后续工作能够顺利开展。 我的速赢工作规划是什么?(短平快) 1、完成和团队所有成员进行一对一的沟通,了解团队成员在工作状态、个人发展规划、对公司组织和对自己的看法等内容,一方面拉进彼此的关系,另一方面对团队成员的能力项进行整理,输出能力雷达图。 2、针对团队近期和本年度的重点工作内容进行梳理,按照季度进行规划,通过目标牵引的方式,让团队成员更加清晰知道短期、长期的交付目标,理清自身负责的任务和边界,提升计划制定和业务交付的合理性和及时性。 我需要我的导师和教练提供哪些支持? 1、如何成为一个合格的团队管理者? 2、如何推动团队的良好发展,实现更大的价值交付?解答这2个核心问题,既需要读万卷书,也需要行万里路。因此希望导师和教练将自身丰富且成熟的管理经验、人生经验,以授课的方式传授给新人。
04-01
<think>好的,我现在要帮用户检查他提供的材料中的错别字和用词不当的地方。首先,我需要通读一遍整个内容,逐句逐段地查看是否有明显的拼写错误或者用词不合适的地方。 首先看“新岗位要求评估”部分。第一条“夯实能力”中的“协调资源、达成组织目标的能力”看起来没问题。“更广阔的技术视野和沟通能力”这里用“更广阔”修饰技术视野,可能是否合适?通常我们会说“更广阔的视野”,但“技术视野”搭配“广阔”也可以接受,不过或许“更宽广”或“更全面”更常见?不过这可能属于用词偏好,不算错误。 第二条“战略执行”中的“对业务交付目标、技术发展趋势要有更为清晰和全面的认知”,这里的“更为”是否应该用“更加”?其实两者都可以,但“更加”更口语化一些,而“更为”稍微书面一些,没有错误。 第三条“平衡职责”中的“做好团队管理工作和技术研发工作之间的平衡”,这里的“做好...平衡”搭配是否合适?通常会说“保持平衡”或者“做好平衡工作”,但原句结构可能有点生硬,可以调整为“在团队管理工作和技术研发工作之间做好平衡”。 第四条“团队赋能”中的“防止过度释放责任和压力到团队成员”,“释放责任”不太常见,通常会说“避免将过多的责任和压力转嫁给团队成员”更自然。“释放”在这里可能不太准确,用“转嫁”或“转移”更合适。 接下来是“发起日期”部分,日期格式正确,没有问题。 “个人现状评估”中的“个人优势”第一条,“全过程参与了平台0到1的实现”中的“0到1”通常写作“从0到1”,加上“从”更符合习惯。另外,“场外衍生品平台”是否正确?需要确认是否是专有名词,如果是的话没问题。 第二条“技术研发和创新能力”中的“部门首批3级开发工程师的认证”,“3级”是否应该用汉字“三级”?不过数字和汉字混用可能根据公司内部规范,不一定算错。“主导了...前台系统核心开发框架”这里的“前台系统”是否正确?如果是技术术语,没问题,但需要确认是否应为“前端系统”或其他术语。 第三条“计划和流程管理能力”中的“积攒了较多的经验”,“积攒”通常用于具体事物,如积攒钱财,经验一般用“积累”更合适。 “当前不足”第一条“团队培养系统性”中的“遇到技术难题时,更加倾向于亲自解决难题而非指导成员成长”,这里“团队培养系统性”作为标题,可能需要调整结构,比如“团队培养的系统性不足”更明确,但用户可能为了简洁而这样写,不算错误。 第二条“向上汇报沟通技巧”中的“技术细节过多,缺乏业务价值提炼”没有问题,但“沟通技巧”是否应为“沟通技巧不足”?不过标题已经放在“当前不足”下,可能可以接受。 第三条“战略思维高度”中的“关联度思考不足”可能更准确的说法是“对...关联度的思考不足”,但原句结构没问题。 “个人90天转身计划”中的“转身计划”是否正确?通常“转身”在职场中指角色转换,正确。“BAL接力者”是否为课程名称?如果是的话,保持原样。 “重构时间”中的“以研发交付为根本,以管理工作为手段”是否搭配合理?“根本”和“手段”的对比可能合适,但可以考虑“以研发交付为核心,以管理为手段”更顺口。 “增强技能”中的“通过学习、实践到再学习的循环”是否应为“学习、实践、再学习的循环”更流畅? “建设网络”中的“从有利于团队发展整体角度出发”是否应为“整体发展角度”或者“整体团队发展的角度”? “我的速赢工作规划是什么?”中的“速赢”是否为“快速见效”的意思?如果是的话,可能没问题,但需确认是否为常用术语。 第一条中的“拉进彼此的关系”应为“拉近”,错别字。“进”是进入,“近”是接近,这里应该用“拉近”。 “输出能力雷达图”没有问题,属于常用术语。 第二条中的“理清自身负责的任务和边界”是否合适?“理清”正确,但“边界”可能指职责范围,正确。 “我需要我的导师和教练提供哪些支持?”中的“既需要读万卷书,也需要行万里路”正确,没有问题。“以授课的方式传授给新人”中的“授课”可能改为“指导”更合适,但授课也可以接受。 总结一下,需要修改的地方主要是“拉进”改为“拉近”,“积攒”改为“积累”,“释放责任”改为“转嫁责任”等。另外注意部分用词的调整和语句的流畅性。</think>以下是对文本的校对建议,按模块分类整理: ===== 错别字修正 ===== 1. "拉进彼此的关系" ➔ "拉近彼此的关系"("进"应为空间移动,"近"表示关系密切) ===== 用词优化建议 ===== 【岗位要求模块】 1. "防止过度释放责任和压力" ➔ "避免过度转嫁责任和压力"("释放"易产生歧义) 2. "更广阔的技术视野" ➔ "更全面的技术视野"(视野广度用"广阔",技术维度适用"全面") 【个人优势模块】 1. "积攒了较多的经验" ➔ "积累了丰富的经验"(经验积累更符合中文表达习惯) 2. "平台0到1的实现" ➔ "平台从0到1的建设"(更符合互联网行业术语) 【当前不足模块】 1. "战略思维高度" ➔ "战略思维高度不足"(保持句式统一性) 【转身计划模块】 1. "通过学习、实践到再学习的循环" ➔ "学习-实践-再学习的闭环循环"(增强专业感) 2. "从有利于团队发展整体角度" ➔ "基于团队整体发展视角"(提升句式流畅度) ===== 格式规范建议 ===== 1. 日期格式建议统一为"2025年3月28日"(中文正式文档标准格式) 2. "3级开发工程师" ➔ "三级开发工程师"(数字单位建议统一使用汉字) ===== 专业术语优化 ===== 1. "前台系统"建议核实是否为"前端系统"(技术场景中需区分前后端) 2. "能力雷达图"建议补充说明维度(如技术/业务/管理等多维度评估) ===== 可加强表述的建议 ===== 1. 在"战略执行"要求中,建议补充具体战略拆解方法(如OKR/KPI等) 2. "一对一沟通"可增加频率说明(如双周/月度定期沟通) 3. "技术路线图"建议关联具体规划工具(如技术矩阵/架构演进图) ===== 结构优化建议 ===== 1. "速赢工作规划"可增加量化指标(如"1个月内完成全员沟通") 2. 专利状态建议使用表格呈现更清晰: ``` | 专利类型 | 申请数量 | 授权状态 | |----------|----------|----------| | 发明专利 | 4项 | 3项授权 | | 外观专利 | 1项 | 2项公开中| ``` 以上修改建议在保持原文核心内容的前提下,主要针对表达的准确性、专业性和流畅性进行优化。具体调整可根据实际应用场景选择性采纳。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值