Bài tóm tắt
Tóm tắt bằng lời riêng, luôn dẫn về bài gốc. 82 bài (đã lọc). Đọc miễn phí.
Nguồn dữ liệu danh sách bài viết của blog công ty
Danh sách bài trên trang công ty gồm 10.013 bài. Khoảng 73,6% (7.365 bài) do SWE Wiki thu thập thủ công từ kho lưu trữ blog chính chủ của các công ty, kèm ngày đăng. Phần còn lại lấy từ các danh sách công khai trên GitHub: binhnguyennus/awesome-scalability (667), abhivaikar/howtheytest (551), upgundecha/howtheysre (499), eugeneyan/applied-ml (376), Engineer1999/ML-System-Design-Case-Studies (239), upgundecha/howtheyaws (149) và một số danh sách nhỏ khác. Mọi link luôn dẫn về bài gốc trên blog của tác giả; SWE Wiki không sao chép nội dung bài. Hiện 8.979 bài thuộc 133 công ty có trang riêng được hiển thị cho thành viên. Cảm ơn những người duy trì các danh sách đó.
Navigating Fair Housing Guardrails in LLMs
Zillow thử trợ lý hội thoại bằng LLM cho người tìm nhà. Rủi ro riêng của bất động sản: luật Fair Housing cấm "steering" (dẫn khách tới hoặc tránh khu vực theo đặc điểm được bảo vệ). Ví dụ một LLM trả lời vui vẻ cho câu…
How to debug large db size issue?
Dung lượng DB của etcd có quota (--quota-backend-bytes), mặc định 2 GB, khuyến nghị tối đa 8 GB. Vượt quota thì mọi lệnh ghi lỗi mvcc: database space exceeded và cụm bật alarm NOSPACE, endpoint báo không khoẻ.
SecDb Observability Journey
SecDb: nền tảng giao dịch, định giá, quản trị rủi ro của Goldman Sachs, dùng liên tục hơn 30 năm bởi hơn 3.000 developer: hơn 200 triệu dòng code Slang (ngôn ngữ riêng), hơn 160 triệu job mỗi ngày, hơn 13.000 người dùng…
Building a Dependency Graph of Our Python Codebase
Trong khoảng năm năm, codebase Python hướng nghiên cứu của HRT lớn theo cấp số nhân lên hàng triệu dòng: văn hoá "đủ tốt hơn hoàn hảo", chia sẻ code giữa team, giai đoạn tăng trưởng nhanh.
Instacart's Item Availability Architecture: Solving for scale and consistency
Điểm availability real-time từ phần 2 phải phục vụ ba nhu cầu: lấy qua RPC của team ML; lọc hàng loạt ở bước retrieval của search (RPC quá chậm); và nhất quán giữa mọi màn hình (một nơi báo hết hàng, nơi khác báo còn là…
How Instacart Modernized the Prediction of Real Time Availability for Hundreds of Millions of Items While Saving Costs
Instacart dự đoán xác suất tìm thấy mỗi item (một sản phẩm tại một cửa hàng) để báo còn hàng, sắp hết, hết. Sau đại dịch, catalog lớn lên nhiều lần; tín hiệu từ shopper chỉ có hàng triệu mỗi ngày nên phần lớn item gần…
Building reproducible Python environments with XARs
Trader và researcher dùng Python và notebook rất nhiều, nhất là cho ML. Phần lớn code (nhiều là OCaml) nằm trong monorepo, nhưng notebook rải khắp nơi và phụ thuộc thư viện bên trong monorepo. Môi trường Python là lớp ở…
Lessons Learnt From Consolidating ML Models in a Large Scale Recommendation System
Hệ recommendation và search thường mọc ra một model riêng cho mỗi use case: notification (user→item), item liên quan (item→item), search (query→item), khám phá theo thể loại (category→item). Mỗi cái có pipeline offline…
Journey to the cloud part I: Migrating Stack Overflow Teams to Azure
stackoverflow.com vẫn chạy on-premises (2023). Sản phẩm Stack Overflow for Teams (SaaS riêng tư cho doanh nghiệp) lúc đầu dùng chung hạ tầng và phần cứng với site public, vốn được thiết kế để chạy trên số máy ít nhất có…
How we scaled reads on the Twitter Users Database
URS (User Reservation System), theo Twitter là một trong những hệ thống loại này lớn nhất thế giới, được xây trên Gizzard, chính framework sharding MySQL từng dùng cho tweet năm 2010–2013 (, ). Gizzard có những tính…
Building the Neural Zestimate
Zestimate ra 2/2006 cho 40 triệu nhà, cập nhật hằng tháng; nay hơn 100 triệu nhà, cập nhật vài lần mỗi tuần.
What it's like to work as an embedded microservices SRE
Mercari có Microservices SRE Team mà thành viên được nhúng (embedded) vào từng team sản phẩm một thời gian, kể cả trực on-call ở team đó. Tác giả vào 5/2021; nhúng vào team Item (7–12/2021) rồi team Mercari API (từ…
Scaling data access by moving an exabyte of data to Google Cloud
2019: Twitter muốn "dân chủ hoá" việc phân tích dữ liệu cho nhân viên và tăng tốc ML. Họ hợp tác với Google Cloud để chuyển một phần hạ tầng dữ liệu sang GCP (BigQuery, Dataflow, Data Studio).
From Native to React Native to Flutter
Kite là nền tảng giao dịch chính của Zerodha. Ban đầu chỉ có web; 2015 một developer duy nhất viết app Android native; iOS (khoảng 10% người dùng) chỉ là webview bọc web app.
Business-Driven Upgrade of Alibaba Group: The Evolution of Dubbo 3.0
Cuối 2020 Alibaba đặt mục tiêu hợp nhất công nghệ nội bộ, mã nguồn mở và sản phẩm thương mại. Bên trong dùng framework RPC HSF (đã qua nhiều mùa Double 11), bên ngoài là Dubbo mã nguồn mở. Dubbo 3.0 là bản hợp nhất hai…
The history of Amazon's forecasting algorithm
Forecast nhu cầu cho hơn 400 triệu sản phẩm ở hơn 185 nước để quyết định tồn kho; đội forecast từ 10 người không có nhà khoa học lên gần 200 người (2021).
Moving to DynamoDB to Increase Application Resiliency
Một team ở Capital One chạy stack active-active ở hai region AWS (East, West), service tự failover gần như tức thì, trừ PostgreSQL: primary ở một region, read replica ở region kia, promote mất 10–15 phút.
Atlas: Our journey from a Python monolith to a managed platform
Metaserver, monolith Python từ 2007, hơn 3 triệu dòng; khoảng một nửa commit vào repo server sửa nó. Mô hình "hệ mặt trời": tính năng sản phẩm nằm trong monolith, các thành phần nền (xác thực, metadata, filesystem,…
Pitfalls and Patterns in Microservice Dependency Management
Lộ trình chung: một binary → nhân bản ở nhiều vùng → tách thành microservice (API, Auth, Control, Data, Ops) giao tiếp qua mạng → một phần chạy trên cloud. Mạng trở thành một phần của sản phẩm.
Evolving Reddit's ML Model Deployment and Serving Architecture
Hệ ML của Reddit (2021) phục vụ hàng nghìn request inference mỗi giây cho feed, video, push, email. Inference nằm trong Minsky, một service Thrift Python (baseplate.py) vốn phục vụ dữ liệu relevance (độ giống giữa…
Service Architecture at SoundCloud — Part 3: Domain Gateways
Bài cuối của series 3 phần về tiến hoá kiến trúc service của SoundCloud. Phần 1: ; phần 2: . Theo phần tóm tắt trong bài, kiến trúc có ba tầng:
How we migrated Dropbox from Nginx to Envoy
Hạ tầng traffic dựa trên Nginx gần mười năm: hàng chục triệu kết nối mở, hàng triệu request/giây, hàng terabit băng thông. Cấu hình phần lớn tĩnh, sinh bằng Python 2 + Jinja2 + YAML (cả ba đều cho logic, không có mô…
5-year Evolution of Ele.me's Transaction System - Part 6
Tách giao dịch thuận và nghịch (giữa 2016): giao dịch nghịch (hoàn, huỷ, khiếu nại) chỉ chiếm khoảng 1% đơn nhưng logic phân nhánh phức tạp hơn nhiều. Giao dịch thuận cần hiệu năng, đồng thời, ổn định. Hai bên khác nhau…
From 48k lines of code to 10: the story of GitHub's JavaScript SDK
@octokit/rest khởi đầu là package cộng đồng github (commit đầu 6/2010, thời Node v0.1). Năm 2017 GitHub nhận nó làm SDK chính thức cho REST API, chạy cả Node lẫn trình duyệt; lúc đó khoảng 16.000 dòng, lõi là…