Sbermarket

帮助食品科技巨头加强团队

SberMarket 能够从 METRO、Auchan 和 Vkusville 等超市将杂货和家居用品送到您家。 客户可以通过网站或移动应用创建订单,然后由 Sbermarket 的合作伙伴完成剩下的工作。 提货员会拿着购物清单在商店里四处走动,只挑选最新鲜的产品,然后由快递员把订单送到顾客手中。

Evrone 的开发人员不断利用自己在多个内部团队中的经验和专业知识,帮助 SberMarket 改进其数字服务。

挑战:快速投入企业级产品

2020 年,由于大流行,许多人开始居家工作或被迫隔离,导致了广泛的网上购物变化和需求。 由于在线杂货采用率的增加,SberMarket 利用这个机会让客户的生活变得更轻松,并在电子杂货市场实现了指数级的增长。

要做到这一点,必须迅速建立开发团队,以应对增加的工作量并跟上开发新功能的步伐。 与此同时,所有新进的专家都必须拥有丰富经验,并具备所需的工具和知识,以便尽快完成培训并参与开发。

此外,需要将项目的各个部分划分为单独的服务,因此还需要修改基础架构。 每个单独的微服务都必须与代码绑定,并且需要配置与其他部分的网络交互。 客户还需要一个具有在微服务架构中实施测试策略的知识和经验的团队

Evrone 团队在电子杂货方面拥有丰富的开发经验,创建过专注于送货上门的大型食品技术产品,我们的技术栈非常适合 SberMarket。 我们的专家成功通过了严格的面试,成功加入了 SberMarket 团队。

解决方案:适用于任何任务的通用高级开发人员和 QA

在过去的一年中,Evrone 为 SberMarket 的各个项目团队增加了前端开发人员、后端开发人员和 QA 工程师。 我们帮助开发了内部和外部功能,还在测试团队中进行了知识管理。

SberMarket 的开发团队相互分离并独立存在,完全在内部完成大型任务,Evrone 专家会根据当前需求进驻到各个团队。

手动测试和知识管理

SberMarket 对我们的专家水平提出了很高的要求。 这是因为该项目有很多紧急工作,只有高级专家才能迅速参与其中。 中级专家没有足够的经验来应对此类挑战。 此外,高级 QA 工程师通常了解许多技巧和窍门,并拥有测试卡和测试场景、优化问题的方法,以及在开始开发之前需要与团队讨论哪些案例的知识。

通过使用我们外包的高级 QA 工程师,SberMarket 获得了他们所需的多学科、高水平的专家。 他们可以随时在团队间转移,并完成紧急需求,不浪费时间。

除了测试本身,我们还帮助完成了知识共享的任务。 由于整个公司都在动态增长,招聘过程很快,新员工需要迅速做好工作准备。 因此,我们的一名 QA 专家开始担任知识管理员,监督和维护基于知识管理的系统。

知识管理员会收集有关项目需求、非透明流程以及缺失的说明和知识的信息,然后进行处理,以可读和可访问的形式进行存储,并帮助其他员工使用。 他们还必须使这些信息保持最新,因为信息可能很快就会过时。

从一开始入职,共享信息就能够帮助员工。 当新的专家加入团队时,他们就知道从哪里获得他们进入角色所需的所有信息:团队的组成、团队目标、OKR、项目中使用的工具列表、有关技术栈的信息、体系结构、部署的特点,以及电话和会议的日程安排。 此外,还重建了团队之间的入职系统,以及 QA 的通用知识库,以便更方便地与其他同事分享知识。 新的知识管理系统是在 Confluence 的基础上建立的,有助于对有价值的知识进行标准化。

常规的前端任务

Evrone 的专家们从一些小的常规任务开始他们在前端的工作:更改文本,替换图片和动画。 这项工作帮助我们熟悉了代码库,这对重构任务很有用。

例如,我们需要更改弹出模态和通知的显示顺序。 在重做之前,它们显示混乱且重叠,这会让用户感到困惑。 修改后,它们开始轮流出现,这样就很清楚哪个通知适用于什么。

更改身份验证协议

使用电话号码登录应用比使用电子邮件地址和密码更安全。 例如,使用后者,攻击者可以通过其他服务的泄漏,获得对您的邮箱的访问。 现在,这种情况不可能发生,因为要登录,您就必须持有能够接收验证短信的手机。

我们研究了呈现后的屏幕,分析了代码,并在前端实现了必要的功能。 启动新身份验证后,我们还帮助防止了用户迁移的问题。

如果只是根据新规则启用登录,您可能会失去部分用户,因为许多用户并不会关闭应用,而只是将其最小化,或者他们会使用永不终止的 Web 会话。 由于新的规则,用户将不得不重新注册账户,其中许多人可能会对这个新出现的障碍望而却步。

因此,我们对用户进行了分批迁移。 我们从那些使用相同电话号码订购的用户开始。 只需将使用过的号码关联到他们的账户,这样这些客户就可以用新的方式登录了。

对于其他活跃用户,我们创建了引导屏幕,其中包含将电话号码关联到账户的说明。 我们使用 AB 测试确定了在哪个阶段显示说明,以便尽可能多地获得关联了电话的账户。

使用这些方法,我们成功地聚集了大部分受众,即最活跃的用户。 每个遇到问题的用户都被转到了技术支持部门,因此我们整个阶段没有任何损失。

为 AB 测试创建子系统

另一个具有挑战性的任务是为 AB 测试创建子系统(用于测试通过短信验证码进行的身份验证)。 我们参与了该系统第一个版本的创建,这实际上是一个最小可行产品,它满足了产品分析师的要求。 当然,也有开放源码的解决方案可用,但它们存在功能缺失,因此管理层决定创建自己的解决方案。

该子系统在 AA 测试中进行了调试(检查用户的正确分布)和启动。 能够继续正常工作,并帮助分析师收集数据。

后端

在后端,我们的开发人员参与了订单路由和支付处理任务。 订单路由器在其内部业务逻辑的指导下,计算如何以最经济、最快速的方式进行订单配送,并确定是否值得呼叫合作伙伴的出租车。 我们目前正在继续研究这个系统。

由于过渡到新的支付网关,需要进行新的处理。 同时,确保用户在创建订单时不会注意到差异也很重要。

虽然这两个目标都是在幕后处理的,但它们与业务结果直接相关。 例如,物流和配送的自动化将改善用户体验。

此外,我们的专家正在帮助开发不同的 API,并将管理面板前端转换为单独的应用。

将管理面板从 Rails 模板转为 Reaction 应用

后台员工使用管理面板添加产品、商店和零售商,并用它管理运营模式和配送时段等。 如果出现问题,技术支持还可以用它来手动管理订单。 事实上,所有站点设置都通过管理面板进行

之前,管理面板用 Rails 模板实现,前端渲染在后端进行,这给服务器造成了负载。 现在,我们将其换为了 React,它正在逐渐成为一个独立的项目。 我们也对后端进行了更改,以便通过修改旧的 API 端点和创建新的 API 端点来为 Reaction 应用提供必要的数据,这同样需要创建和补充文档。

为零售合作伙伴开发通用 API

在后端,我们正在开发用于集成外部合作伙伴的新 API,同时考虑他们的需求。 该 API 的主要端点与订单处理相关,包括创建、评估、状态和支付信息的交换。

此外,有时我们还帮助解决继承问题,因为早期的方法在新的条件下可能根本不起作用。 我们通过此次重构获得了性能提升。

成果

我们继续致力于 SberMarket 项目,并为他们现有的团队增加新的人员。 即使是资历很深的专家,也通过项目获得了成长,并带来越来越多的收益。

例如,我们会协助 SberMarket 进行面试,本质上是将技术面试作为一项服务来提供,因为随着产品的发展和更多开发人员的加入,需要更加关注他们的技能。 QA 经理结合了测试专家的职能和知识管理,密切参与知识的积累和传播,但是在整个 SberMarket 公司的规模上。

对于已完成的任务,我们的开发人员和测试人员会继续为其他团队和新员工提供建议。

我们专家的成长和他们成功通过客户严格面试的能力表明,SberMarket 已经从 Evrone 团队获得了他们需要的高水平专家。 这些专家具有必要的经验和洞察力,能够发现服务的设计和开发中可能出现的错误。

我们计划从自己这边扩大团队,参与 Go 语言微服务的开发,因为我们在食品科技和金融科技项目中都有使用这项技术的经验。

如果您正在寻找外包 QA 测试,或者您需要能够快速进入工作流程、具有电子杂货经验的可靠专业人员来加强您自己的开发团队,请填写下面的表格。我们将与您联系,并就您的项目进行讨论。

SberMarket 是一个复杂而庞大的项目,所以我们期望专家不仅要有很强的技术技能,还要有沉浸在产品中并怀着兴趣理解产品的意愿。 从这个角度来看,Evrone 团队是优秀的合作伙伴。 他们不仅完成了指定的任务并帮助启动了新的功能,而且还分享了他们在不同领域的深厚专业知识,包括:开发、QA 和知识管理等。
Dmitry Chudinov
SberMarket 前端负责人
联系我们
已有项目构想?
我们一起来实现它吧
添加附件
文件必须小于 8 MB
允许的文件类型:jpg jpeg png txt rtf pdf doc docx ppt pptx
本网站受 reCAPTCHA 保护,并适用 Google 隐私政策服务条款