Đội Kỹ sư tại Carbon Five
Chúng tôi thực hành một hương vị nhất định của Agile được gọi là Agile XP.
Chúng tôi ủng hộ việc phát hành thường xuyên phần mềm làm việc. Đôi khi điều khó nhất để áp dụng vào thực tế đối với các công ty lớn hơn là đẩy mã liên tục. Chúng tôi sử dụng tích hợp liên tục, phát triển theo hướng thử nghiệm và cố gắng cung cấp thứ gì đó có giá trị kinh doanh cho khách hàng thực tế thường xuyên nhất có thể. Chúng tôi có các cuộc họp lập kế hoạch lặp lại hàng tuần, nơi các nhà phát triển, giám đốc sản phẩm, nhà thiết kế và chủ dự án (thường là từ phía khách hàng) cùng nhau lên kế hoạch cho công việc trong tuần. Đó là một cuộc thảo luận hợp tác, cởi mở để xác định đâu là công việc có giá trị cao nhất và ước tính từng đơn vị công việc. Chúng tôi thực dụng về lập trình đôi và để cho các cá nhân quyết định. Hầu hết những người ở đây đã có hơn 8 năm kinh nghiệm trong ngành, vì vậy chúng tôi tin tưởng lẫn nhau để liên hệ với nhau khi cần thiết. Một số người luôn kết đôi, một số ít hơn, nhưng tất cả mọi người đôi một số thời gian. Vào cuối tuần, chúng tôi thực hiện bản demo cũng như hồi cứu (với tất cả mọi người trong nhóm của chúng tôi và từ khách hàng) để xem xét những gì đã diễn ra tốt và những gì không tốt trong tuần trước.
Kỹ thuật tại Course Hero
Chúng tôi tối ưu hóa cho vận tốc và tác động.
Mặc dù có một số lan can và đường cơ sở được chia sẻ, nhưng mọi nhóm đều có quyền tự do xác định phong cách làm việc và nhịp độ cuộc họp của riêng mình. Hầu hết các nhóm hoạt động theo nhịp chạy nước rút hai tuần một lần và đẩy mã để sản xuất nhiều lần trong ngày. Các nhóm cá nhân xác định ước tính của riêng họ. Chúng tôi cũng có một bootcamp kỹ thuật để đưa chúng vào ngăn xếp kỹ thuật của chúng tôi và thiết lập chúng để xây dựng và đẩy mã vào sản xuất. Mục tiêu của tháng đầu tiên là thiết lập các kỹ sư thành công lâu dài, vì vậy việc thử nghiệm và đặt nhiều câu hỏi rất được khuyến khích!
Các kỹ sư thường xuyên cộng tác thông qua các phiên Slack Huddles và Zoom ngẫu hứng; trong khi không có nhiệm vụ chính thức cho lập trình đôi, nó có xu hướng xảy ra một cách tự nhiên thông qua những sự hợp tác này. Giám đốc Kỹ thuật hoặc Kỹ sư trưởng của mỗi nhóm đóng vai trò như một Scrum Master và hợp tác với các chủ sở hữu sản phẩm. Kiểm tra là một ưu tiên nội bộ và chúng tôi tập trung vào các bài kiểm tra đơn vị, với các ngưỡng phủ mã bắt buộc chạy như một phần của mỗi bản dựng trong quá trình tích hợp liên tục của chúng tôi và các bài kiểm tra tích hợp end-to-end với Cypress để mô phỏng luồng người dùng.
Nhìn chung, chúng tôi ủng hộ việc có nhiều nhóm sản phẩm tự trị nhỏ, mỗi nhóm được trao quyền đưa ra quyết định của riêng họ để thực hiện theo lộ trình của riêng họ và thúc đẩy các chỉ số chính của họ. Cấu trúc sắp xếp hợp lý này cho phép chúng tôi liên tục lặp lại song song và di chuyển nhanh chóng để mang lại giá trị cho khách hàng. Để đảm bảo sự gắn kết giữa các nhóm này, chúng tôi có các nhóm nền tảng đa chức năng thực thi tính nhất quán kỹ thuật và cung cấp cơ sở chung cho các nhóm riêng lẻ để xây dựng.