NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Apr 19 · 20 min readBrownfield Migration: The Strangler Fig Approach to BFF AdoptionEvery article in this series has described building a BFF on a greenfield system — a clean slate where the architecture is decided upfront and the frontend and BFF are developed in parallel. That is n00
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Apr 18 · 18 min readCaching in the BFF: In-Memory, Redis & Response CachingCaching is one of the most compelling arguments for the BFF pattern — and one of the fastest ways to introduce subtle, hard-to-diagnose bugs if it is implemented without precision. A BFF that aggregat00
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Apr 16 · 21 min readObservability for BFF: Structured Logging, Distributed Tracing & Azure Application InsightsA note on the code in this article. The observability setup shown here is derived from a production BFF built for a Norwegian enterprise education platform. Resource names, workspace identifiers, aler00
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Apr 14 · 19 min readShipping BFF to Azure: Docker Images, Artifact Publishing & Azure Container InstancesA note on the code in this article. The pipeline configuration, Dockerfile, and infrastructure definitions shown here are derived from a production deployment built for a Norwegian enterprise educatio00
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Apr 12 · 18 min readAuth at the Boundary: Integrating Feide Identity via the BFFA note on the code in this article. The implementation shown here is derived from a production authentication integration built for a Norwegian enterprise education platform using Feide as the identit00
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Apr 12 · 16 min readBuilding the BFF in .NET Core: Minimal APIs, Routing & AggregationA note on the code in this article. The implementation shown here is derived from a production BFF built for a Norwegian enterprise education platform. Service names, domain models, and certain struct00
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Apr 11 · 14 min readBFF vs API Gateway vs GraphQL: Picking the Right AbstractionBefore writing a single line of BFF code, one question deserves a direct answer: is BFF actually the right abstraction for your situation, or would an API Gateway or GraphQL solve the same problems wi71A
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Apr 8 · 15 min readDesigning the BFF Contract: Request Aggregation & Client-Specific ShapingIn the previous article, we established when a BFF earns its overhead. This article assumes you have made that decision and are now facing the harder question: how do you actually design the thing wel174LA
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Mar 22 · 13 min readWhat Is BFF — and When Is It Actually Worth It?Your frontend has outgrown the API it was given. At some point, most frontend teams hit the same wall. The backend exposes what it knows — resources, entities, service boundaries — and the frontend i00
NVNguyễn Việt Tùngindevpath-traveler.nguyenviettung.id.vn·Mar 21 · 5 min readIntroduction to The Frontend's Contract: Building Backends for Frontends with Vue.js, .NET Core & AzureAt some point, most frontend teams hit the same wall. The backend exposes what it knows — resources, entities, service boundaries — and the frontend is left stitching four API calls into a single scre00