Thứ Năm, 18 tháng 9, 2025

Các công ty Big Tech release code như thế nào?

Nguồn

 How Big Tech Ships Code to Production

Quy trình

Mọi thứ bắt đầu từ việc team product sẽ tập hợp feedback và yêu cầu của người dùng. Team product và team engineering sẽ chia nhỏ chúng thành các công việc hoặc user story nhỏ hơn. Dev sau đó sẽ chọn các công việc trong cuộc họp lập kế hoạch sprint, thường kéo dài từ 1-2 tuần.

Đối với các dự án lớn, công việc có thể kéo dài qua nhiều sprint. Engineering manager hoặc tech lead sẽ ưu tiên và sắp xếp các công việc qua các sprint để cân bằng khả năng của team. Khi có sprint, dev sẽ bắt đầu làm. Đối với các dự án lớn, thường có quy trình RFC hoặc thiết kế tài liệu để thống nhất về kiến trúc tổng thể và phương pháp kỹ thuật ngay từ đầu.

Đây là nơi mà một số quy trình quan trọng xuất hiện. Dev sử dụng Git hoặc một công cụ tương tự để quản lý code và tạo các feature branch để xây dựng chức năng mới mà không ảnh hưởng đến code chính, giúp cho việc của các dev khác nhau không ảnh hưởng đến nhau.

Khi cần thay đổi database schema, các migration script được phát triển trong các branch tương ứng. Schema migration cần phải được thiết kế cẩn thận và test kỹ vì rủi ro mất dữ liệu. Khi code xong, dev sẽ mở pull request để team có thể review. Việc này giúp phát hiện lỗi sớm. Sau khi được duyệt, code sẽ được merge vào branch chính sau khi được chạy unit test.

Khi một chức năng mới được thêm vào branch chính, nó khởi động CI/CD pipeline. Các công cụ như GitHub Actions và Jenkins sẽ tự động build, test, và deploy code qua nhiều môi trường như dev, test, và staging.

Việc kiểm tra qua nhiều môi trường rất là quan trọng. Staging cần phải giống với cơ sở hạ tầng production để kiểm tra tính nhất quán, giúp giảm thiểu những bất ngờ sau này.

QA engineer kiểm tra kỹ lưỡng chức năng, chạy regression test, scan bảo mật, test hiệu suất, vân vân... Cần lưu ý rằng một số team dựa vào chính dev để kiểm tra code thay vì có QA riêng. Việc này cũng ok cho một số sản phẩm, nhưng không phải tất cả.

Khi build qua tất cả các checkpoint, nó sẽ được chuyển đến UAT. UAT là viết tắt của user acceptance testing. Team product, QA, và dev sẽ kiểm tra chức năng cùng nhau. Các release candidate qua UAT sẽ được chuyển từ từ vào production.

Một số team sử dụng kỹ thuật như canary release và feature flags để từ từ triển khai thay đổi và giảm rủi ro.

Đối với việc triển khai schema changes, các kỹ thuật như maintenance windows, read replicas, và rollback scripts giúp giảm rủi ro. Multi-phase migrations và feature flags giúp kiểm soát quyền truy cập trong quá trình chuyển đổi. Trong suốt quá trình này, SRE sẽ theo dõi metrics, logs, và traffic để phát hiện sớm vấn đề production. Bug được ưu tiên sửa trước. Ngoài ra, team product và engineering cũng theo dõi analytics để đảm bảo chức năng hoạt động như mong đợi và không ảnh hưởng đến các metrics khác. Tóm lại, yêu cầu chức năng của bạn sẽ trải qua quá trình thiết kế, phát triển, kiểm thử, và triển khai từ từ trước khi trở thành một phần của phần mềm bạn sử dụng.


=============================

Website không chứa bất kỳ quảng cáo nào, mọi đóng góp để duy trì phát triển cho website (donation) xin vui lòng gửi về STK 90.2142.8888 - Ngân hàng Vietcombank Thăng Long - TRAN VAN BINH
=============================
Nếu bạn không muốn bị AI thay thế và tiết kiệm 3-5 NĂM trên con đường trở thành DBA chuyên nghiệp hay làm chủ Database thì hãy đăng ký ngay KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE, được Coaching trực tiếp từ tôi với toàn bộ bí kíp thực chiến, thủ tục, quy trình của gần 20 năm kinh nghiệm (mà bạn sẽ KHÔNG THỂ tìm kiếm trên Internet/Google) từ đó giúp bạn dễ dàng quản trị mọi hệ thống Core tại Việt Nam và trên thế giới, đỗ OCP.
- CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
- Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
2 khóa học online qua video giúp bạn nhanh chóng có những kiến thức nền tảng về Linux, Oracle, học mọi nơi, chỉ cần có Internet/4G:
- Oracle cơ bản: https://bit.ly/admin_1200
- Linux: https://bit.ly/linux_1200
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
cơ sở dữ liệu, cơ sở dữ liệu quốc gia, database, AI, trí tuệ nhân tạo, artificial intelligence, machine learning, deep learning, LLM, ChatGPT, DeepSeek, Grok, oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c/21c/23c/23ai, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, docker, k8s, micro service, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty Sửa bài viết

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master