Tìm kiếm
40 kết quả cho “Tiến hóa codebase”. Tìm không phân biệt dấu.
- Taking PHP Seriously Bài tóm tắt · Slack · 2016
…chạy và vòng lặp phát triển , không chỉ theo cú pháp. - Cải tiến dần thay vì viết lại: gradual typing cho phép nâng chất lượng codebase lớn mà không phải dừng lại. - Mô hình "mỗi r…
- Evolution of our platform architecture Bài tóm tắt · Allegro · 2015
…context, mỗi team một context; giao tiếp qua event bus (ưu tiên) hoặc gọi trực tiếp qua discovery; - mỗi context có frontend riêng (ghép trang bằng ESI); - chấp nhận trùng dữ liệu…
- Nền tảng nội bộ cho service (đường ray chung) Chủ đề Thành viên
Tách hệ thống thành nhiều phần (service, hoặc component trong một monolith) giải được bài toán tổ chức. Nhưng nếu mỗi team tự làm RPC, retry, log, metric, contract theo cách riêng, thì ta chỉ đổi một kiểu hỗn loạn lấy…
- CI và build ở quy mô lớn Chủ đề Thành viên
Lúc nhỏ, CI là "mỗi commit chạy hết build và test". Khi codebase và số commit tăng, chạy hết trở thành bất khả (Stripe 2026: chạy tuần tự mất bốn tháng), và thời gian chờ của một thay đổi không còn chỉ là thời gian…
- Monolith và microservices — đi và quay lại Chủ đề Thành viên
Lúc nào nên tách hệ thống thành nhiều service, và cái giá của việc đó là gì? Các nguồn hiện có cho thấy đây không phải đường một chiều.
- Quản lý fleet và migrate code hàng loạt Chủ đề Thành viên
Khi số component (repo, service, pipeline, thư viện) tăng nhanh hơn số kỹ sư, chi phí của mỗi thay đổi xuyên suốt (nâng thư viện, vá bảo mật, đổi API nội bộ, khai tử dataset) tỉ lệ với số component chứ không với độ khó…
- Kiến trúc frontend Chủ đề Thành viên
Frontend bắt đầu là vài trang render ở server; lớn lên thành ứng dụng có trạng thái, nhiều team cùng sửa, và mỗi tính năng thêm vào là thêm byte phải tải. Ba trục lặp lại trong các nguồn: render ở đâu (server, client,…
- Coding agent trong engineering (migrate, viết lại, chạy song song, quyền hạn) Chủ đề Thành viên
Từ 2026 các công ty bắt đầu giao cho coding agent những việc trước đây là dự án nhiều tuần: migrate hàng trăm module hay dataset, dọn feature flag, viết lại cả framework hay app. Agent viết nhanh, nhưng ba thứ không tự…
- Đổi ngôn ngữ và runtime Chủ đề Thành viên
Ngôn ngữ ban đầu được chọn để làm nhanh. Khi lớn lên, nó có thể thành nút thắt về hiệu năng, latency, hoặc tổ chức code. Có ba hướng: tối ưu runtime đang dùng, cải tiến dần, hoặc viết lại có phạm vi.
- Hạ tầng nghiên cứu định lượng (dữ liệu thị trường, feature, backtest) Chủ đề Thành viên
Một quỹ định lượng hay công ty market making sống bằng vòng nghiên cứu: đặt giả thuyết → lấy dữ liệu → tạo feature → train model hay dựng tín hiệu → backtest/mô phỏng → đưa vào giao dịch thật → lặp lại. Theo Optiver, độ…
- Sinh ID phân tán Chủ đề Thành viên
Khi chỉ có một database, AUTOINCREMENT là đủ. Khi dữ liệu nằm trên nhiều máy, ID không còn duy nhất toàn hệ thống. Đây thường là thứ đầu tiên vỡ khi phân tán dữ liệu. Yêu cầu hay gặp: duy nhất, sắp được theo thời gian,…
- Hệ thống độ trễ thấp (low latency) Chủ đề Thành viên
Ở sàn giao dịch và công ty market making, mỗi giao dịch làm thay đổi thị trường cho giao dịch sau, và ai phản ứng chậm hơn thì thua. Yêu cầu không chỉ là latency trung bình thấp mà latency ổn định ở đuôi, ở thang micro…
- Allegro Công ty Thành viên
Allegro (Ba Lan) đi từ 3 developer với dữ liệu lưu trong file (1999) → scale bằng tự viết cache, connection pool, search engine bằng C trên Oracle (~2005) → framework tự chế trong cùng codebase (2008–2009, code mới vẫn…
- Selective Test Execution at Stripe: Fast CI for a 50M-line Ruby monorepo Bài tóm tắt · Stripe · 2026
…cope (thường là file test đang chạy); thư viện lan sang mọi tiến trình con . Trong đường chặn open chỉ append một bản ghi vào file log riêng của tiến trình; mọi việc đắt (gộp, inde…
- Figma Công ty Thành viên
Năm 2017, đợt spam đầu tiên chứng minh giá trị của rate limiter tự viết . Năm 2019 cả Figma vẫn chạy trên một DB instance theo nguyên tắc KISS, và họ đã nói cần DB scale ngang . Ví dụ kinh điển của lộ trình Postgres.…
- Turborepo Remote Cache: Accelerating CI to Move Fast Bài tóm tắt · Mercari · 2026
…nh nhất. - Hai dạng: action JavaScript khởi động server như tiến trình Node.js nền và tự đặt TURBO API , TURBO TOKEN , TURBO TEAM (người dùng chỉ thêm một bước vào workflow); với b…
- We replaced Redis with MySQL for inventory reservations, and it scaled Bài tóm tắt · Shopify · 2026
…giới hạn: tối đa 1.000 hàng cho mỗi cặp (món, kho), do một tiến trình bổ sung từ sổ tồn kho. Nếu pool cạn giữa flash sale thì bổ sung ngay trong request, có khoá để chỉ một transa…
- Etsy's Journey to TypeScript Bài tóm tắt · Etsy · 2021
…file (đuôi .ts nghĩa là kiểu đáng tin, .js là chưa); chỉ ưu tiên phần đang phát triển tích cực, không chuyển mọi file. Lý do không chuyển một lần ở chế độ strict: sẽ ra một đống lỗ…
- Hudson River Trading Công ty Thành viên
Công ty giao dịch thuật toán (HRT), phần lớn hạ tầng on-premises, nhiều site trên thế giới. Năm 2021 họ scale Prometheus bằng shard chỉ ingest cộng query node đọc remote, vì federation mất khả năng tổng hợp ad-hoc trên…
- Inside Figma: a case study on strict null checks Bài tóm tắt · Figma · 2020
…ửa dần nhưng không bật cờ, nên code mới lại sinh lỗi, thanh tiến độ có lúc lùi), và allowlist tăng dần (chọn cách này, theo công cụ của đội VS Code). - Compile hai lần: toàn bộ khô…
- Open sourcing kubenetmon: how we monitor data transfer in ClickHouse Cloud Bài tóm tắt · ClickHouse · 2025
…bỏ qua khi dự báo vì khó hiểu và khó đo: nhà cung cấp tính tiền NAT gateway, load balancer, lưu lượng giữa AZ, egress và ingress theo cặp region. - Ba mục tiêu: forensics (từng kế…
- Migrating millions of lines of code to TypeScript Bài tóm tắt · Stripe · 2022
…ứ hai của codemod chèn @ts-expect-error cho lỗi còn lại, ưu tiên bỏ Flow càng sớm càng tốt. Lần đầu trên Dashboard ra hơn 97.000 suppression, cải tiến codemod còn 37.000 (khoảng mộ…
- An open-source spec for Codex orchestration: Symphony Bài tóm tắt · OpenAI · 2026
…ng bản tham chiếu bằng Elixir (chọn vì nguyên thuỷ giám sát tiến trình đồng thời), do Codex viết; Codex được nhờ implement spec bằng TypeScript, Go, Rust, Java, Python để tìm chỗ m…
- Building a Faster C# Driver for ScyllaDB…on our Self-Baked C#-Rust FFI Framework Bài tóm tắt · ScyllaDB · 2026
…bộ, mọi con số là theo ScyllaDB. Dự án hiện tạm dừng để ưu tiên Node.js RS Driver. Bối cảnh - Hiện đại hoá một codebase driver C khoảng mười năm tuổi (fork của DataStax) bằng cách…
- Migrating a Large Flow Monorepo to TypeScript Bài tóm tắt · Yelp · 2026
…và dashboard EE Metrics cho biết package nào chuyển được. - Tiến độ: khoảng 100 package lúc ra mắt, hơn 270 sau sáu tháng, trên tổng 570 ; sau đó chững lại vì team bận tính năng. D…
- グローバル展開にむけた基盤の再構築 (Rebuilding Foundation for Global Expansion) Bài tóm tắt · Mercari · 2025
…trực tiếp trên web Mercari Nhật. Nhưng hệ Nhật giả định một tiền tệ, một ngôn ngữ ; tính năng xuyên biên giới được đắp lên trên. - Các lần ra nước ngoài trước: Mỹ và Anh bắt đầu bằ…
- How we accidentally built a better build system for OCaml Bài tóm tắt · Jane Street · 2025
…API và trải nghiệm tốt hơn. Một hệ duy nhất giúp tốc độ cải tiến tăng: đội build giờ 12 người ở New York, London, Singapore. Distributed build, "build without the bytes", cache đồ…
- PIT Mutation Testing on CI/CD Pipeline Bài tóm tắt · Trendyol · 2021
…am Search của Trendyol (thương mại điện tử Thổ Nhĩ Kỳ) muốn tiến tới deploy một cú nhấp, nên pipeline CI/CD phải đủ tin cậy. Đang dùng code review và code coverage, nhưng coverage…
- Grab Công ty Thành viên
Dùng AWS từ ngày đầu (MyTeksi 2012: Rails trên EC2 + RDS MySQL) và theo Grab chỉ cần dưới 10 kỹ sư vận hành nhờ managed service . Năm 2016 họ chuyển API hành khách từ Rails sang Go theo từng endpoint bằng shadow…
- Python at Scale: Strict Modules Bài tóm tắt · Instagram · 2019
…ào class (singleton toàn cục) làm bẩn mọi request sau trong tiến trình; monkeypatch trong test gây test flaky nhiều tới mức họ chuyển sang mỗi test một tiến trình. Thay đổi chính -…
- A Self-Baked Async FFI Framework for Rust <-> C# Interop Bài tóm tắt · ScyllaDB · 2026
…Rust, các driver khác là lớp binding mỏng bên trên. Bản đầu tiên là CPP RS Driver (đã lên 1.x), rồi Node.js RS Driver. - C đã có bản fork driver DataStax được ScyllaDB tuỳ biến (bi…
- How Uber Executed A JUnit Migration at Massive Scale Bài tóm tắt · Uber · 2026
…ựa trên recipe JUnit4to5 của OpenRewrite (Uber góp thêm cải tiến upstream), cộng recipe tự viết cho runner, rule và base class nội bộ; ưu tiên theo mức dùng thật đo bằng search rec…
- Supercharging Discord Mobile: Our Journey to a Faster App Bài tóm tắt · Discord · 2025
…emoji, máy rẻ) chứ không theo trung bình. - Thư viện ngoài tiện lúc làm mới có thể kém ở thiết bị yếu nhất; được phép quay lại cái tự viết, và cũng được phép chấp nhận hai codebas…
- Zerodha Công ty Thành viên
Công ty môi giới chứng khoán Ấn Độ, khách tăng hơn 3 lần trong một năm (2020–2021). Theo CTO, họ trụ được nhờ các nguyên tắc lẽ thường: interface ổn định, viết lại thường xuyên (ticker viết lại ít nhất 5 lần), đóng băng…
- ByteDance Công ty Thành viên
ByteDance đưa Go vào năm 2014 cho push service giữ nhiều kết nối, rồi để Go lan ra bằng framework chung: Kite (RPC) và Ginex (HTTP) năm 2016. Kite gắn chặt Thrift nên từ nửa sau 2019 họ viết lại thành Kitex cùng thư…
- Kitex: Unifying Open Source Practice for a High-Performance RPC Framework Bài tóm tắt · ByteDance · 2022
…ice nội bộ với Thrift cho RPC; 2016 ra framework RPC Go đầu tiên Kite , làm nhanh cho giai đoạn tăng trưởng, ít tính trước. Nhu cầu phức tạp dần và số service, số lời gọi tăng mỗi…
- Deconstructing the Monolith: Designing Software that Maximizes Developer Productivity Bài tóm tắt · Shopify · 2019
…là rủi ro. - Monolith → modular monolith → SOA là một thang tiến hoá ; mỗi bậc hợp với một quy mô team/app. - Ra quyết định dựa trên khảo sát developer, không dựa trên than phiền r…
- This Rocket Ain't Stopping - Achieving Zero Downtime for Rails to Golang API Migration Bài tóm tắt · Grab · 2016
…háng họ bỏ hẳn hướng này và chuyển logic thật sang Go. Nhân tiện tách một số module thành service riêng cho các team khác nhau sở hữu. - Load test: phát lại log của ngày đông nhất…
- Under Deconstruction: The State of Shopify's Monolith Bài tóm tắt · Shopify · 2020
…hì nằm cùng nhau; theo dõi số component mỗi PR chạm vào. Ưu tiên cohesion theo chức năng hơn cohesion theo bảng dữ liệu (thói quen Rails). - SOLID ở mức class là nền cho thiết kế t…
- モジュラモノリスの品質を支えるリーダビリティチーム ― AI時代のスケーラブルなコード管理 (Readability team for a modular monolith in the AI era) Bài tóm tắt · Mercari · 2025
…ểm tra tự động trên CI, workshop, họp hai tuần một lần, cải tiến theo metric (số PR merge mỗi người mỗi tuần, thời gian từ mở tới merge PR). - Khi lượng PR tăng vì thêm người và vì…