eBay’s View Item page lives at the center of our e-commerce platform. Our customers load this page over 250 million times each day, and stringent budgets on site speed and availability guarantee the quality of their experience. And yet, this page had its last intentional rewrite ten years ago.

eBay的 "查看物品 "页面是我们电子商务平台的核心。我们的客户每天加载这个页面超过2.5亿次,对网站速度和可用性的严格预算保证了他们的体验质量。然而,这个页面的最后一次有意重写是在十年前。

A decade of rapid iteration made the codebase increasingly difficult to maintain. This hampers our ability to continue the pace of innovation our customers have come to expect. Figure 1 shows the result of this rapid, organic growth: a legacy stack requiring duplication of work for delivery to our four platforms (desktop, mobile web, iOS and Android). It was essential for us to modernize this system and the relevant development process to unlock the velocity gains necessary to allow us to continue innovating for our customers.


230317 View Item tech blog v1 inc 1600x image 2

Figure 1: The legacy stack powering View Item requires all work to be done multiple times. Three separate services load the same structured data and transform that data into modules specific to each of the target platforms.

图1:支持View Item的传统堆栈要求所有工作都要多次完成。三个独立的服务加载相同的结构化数据,并将这些数据转化为每个目标平台的特定模块。



Our primary goal was to continually unlock velocity gains from day one rather than undergo an extended effort with a large payoff at the end. But how would we accomplish this?


The core effort would be to improve developer experience and productivity. The outcome must be that new features are written only once. Modern technologies and practices should be adopted to make it easier to hire and retain talent while also making it easier to add powerful features. New code must be documented as a requirement for acceptance to ease future troubleshooting, maintenance, and extensibility.



首页 - Wiki
Copyright © 2011-2023 iteam. Current version is 2.118.1. UTC+08:00, 2023-10-05 10:59
浙ICP备14020137号-1 $访客地图$