Wayfair有它的传统,当涉及到业务:它是通过和通过扎根于电子商务。已经在Wayfair超过三年,我们的iOS团队,我能够成为经济增长和扩张的许多阶段的一部分,一直到我最近的挑战:建立了我们的第一个实体店的技术后台。

实体店,你说呢?这是真的- Wayfair的第一个物理存储在纳提克商场马萨诸塞州波士顿附近的8月开业。我们的这部分业务一直是一个有趣的旅程,以构建和导航,同时保持我们改变人们购物的家园的方式的目标。

从纯粹的在线模式到合并一个离线商店,需要相当多的技术知识、敏捷性、特别决策,等等。让我们看看我们是如何到达那里的,好吗?

前门店

当我在2016年加入Wayfair的iOS团队时,我们有一个由软件工程师组成的小团队,为数百万客户开发iOS应用。Wayfair本身作为一家公司正在成长,并且有远大的目标要实现,我们需要雇佣更多的工程师来实现这些目标。

iOS的团队,随着时间的推移,增长每年在Wayfair iOS应用的具体方面的工作,各个击破到客户的旅程将如何发生 - 从最初发现到最终交付。有了这样的增长,我从一个技术角色移动到一个组织,最终导致众多小团队做出了较大的iOS组织。

领导这样一个大的团队,能够小组领导汇报了我,是一个伟大的经验,除了我的职业生涯。但是......我终于觉得再移动到一个技术角色痒。我想成为行动的一部分,可以这么说。我想工作,对激励我的团队在复杂的技术难题,并与欲望仍然沸腾,我碰到一个机会,我也不能忽视进来。

Wayfair在内部宣传了一个新团队的角色,这个团队就像公司内部的初创公司一样——一个由工程师、产品经理和零售人员组成的小型敏捷团队,为我们的第一个实体店奠定了基础。这个团队需要一个能够为商店的未来制定架构、策略和技术愿景的人,而我很幸运地被选为领导。所以,让我来告诉你我们是如何处理这些事情的!

开始了新生活

实体零售是Wayfair的使命的延伸改变人们购物的家园。随着我们的第一个开口,全方位服务的砖和砂浆零售我们正以一种引人入胜的形式将Wayfair品牌带入生活,并为我们的顾客提供一种享受Wayfair独特购物体验的新方式。这将帮助客户沉浸在Wayfair品牌,探索我们的目录,寻求从产品设计专家的帮助下,最终他们提供更放心,安心和满意度爱的家园。

我们曾提到Wayfair的启动精神的团队,那肯定是从一开始就计划中的一部分 - 移动速度快和迭代得到的东西推出,一个MVP,同时重用尽可能多地从我们自己现有的系统。有了这样说,我们的首要任务技术明智的是:

  • 销售点(POS)软件,以及如何将我们目前的系统中工作
  • 动态定价,以反映已经存在的Wayfair.com网站
  • 数字表示的物理小插曲;换句话说,展厅
  • 通过我们的各种服务,例如分享客户发现的产品或收集到的房间想法,增加客户价值

利用上述,要被包括在实体商店也需要通常的概念。看到和感觉的产品是必须的,自然。我们也希望,客户可以通过网上购买的协助,并获得更多质量时间与设计精明的设计顾问的地方。我们决定把这称为“家吧”,这也将采用我们VR的经验,我们已经在我们的Wayfair下一页实验室被开发。

正如你所看到的,我们有很大的梦想,我们希望在一个面向服务的,但技术娴熟的方式已经配备。那么,让我们看看如何构建这一切!

构建团队

我们没有寻找一个新的团队,而是建立了一个新的团队意识决定在公司内部寻找对变化和快节奏工作感兴趣的人。这允许我们移动得更快,因为他们Wayfair-ready,我们利用他们的技术专长。

让人们有机会探索在公司内部新的东西是一个伟大的脚向前为我们实体店的团队。随着我们内部的搜索,我们能够找到有经验的各地仓库管理,产品推荐,以及支付系统三个软件工程师揭开序幕构建。更多的专业人士?最初,所有女性的工程集团,其中我有被受到挑战,并与合作的荣誉。

当然,这不是没有挑战的。和经验丰富的同事一起工作的一个有趣的因素是,他们处理问题的方法和你不同,但仍然在同一家公司的范围内。最重要的是,沟通变得需要用不同的方式来处理——这不是一个自上而下的团队来进行决策和协作。我是第一个承认有时会有斗争的人,但这只会使我们自己的进步更有成效。

构建库存

之前我们卖东西,我们需要的东西去卖。幸运的是,我们有一个目录的超过1400万级的产品从源头!大多数的,我们需要构建工具需要的是什么产品在商店本身就是一个概念。我们需要跟踪库存。我们首先想到通过一个手动过程这样做的,因为我们想使事情MVP般。但超前的思维,我们可以,如果我们建立了基础设施这样做自动化有更多的行动。

什么会自动帮助我们实现?

  • 跟踪进入库存(使店员可以制定相应的计划)
  • “接收”的库存,所以我们可以收集多少,我们必须在店里也丢失或损坏的货物报告
  • 准确跟踪库存,建立库存周转模型,并为我们的商品补货策略提供信息
  • 更新与正确的定价货架标签(更多的下面)
  • 拉出月度财务报告,包括所有销货。我们利用自己的电子商务平台下“入站”订单,同时跟踪“出站”(销售)订单——这使得我们的销售价格和成本价格之间的联系成为可能

通过让我们的库存信息,我们还可以建立我们需要运行商店运营工具 - 接收库存,打印条形码,物品货架标签关联,过滤某些类别,对数量变化的报告,等等。

一些需要注意的:随着Wayfair是一个运输机模型大多是当它涉及到库存,我们依靠良好的关系,并与供应商合作,把产品给我们的客户及时和安全。从我们自己的网站意味着依靠这些相同的供应商采购,所以这也需要“从商店”库存管理时来考虑。

销售点(POS)

现在,我们有东西出售,让我们确保我们实际上可以把它卖掉。对于一个关键组成部分是销售点(POS)。有两种方式客户可以购买的东西在Wayfair商店。有首先,我们选择的商品,客户可以在商店购买,并采取与他们的(我们称这些现成的现货订单)。其次,客户可以下订单上WAyfair.com被送到家(我们称之为网上订单)。我们调查了一些解决方案,包括寻找到再使用我们自己的电子商务平台结账。我们去了后者,原因如下

  • 我们希望商店是我们网站的延伸,因此,所有的定价,促销码,销售会来免费
  • 该销售人员就不必学习两个不同的系统
  • 当我们想成为网站的延伸,我们需要Wayfair礼品卡中,MYWAY会员计划和Wayfair信用卡支持

所以,我们不得不引入物理为了我们的电子商务平台的挑战。举例来说,有现成的架子顺序,顾客走出他们购买后的产品。这意味着,我们必须确保我们的系统就不会实际出货这个项目给客户的房子。我们也优先考虑安全性,这会在一个砖和砂浆的环境比上Wayfair网站不同的挑战。当然,我们需要支持现金付款。

建筑科技

我们对物理存储技术眼光瞄准纳入速度,规模,以及是否适合我们自己的技术堆栈这里在Wayfair。团队和我确定,从1日在模具投入,强调有必要质量,使速度。

我们希望确保有总是在我们的代码质量很短的反馈回路。Wayfair的供应链工程团队开发了一个“测试输送机”的平台,每个团队可以突出哪些检查类型是他们的特点很重要。我们实施和数据库测试,单元测试设置它,和PHP静态分析器(PHPStan)。这将运行在每次提交,并通过松弛报告给我们的小组。由于这短短的反馈回路,我们能够很早就强调潜在的问题。我们使用的工具,如SonarQube进一步验证我们的代码库的质量了。

架构上来说,我们对未来的一个坚实的框架中定义的架构为每个要素,以打造。我们不希望模糊性决定在哪里居住的东西时发挥作用 - 例如,我们的业务逻辑与视图逻辑。我们的架构使测试从一开始就驱动开发。

我们希望确保多个工程师可以在堆栈的每一层上工作,没有它太多的中断。随着我们的分层架构的方法,一个工程师可以在API层,这里又可以在业务逻辑上工作的工作。这也给了我们能够通过嘲弄了业务逻辑很容易地开发前端的优势。

我们也希望确保我们有测试覆盖堆栈的每一层上 - 从API,一路下跌到数据库层。我们决定遵循领域驱动设计策略,以“干净架构”分层。我们处理的API(GraphQL)层作为这种清洁体系结构的视图层。通过这种方式,我们可以逆依赖,使每一层完全测试。

我们的部署是故意脱离Wayfair较大的代码库,这的确是一个趋势初具规模的公司总体现在!通过与我们的发布工程团队的密切合作,我们能够建立一个完全独立的部署过程,同时利用所有部署工具在Wayfair上的优势。同样,尽管我们的行为就像一个初创公司,重用公司现有工具和基础设施的能力使我们的生产效率更高,并允许我们特别关注手头的任务。

将在硬件

虽然我们遇到了迷人的技术挑战,该项目的最有趣的部分,对我来说,是我们与硬件集成。经与以往硬件集成这样的经验,物理存储为代表的机会下潜回到这个真棒技术空间。

为了支持我们所有的硬件的努力,我们有一个“实验室设置”,将代表在商店的网络和设置。我们有ESL接入点,POS机和条码打印机。

所以,第一件事的第一:我们如何打印条码?我们能够重新使用的方法我们的仓库采取打印出条形码出货。这涉及到重用内置了软件,其中一个端点暴露打印出不同的打印机,其中我们利用了一个名为ZEBRA类型。他们安置ZPL(斑马打印语言),它允许您自定义的外观和感觉的打印作业。随着在手,我们的创作团队想出了一个主意,将显示在一所房子的形状,打印出条形码!起初,它似乎并不可能,但我们的设计师思维更抽象的,我们把它在明年围坐在一起打印机和测试的每一步工作。我们有的条形码是如何塑造完全控制的事实,我们趁着加入到我们的“菜篮子”,以及原生应用中的条形码扫描支持时。

电子货架标签(ESL)

作为Wayfair的价格是动态的,有定时销售,对系统的顶部留与其他电子零售商竞争力,我们需要确保我们有一个解决方案,代表价格在任何特定时间的现场。请记住:我们正在从库存我们自己的网站,这样的价格在网上需要的价格在商店匹配!

看看这个,我们知道了电子纸打算为我们提供我们想要的东西。有许多不同的解决方案,在那里,他们大多有同样的“基地”,这是电子纸,通过对每一个供应商同一制造商生产。我们走到这条路主要是基础设施和集成的感觉。供应商,我们选择了去了(一)非常复杂,使我们能够做什么,我们需要做的(B)主持了他们的云解决方案集成,等我们的最终基础设施的开销是相当低的。

我们是开放!

让我们来谈谈准备了开幕式。我们的店面团队的一些成员,包括工程,产品和质量保证,而我们的数码店后的样子,倒在地上,看到所有我们已经建立在行动的软件。这导致了创造与我们的零售商店的员工有很大的关系。通过吃自己的狗食和测试功能,我们的零售工作人员将需要依赖,我们可以解决,我们没有想过或进行一些小的修改客户到来之前所面临的挑战。即使我们的工程总监来工作的店员一天帮帮忙,了解系统。

在我们计划接收库存的前一天,我们遇到了条码对齐问题,这需要我们直接访问网络。这个问题?这一通道最初仍在建立过程中。我们怎样才能解决这个关键问题呢?这就是我们争强好胜的创业风格的突出之处:我们在前一天晚上设置了一个谷歌聚会场所,打电话给我们在肯塔基州的IT团队,他们可以更改所需的设置,而我则在波士顿的Wayfair总部更改模板。与此同时,我们下午在物理存储在条形码验证的结果。就像我说的,这是难以置信的混乱,但我们能够完成工作,避免进一步的库存问题。

下一步是什么的物理存储?

我们目前正在评估这家商店的成功程度和它目前的模式。还有物流和客户体验优化,我们正在迭代。关于我们的纳蒂克旗舰,我们还有一些东西需要完成。

支付

目前的POS机是建立在我们的电子商务结帐用户界面的顶部,利用我们的电子商务结帐后端和订单处理平台。我们已经有一个硬件集成采取付款,这是密码键盘为基础,在我们的呼叫中心使用。然而,这个硬件是专为以“卡不在场”的交易,这是不是一个零售环境(例如没有准备好苹果支付,芯片阅读器等)进行了优化。我们知道这是一个缺点,我们必须解决的尽快推出后。我们目前正在实施新的供应商,以应对这一挑战的过程。

更丰富的技术经验

作为一家技术公司,我们希望Wayfair的实体店是技术支持,而不是高科技沉重。为了确保更精通技术的用户更丰富的体验,我们希望带来更多的我们的在线技术选择到我们的砖和砂浆产品,因此需要利用这样的经历,查看房间3D。我家酒吧显示出巨大的潜力,这一领域带来购物的物理空间家居用品的新途径。

启动商店在如此短的时间内 - 从生成六个月执行 - 是具有挑战性的,但非常值得。整个物理存储团队包含了许多来自部门,包括产品,工程,质量保证,设计,商务,市场营销,创意,采购,建造,IT,基础设施,店里的工作人员,等等等等。我们在这一起,每个人都对球队给了他们100%。虽然每个人都有自己的发挥作用,我们都有同样的目标:使商店的成功。Wayfair被大力推广的“申通快递”模式(单线程所有者),那里的人拥有相同的业务目标是坐在基于部门接近与分歧。这一直是我们自己的团队极其有益于并且它是一个绝对的快乐是它的一部分。

至于我自己,我得到了扩展我的角色的机会,现在也在监督我们的Envision团队的技术架构。这个团队的目标是通过利用虚拟现实、增强现实、混合现实等新兴技术,为客户带来更丰富的体验。这与我们的实体店有自然的联系,我们甚至可以扩展这种体验,因为我们拥有硬件。我很高兴能把我们在实体店取得的工程成功带给Envision团队,同时我们也在不断扩大业务规模。