Tôi có cơ hội được tiếp xúc và làm việc với Agile từ khá sớm so với tuổi đời của mình. Từ lần đầu tiên được Training 2 tiếng về Agile và Scrum tôi đã có trong đầu đủ mọi thứ tò mò về chúng. Và cho tới tận sau này khi được đào tạo Scrum bởi các chuyên gia hàng đầu Việt Nam tôi đã quyết tâm áp dụng nó bằng được vào doanh nghiệp của mình đang làm việc. Đó quả thực là một sự gian nan với muôn vàn khó khăn. Là một nhân viên thuần túy kỹ thuật, tôi nghĩ mình khó áp dụng được phương thức quản lí của Agile – Scrum vào việc quản lí Team vì thế tôi muốn áp dụng triệt để mọi kỹ thuật Agile vào nâng cao chất lượng phần mềm mà chúng tôi làm ra. Nó không chỉ mang lại hiệu quả cho công việc của chúng tôi mà nó còn làm cho khách hàng của chúng tôi Happy hơn, đúng với tiêu chí của công ty “Delivering Happiness”.
Và điều đó thôi thúc tôi tìm hiểu các phương pháp mà Agile áp dụng trong kỹ thuật. Thật thú vị khi tôi tìm hiểu về CI – Continuous Integration. Nó thực sự gây thu hút bởi tính linh hoạt, tự động và nhanh chóng mà nó mang lại. Với lượng nhân viên không quá đông của công ty, nếu áp dụng được CI thì sẽ giảm đi được rất nhiều công số của mỗi dự án. Công số giảm và năng suất sẽ tăng cao hơn, chẳng còn điều gì tuyệt vời hơn thế.
Nếu bạn chưa biết CI là gì, hãy đọc qua thông tin về nó
Continuous Integration (CI) is a development practice that requires developers to integrate code into a shared repository several times a day. Each check-in is then verified by an automated build, allowing teams to detect problems early.
By integrating regularly, you can detect errors quickly, and locate them more easily.
— ThoughtWorks
Thật tuyệt vời nếu chúng ta đạt được những điều kể trên với CI phải không? Loạt ký sự này tôi sẽ chia sẻ kinh nghiệm xây dựng hệ thống CI mà chúng tôi đang sử dụng. Các Technic, kinh nghiệm thực tế cũng như những khó khăn trong quá trình xây dựng và vận hành cũng sẽ được đề cập đầy đủ.
Ký sự bao gồm các phần sau:
Ký sự triển khai CI tại Deha – Kì 1: Câu chuyện bắt đầu
Ký sự triển khai CI tại Deha – Kì 2: Version Control, bây giờ phải làm sao?
Ký sự triển khai CI tại Deha – Kì 3: TDD hoặc chết
Ký sự triển khai CI tại Deha – Kì 4: Run on my PC? Vagrant is Heroes
Ký sự triển khai CI tại Deha – Kì 5: Build tool? Not fit for all
Ký sự triển khai CI tại Deha – Kì 6: System Configuration Management, why Ansible?
Ký sự triển khai CI tại Deha – Kì 7: CI Server? Jenkins or Sonar
Ký sự triển khai CI tại Deha – Kì 8: Deployment, Docker save the world.
Ký sự triển khai CI tại Deha – Kì 9: Local Sever or Cloud Server?
Ký sự triển khai CI tại Deha – Kì 10: Best Practice and Experience