Các kỹ sư chính là những lichpin kỹ thuật của các tổ chức phần mềm hiện đại, sử dụng ảnh hưởng vượt xa sự đóng góp của từng cá nhân. quyết định của họ tạo nên nền tảng và thiết kế các hệ thống, trực tiếp tác động đến tính khả năng tăng, duy trì và khả năng kinh doanh lâu dài. hiểu được cách những nhà lãnh đạo kỹ thuật cao hơn hoạt động - và trọng lượng cụ thể của họ là thiết yếu cho bất kỳ tổ chức kỹ thuật nào cố gắng để đạt được sự xuất sắc và đổi mới.

Vai trò thất bại của một kỹ sư bậc thầy

Một kỹ sư chính ngồi tại giao điểm của những chuyên gia kỹ thuật và những doanh nghiệp chiến lược. không giống như các kỹ sư nhân viên có thể tập trung vào những vấn đề phức tạp cụ thể, các kỹ sư chính có một tầm nhìn toàn hệ thống, thường hoạt động trên nhiều đội và dự án. họ không chỉ là những người đóng góp cao cấp nhất, họ hoạt động như những người tăng cường về mặt kỹ thuật, hướng dẫn các kỹ sư khác, và điều khiển sự kết hợp kiến trúc trên toàn bộ tổ chức kỹ thuật.

Vai trò này khác với một kiến trúc sư phần mềm tận tụy hay một người quản lý kỹ thuật. kiến trúc sư thường định nghĩa các bản vẽ theo trình độ cao nhưng có thể không giữ lại tay với thực hiện. Các nhà quản lý ưu tiên người và quá trình. kĩ sư hiệu quả kết hợp cả hai: họ vẫn tham gia sâu vào mã, đánh giá, và các cuộc thảo luận về thiết kế trong khi cũng ủng hộ các quyết định kỹ thuật liên quan đến các mục tiêu kinh doanh. Quyền hạn của họ đến từ chuyên môn được chứng minh, không phải là cấp bậc, cho họ uy tín để ảnh hưởng các quyết định từ lớp dữ liệu đến hệ thống máy tính.

Thực tế, một kỹ sư chính có thể dành cả ngày để đánh giá một công nghệ cơ sở dữ liệu mới, dẫn đầu một buổi xem xét kiến trúc cho một dịch vụ mới, gặp rắc rối trong việc điều tra một sự cố sản xuất, và hướng dẫn một đội ngũ thiết kế kiểu mẫu của ARI. tác động của nó được cảm nhận trong sức khỏe lâu dài của cơ sở mã hóa và vận tốc mà các đội có thể cung cấp các tính năng mà không làm suy giảm nợ kỹ thuật.

Kiến trúc phần mềm Shaping

Kiến trúc phần mềm là về cấu trúc cơ bản định nghĩa một hệ thống: các thành phần, các mối quan hệ và các nguyên tắc chi phối thiết kế và tiến hóa của họ. các kỹ sư chính là những người phân tích chính của các cấu trúc này. quyết định của họ về các mẫu kiến trúc, các chồng công nghệ, và cắt chéo các mối quan tâm tạo ra giàn giáo dựa trên đó tất cả các logic ứng dụng được dựa trên.

Chọn mẫu kiến trúc

Một trong những quyết định có hậu quả nhất là chọn một kiểu kiến trúc sư cho một hệ thống hoặc hướng dẫn sự tiến hóa của một hệ thống hiện có. các mẫu thông thường bao gồm các dịch vụ vi mô, cấu trúc kết nối mạng, hệ thống sự kiện, và cấu trúc dịch vụ, mỗi cơ quan có những công việc có những sự đánh đổi sâu sắc, trong khi các dịch vụ vi mô có thể cung cấp khả năng triển khai độc lập và sự tự trị, họ giới thiệu sự phức tạp trong việc quản lý dữ liệu phân phối, sự phân phối, sự kết nối mạng và hoạt động. các kỹ sư hiệu trưởng quan trọng này cân nhắc về sự thành công, cấu trúc và sản phẩm.

Một kỹ sư chính có kinh nghiệm biết rằng kiến trúc tốt nhất là cái khớp với bối cảnh hiện tại. họ có thể ủng hộ một khối đá có cấu trúc tốt vào đầu cuộc sống khởi động và sau đó hướng sự chuyển đổi sang dịch vụ vi mô như là nhu cầu tăng trưởng. Họ cũng áp dụng các nguyên tắc kiến trúc cốt lõi: tách biệt các mối quan hệ lỏng lẻo, sự kết nối cao, và phụ thuộc. Nguồn tài nguyên phụ thuộc như nền tảng của giáo sư (FLT: 0) trên dịch vụ vi mô [FL: 1] cung cấp cấu trúc hữu ích cho các cuộc thảo luận này, nhưng các kỹ sư chính là những khái niệm thực tiễn.

Những quyết định xếp gạch kỹ thuật

Chọn những công nghệ-- chương trình ngôn ngữ, cơ sở dữ liệu, hệ thống tin nhắn, dịch vụ đám mây--là một lĩnh vực khác nơi mà các kỹ sư chính có tầm ảnh hưởng vượt quá tiêu chuẩn. Những lựa chọn này hiếm khi về công cụ nào là khách quan "được"; thay vào đó, chúng bao gồm các yếu tố đánh giá như sự quen thuộc của nhóm, sự thành thục hệ sinh thái, hỗ trợ cộng đồng, giấy phép, chi phí, và khả năng duy trì lâu dài. Một kỹ sư chính phải cân bằng tất cả các công cụ mới để chống lại rủi ro của việc đưa ra chế độ thất bại hoặc sự hạn chế tuyển dụng.

Chẳng hạn, việc chọn một cửa hàng tài liệu NoSQL trên cơ sở dữ liệu có thể cải thiện vận tốc phát triển các bản vẽ linh động nhưng phức tạp hóa tính toàn vẹn giao dịch và báo cáo. Một kỹ sư chính sẽ dẫn các kiến trúc sư và các nhóm thông qua các tiến trình quyết định, thường dùng hồ sơ quyết định kiến trúc (ARR) để ghi nhận lý trí. Họ cũng thiết lập các vật liệu bảo vệ - như danh sách công nghệ được chấp thuận hoặc phê chuẩn thiết kế bắt buộc - để ngăn chặn tổ chức này trôi dạt vào một cơn ác mộng đa cầu tăng tải và sự ma sát hoạt động.

Những mối quan tâm chồng chéo

Kiến trúc không chỉ là về sự phân hủy chức năng mà còn phải chỉ định các yêu cầu không chức năng (NFRs) cắt giảm trên toàn hệ thống. Bảo mật, hiệu suất, tính năng sẵn có, và giá trị chi phí là mối quan tâm chính. Các kỹ sư hiệu quả hiệu quả hiệu quả chính đảm bảo những điều này không phải là sau. Họ vô hiệu hóa các hoạt động như phòng thủ, mức độ giới hạn, công tắc mạch, và sự thoái hóa duyên dáng. Khi thiết kế tính năng tăng mạnh, họ ưu tiên các mẫu như sự kiện và CQRS khi thích hợp, và xác định rằng hệ thống có thể chịu được sự nhiễu loạn về kỹ thuật và khả năng lên kế.

Sự lãnh đạo trong không gian này thường bao gồm việc viết ra tiêu chuẩn, duyệt lại các thiết kế để tuân thủ, và việc chạy các sự kiện làm cho chúng trở lại thành những cải tiến kiến trúc.

Quyết định thiết kế ở mọi cấp độ

Ngoài kiến trúc cấp cao, các kỹ sư chính ảnh hưởng đến các quyết định thiết kế chi tiết mà xác định kiến trúc được thực hiện như thế nào trong mã. bao gồm các hợp đồng về dữ liệu, mô hình dữ liệu, phương pháp điều khiển, thử nghiệm và triển khai các mô hình. trong khi các đội ngũ cá nhân làm các quyết định thiết kế hàng ngày, kỹ sư chính cung cấp các khuôn khổ và thường xem xét các tài liệu thiết kế chỉ trích hoặc tham gia vào các bài phê bình mã cho các thành phần cốt lõi.

Thiết kế giao diện và ADI

Thiết kế hệ thống ARI thiết kế sai, tạo ra các vấn đề cấu trúc cấu trúc mã hoá: sự kết nối chặt chẽ, viết lại đắt tiền, và khó kết hợp. Các kỹ sư hiệu chỉnh định nghĩa các quy tắc cho giao diện bánh xe hoặc gPC, phiên bản, và định dạng sai. Chúng thúc đẩy các mẫu nhất quán để người tiêu dùng có thể dự đoán hành vi. Ví dụ, họ có thể yêu cầu tất cả các hệ thống lỗi cấu trúc với mã đọc được và tất cả các đột biến đều là vô hiệu, nơi có thể có. Cấp độ phân biệt này trả tiền khi hệ thống phát triển và nhóm mới cần thiết để nhanh chóng kết hợp.

Name

Dữ liệu là nguồn sống của hầu hết các hệ thống, và các kỹ sư chính tạo ra hoặc chấp nhận các quyết định của dữ liệu then chốt. họ quyết định về sự bình thường hóa chống lại. decizing, chiến lược chính, chỉ số kế hoạch, và quản lý dữ liệu đời sống. Họ cũng khuyên về sự trao đổi giữa tính thống nhất và tính sẵn có, thường tham khảo lại định lý cấu hình hoặc mô hình PACELC. khi tiếp nhận đa hợp chất, họ đảm bảo dữ liệu nhất trên các cửa hàng khác nhau được xử lý với các mẫu giao dịch giống như saga hoặc sự nhất quán định với độ xung đột.

Lòng khoan dung và khoan dung

Thiết kế thất bại là dấu hiệu của kỹ thuật trưởng thành. kĩ sư hiệu quả ủng hộ các mô hình như tái tạo lại số nhân, số lượng thời gian, số lượng, số lượng giao dịch, và cân nhắc các giao dịch. họ điều khiển sự chấp nhận của kiểm tra sức khỏe, công tắc mạch và sự tắt điện tử. quyết định xung quanh các chiến lược thiết lập - các chiến lược bật đèn xanh, các lá cờ, lá cờ đặc trưng - đặc trưng một cách gián tiếp ảnh hưởng đến sự kiên cường của hệ thống và khả năng của đội để phục hồi nhanh chóng lỗi.

Giữ thăng bằng trong việc thay đổi và tranh chấp kỹ thuật

Một thách thức chính cho các kỹ sư chính là quản lý các khoản nợ kỹ thuật trong khi cho phép sự đổi mới. họ phải quyết định khi nào chấp nhận các sự kiện ngắn hạn về tốc độ và khi nào đầu tư vào việc tái định lượng để ngăn chặn sự trì trệ lâu dài. điều này đòi hỏi sự hiểu biết sâu sắc về các bản đồ sản phẩm, khả năng của cả đội, và cái giá thực sự của sự phức tạp.

Các kỹ sư chính thường dẫn đến việc trả nợ: di sản, tách rời khối đá, cải tiến việc kiểm tra, hoặc tự động thiết lập đường ống, và cũng giữ những điều mới cho hệ thống, đảm bảo rằng mọi tính năng hay dịch vụ mới đều được biện minh bởi giá trị kinh doanh và không thêm vào sự phức tạp không cần thiết.

Quan trọng là họ cũng nuôi dưỡng một nền văn hóa kỹ thuật nơi mà sự đổi mới an toàn bằng cách đầu tư vào những thực hành thử nghiệm tốt, sự tích hợp liên tục và khả năng không bị hư hỏng họ cho phép các đội thử nghiệm mà không phá vỡ sản phẩm họ giành được những dự án chứng minh cho những công nghệ mới và tạo ra không gian cho việc hackathons hay sự đổi mới cách mạng cách thức cân bằng này ngăn chặn cả sự trì trệ và hỗn loạn, làm cho tổ chức bền vững và linh hoạt

Kết luận

Tác động của các kỹ sư chính trên kiến trúc phần mềm và các quyết định thiết kế không thể bị cường điệu hóa. họ là quản lý tầm nhìn kỹ thuật, đảm bảo rằng hệ thống được xây dựng trên nền tảng vững chắc trong khi vẫn còn những yêu cầu thay đổi. và duy trì khả năng ngăn chặn việc tái tạo và giảm thiểu các công trình và các hệ thống.

Những tổ chức đầu tư vào việc đào tạo những kỹ sư chính và trao quyền cho họ với quyền quyết định thực sự nhìn thấy tốc độ kỹ thuật cao hơn, tỷ lệ tai nạn thấp hơn và có thể dự đoán trước được những cá nhân này không phải là lựa chọn; chúng là nhân tố quan trọng cho bất kỳ công ty có khả năng điều khiển công nghệ nào mà mong muốn xây dựng những hệ thống phần mềm mạnh mẽ, có khả năng sinh tồn lâu dài. bằng cách hiểu và sử dụng vai trò độc đáo của họ, các đội có thể tránh những cạm bẫy chung và lập một khóa học về sự sáng tạo kỹ thuật bền vững.

Để đọc thêm về kiến trúc và thiết kế tốt nhất mà các kỹ sư chính thường vô địch, hãy nhắc đến các tác phẩm [FLT: 0] Kiến trúc Phương pháp của Robert C. Martin và ) Công việc kiến trúc Mây , cung cấp những mẫu thiết thực cho hệ thống doanh nghiệp.