Frontend Development 11 min read

Baidu's Large-Scale App Engineering Architecture and Tekes Platform

Senior Baidu engineer Guo Jin explains how the company tackles large‑scale front‑end challenges through a “big” engineering approach, using architectural splitting, componentization frameworks, advanced dependency tools, and the EasyBox solution—integrating MGIT, binary management, and a build system—while the Tekes platform automates version publishing and streamlines development across matrix products.

Baidu App Technology
Baidu App Technology
Baidu App Technology
Baidu's Large-Scale App Engineering Architecture and Tekes Platform

This article features an interview with Guo Jin, a senior engineer at Baidu App, discussing large-scale app engineering architecture and the Tekes integrated development platform. The interview covers key topics including the concept of "big" front-end engineering, architectural splitting principles, componentization frameworks, dependency management tools, and the EasyBox comprehensive solution.

Guo Jin explains that "big" front-end engineering refers to addressing common challenges in mobile and front-end development under similar conditions of project scale, complexity, and rapid iteration. These challenges include ensuring parallel development efficiency, controlling quality impact scope, dependency management, standardizing development processes, and preventing degradation under rapid iteration.

The article details architectural splitting principles including defining hierarchical levels, establishing component frameworks, creating reusable service components, building systematic foundational libraries, and comprehensive business componentization. These principles aim to achieve "shellization" - where the core app shell remains stable while business logic is modularized.

Regarding componentization versus component frameworks and dependency management tools, Guo Jin clarifies that componentization is a systematic approach requiring multiple supporting elements. A broad component framework provides dependency injection, distribution, containerization, and data separation capabilities. Dependency management tools, while helpful for controlling interface access and clarifying dependencies, are primarily part of the build system.

The EasyBox comprehensive solution includes three parts: multi-repository management (MGIT), binary management, and build system. It was developed to address challenges of growing team size, parallel development needs, compilation speed, and stable binary version output. The solution enables component source/binary switching, improves compilation speed by 74.8-85.8%, and supports component-level source code reuse for matrix products.

The Tekes platform was created to automate binary version publishing, provide component dependency and interface change monitoring, and systematize the development process. It has established binary version standards, unified development modes across teams, and improved compilation success rates.

The article concludes with information about Guo Jin's background and an invitation to the upcoming GMTC conference where he will present detailed insights on Baidu's large-scale app architecture design, efficient engineering capabilities, component binary implementation, and matrix product engineering incubation models.

dependency managementcomponentizationBuild Systemfront-end engineeringbinary managementengineering platformlarge-scale app architectureParallel Development
Baidu App Technology
Written by

Baidu App Technology

Official Baidu App Tech Account

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.