Điều này dẫn đến những gì tôi đã bắt đầu nghĩ là "Xung đột vĩnh cửu" (giữa kinh doanh và kỹ thuật). Tôi không có giải pháp vì đây là vấn đề không bao giờ biến mất nhưng bạn có thể làm mọi thứ để giúp giảm thiểu.
Điều mọi người thường không nhận ra là với tư cách là các kỹ sư, chúng tôi chỉ cho rằng vấn đề "kinh doanh thành công" luôn là vấn đề được đưa ra. Chúng tôi muốn mã của chúng tôi phải đẹp, gọn gàng và có thể bảo trì để chúng tôi có thể nhanh chóng thêm các tính năng mới và điều chỉnh các tính năng hiện có và với tối thiểu khách hàng thực hiện QA cho chúng tôi bằng cách khám phá các trường hợp rìa kỳ quái sẽ bị cản trở bởi mã tốt hơn. Giữ khách hàng và duy trì lợi thế cạnh tranh với các tính năng và sự tinh tế không ai khác có thể sản xuất đủ nhanh là cả hai chiến thắng kinh doanh mà mã tốt trực tiếp đóng góp và thông báo nhiều lý do chúng tôi muốn mã tốt hơn ngay từ đầu.
Vì vậy, đánh vần nó ra. "Chúng tôi muốn thực hiện X trong cơ sở mã của mình bởi vì nếu chúng tôi không làm điều đó sẽ ảnh hưởng tiêu cực đến doanh nghiệp do Y" hoặc "... bởi vì điều đó sẽ tăng cường khả năng cạnh tranh của chúng tôi bằng cách cải thiện khả năng của chúng tôi để cải thiện các tính năng và cải tiến mới nhanh hơn . "
Và cố gắng hết sức để thử và có được bằng chứng hữu hình rằng các cải tiến đang hoạt động. Nếu việc cải thiện một số tập hợp con của ứng dụng dẫn đến tính năng / cải tiến nhanh hơn, hãy kiểm tra bất kỳ công cụ tồn đọng nào bạn có thể đang sử dụng để làm bằng chứng và chỉ ra nó trong các cuộc họp thích hợp.
- Nhận nhóm trên cùng một trang chết tiệt
Egos thường là một vấn đề. Một điều mà các đội kỹ thuật rất cần là thiết lập giá trị của việc có một số cách tiếp cận nhất quán theo thỏa thuận để giải quyết một số loại vấn đề đối với mọi người khi thực hiện tách Kool Aid của riêng họ vì họ biết rõ hơn. Bạn có thể tin rằng sở thích của người kia tệ hơn bạn nhưng giá trị nhất quán hơn là đúng nếu cách tiếp cận của anh ta khả thi và đó là một lý lẽ bạn không thể thắng. Thỏa hiệp vì lợi ích của sự nhất quán là chìa khóa. Khi mọi thứ đều nhất quán, khó có thể làm sai vì cách thiết lập nhất quán thường cũng sẽ là cách nhanh nhất.
Có hai trường khung / bộ công cụ / thư viện / bất cứ điều gì. "Đặt 99% số tiền đó cho tôi để tôi phải biết / làm rất ít" so với "tránh xa tôi khi tôi không muốn bạn ở đó, nhưng hãy giúp tôi DIY rất nhanh chóng và nhất quán với những thứ tôi thực sự muốn để sử dụng trên cà rốt chứ không phải là nguyên tắc dính. " Ủng hộ cái thứ hai. Không bao giờ nên hy sinh tính linh hoạt và kiểm soát chi tiết tại bàn thờ của sự quay vòng nhanh chóng bởi vì với biz, "chúng ta không thể làm điều này bởi vì các công cụ của chúng ta sẽ không cho phép chúng ta" không bao giờ là câu trả lời chấp nhận được và câu hỏi sẽ luôn được đưa ra cho kỹ thuật sản phẩm tầm thường / dùng một lần. Theo kinh nghiệm của tôi, các công cụ không linh hoạt hầu như luôn được mở rộng hoặc làm việc không ngừng nghỉ và tạo ra một mớ hỗn độn lớn không thể nhầm lẫn. Thường xuyên hơn không, các giải pháp linh hoạt / dễ dàng hơn để sửa đổi chỉ là hoặc gần như nhanh chóng trong thời gian ngắn, bất kể. Nhanh chóng, linh hoạt và có thể bảo trì là có thể với các công cụ phù hợp.
- FFS, nếu các kỹ sư không quyết định, ít nhất hãy lấy kỹ sư nhập liệu vào việc chọn công cụ
Tôi hiểu rằng đây là một câu hỏi về quan điểm của nhà phát triển nhưng tôi đã gặp quá nhiều tình huống trong đó các quyết định công nghệ được đưa ra với đầu vào kỹ sư bằng không. Cái quái gì thế? Vâng, cuối cùng ai đó phải thực hiện cuộc gọi cuối cùng, nhưng nhận được một số ý kiến đủ điều kiện nếu bạn là người quản lý phi kỹ thuật, không phải những gì một người bán hàng hoặc trang web demo nói về sản phẩm của chính họ. Bất cứ điều gì hứa hẹn sẽ giúp bạn tiết kiệm tiền vì mọi người không cần phải thông minh hoặc bởi vì nó bảo vệ các nhà phát triển khỏi chính họ là một lời nói dối bẩn thỉu, bẩn thỉu. Thuê tài năng bạn có thể tin tưởng. Đánh vần với họ những gì bạn muốn từ một ngăn xếp hoặc giải pháp công nghệ khác và thực hiện nghiêm túc đầu vào của họ trước khi quyết định nhóm nhạc công nghệ nào sẽ nhảy vào.
- Tập trung vào thiết kế thực hiện
Các công cụ là để thực hiện và như vậy chúng có thể giúp bạn, nhưng ưu tiên hàng đầu phải là kiến trúc bất kể bạn có bất kỳ bộ đồ chơi nào để xây dựng kiến trúc đó. Vào cuối ngày, KISS và DRY và tất cả các triết lý xuất sắc mở rộng từ những vấn đề đó nhiều hơn là dù là trong .NET hay Java hay có lẽ là thứ gì đó miễn phí VÀ không hút.
- Đăng nhập mối quan tâm của bạn
Khi phía biz khăng khăng bạn làm điều đó theo cách xấu, hãy lưu e-mail đó, đặc biệt là phần bạn nói tại sao nó sẽ khiến bạn phải trả giá. Khi tất cả các dự đoán của bạn trở thành sự thật và gây ra các vấn đề nghiêm trọng về kinh doanh, đó là khi bạn có một đống lý lẽ lớn để khiến các kỹ sư lo ngại nghiêm trọng hơn. Nhưng thời gian mọi thứ cẩn thận. Ở giữa địa ngục rực sáng là thời điểm tồi tệ cho một "I-Tell-you-so" về việc tuân theo mã lửa. Hãy dập tắt và đưa danh sách các mối quan tâm bị bỏ qua trước đó của bạn đến một cuộc họp / cuộc trò chuyện hồi tưởng, và cố gắng tập trung vào các mối quan tâm kỹ thuật được thể hiện và bỏ qua và lý do bạn hiểu tại sao chúng bị bỏ qua, không phải tên của những người thực tế đưa ra quyết định bỏ qua. Bạn là một kỹ sư. Ở lại trên các vấn đề, không phải là người dân. " Chúng tôi bày tỏ sự lo lắng về X vì chúng tôi sợ nó sẽ dẫn đến các vấn đề về Y. Chúng tôi đã nói với Z và ngừng giao dịch với nó. "