40 lượt xem

Technical Architect là gì? Làm sao để trở thành Technical Architect? | Educationuk-vietnam.org

Kiến trúc sư kỹ thuật là gì? Kiến trúc sư kỹ thuật là người chịu trách nhiệm về tất cả các hoạt động kỹ thuật liên quan đến dự án như viết mã, thiết kế, thử nghiệm, v.v.

Kiến trúc sư kỹ thuật, còn được gọi là TA, là người tập trung vào mặt kỹ thuật của dự án, nhưng vẫn cần kỹ năng quản lý cho nhóm phát triển khi cân bằng các yếu tố chi phí và thời gian.

Đọc cuộc phỏng vấn ITviec với anh ấy Hải Nguyên, Kiến trúc sư kỹ thuật trưởng eSoftHead để nghe anh ấy nói những trách nhiệm của một Kiến trúc sư kỹ thuật và những kỹ năng cần thiết để trở thành một Kiến trúc sư kỹ thuật.

Xem thêm công việc kiến ​​trúc sư kỹ thuật tại ITviec

Kiến trúc sư kỹ thuật là gì?

Kiến trúc sư kỹ thuật là người chịu trách nhiệm về tất cả các hoạt động kỹ thuật liên quan đến dự án. Ví dụ,

  • Chọn công cụ, tìm giải pháp trước và trong quá trình phát triển phần mềm.
  • Xác định mối quan hệ giữa các thành phần trong hệ thống và trách nhiệm của từng thành phần để thiết kế hệ thống tối ưu cho việc vận hành, bảo trì và giao hàng cho khách hàng phù hợp với các yêu cầu về tính năng, tốc độ và an toàn.
  • Quản lý các hoạt động kỹ thuật như đào tạo, xem xét, giám sát … để đảm bảo rằng nhóm phát triển viết mã và tài liệu phù hợp với các yêu cầu hệ thống đã xác định.
  • Làm việc với khách hàng theo định kỳ để đảm bảo rằng kiến ​​trúc sư đáp ứng các yêu cầu hệ thống, cập nhật thiết kế cho các yêu cầu mới.
  • Áp dụng các phương pháp hay nhất để cải thiện quy trình và chất lượng phần mềm ở tất cả các giai đoạn như phát triển, thử nghiệm, triển khai, chuyển đổi.

Kiến trúc sư kỹ thuật khác với Nhà phát triển như thế nào?

Lĩnh vực công tác. Nhà phát triển tập trung vào việc thực hiện một công việc nhất định. Ví dụ, sự phát triển của một thành phần trong một dự án và nghĩa vụ tuân theo các quy tắc do kiến ​​trúc sư đặt ra.

Phạm vi của TA lớn hơn, họ chịu trách nhiệm quản lý kỹ thuật của toàn bộ dự án. Các hoạt động TA không chỉ liên quan đến mã, mà còn cả thiết kế, kiểm thử, quản trị phần mềm …

Anh Thanh Phan, Trưởng bộ phận R&D Atlassian Việt Nam: Sự khác biệt giữa mã hóa và quản lý

Anh Hải mặc áo sơ mi trắng ngồi giữa.

Bạn có nghĩ rằng một AT bình thường cần kỹ năng quản lý không?

Bản thân TA không cần kỹ năng quản lý như PM. Ví dụ, PM nên quản lý con người, mục tiêu dự án, lịch trình, tất cả các hoạt động của dự án để đảm bảo việc phân phối tốt. Mặt khác, AT tập trung nhiều hơn vào các hoạt động kỹ thuật, đặc biệt là các hoạt động kỹ thuật.

Nhưng TA vẫn cần kỹ năng quản lý cho nhóm phát triển. Hai vấn đề quan trọng của dự án là chi phí và kế hoạch.

TA khi đưa ra giải pháp không chỉ quan tâm đến việc có một giải pháp tốt về mặt kỹ thuật mà còn cần cân đối các yếu tố chi phí và thời gian mà nhóm phát triển có thể lấp đầy.

READ  Những điều cần biết về ngành Văn học | Educationuk-vietnam.org

Kỹ năng của một kiến ​​trúc sư kỹ thuật là gì?

Phân khúc phần mềm có nhiều nền tảng, ngôn ngữ và hệ điều hành khác nhau. TA chắc chắn không thể biết tất cả mọi thứ. Nhưng những gì chúng ta cần là:

  1. Anh ấy từng là một nhà phát triển giỏi. Đây là điều kiện tiên quyết để TA có thể đánh giá và quản lý chất lượng mã, tài liệu sản phẩm và các vấn đề khác liên quan đến hiệu suất / bảo mật hệ thống.
  2. Có kiến ​​thức về thiết kế hệ thống phần mềm hướng đối tượng cho các dự án vừa và lớn. Cập nhật kiến ​​thức mới về công nghệ như điện toán đám mây, di động, NoSQL.
  3. Có kinh nghiệm trong các thực tiễn phát triển phần mềm tốt nhất như xây dựng tích hợp liên tục, kiểm thử đơn vị, TDD.
  4. Có kiến ​​thức về lĩnh vực kinh doanh mà dự án của bạn đang kinh doanh. Ví dụ, công ty của bạn đang làm một sản phẩm liên quan đến ngân hàng / tài chính, bạn cần phải có kiến ​​thức về các lĩnh vực đó.

Ông Nguyễn Xuân Huy – Kiến trúc sư kỹ thuật của Cybozu Việt Nam: Một thách thức mà mọi kiến ​​trúc sư kỹ thuật đều phải trải qua đó là đưa ra quyết định lựa chọn giải pháp phù hợp.

Tuyển dụng kiến ​​trúc sư kỹ thuật tại Việt Nam

Nhu cầu tuyển dụng TA khá cao nhưng khó tìm được ứng viên phù hợp. Nguyên nhân của vấn đề này xuất phát từ hai phía: ứng viên và nhà tuyển dụng.

Các nhà phát triển thiếu thực hành.

Ví dụ công ty bạn có dự án gì thì bạn làm theo cách đó. Bạn không thể thực hành tất cả các kỹ năng và kiến ​​thức cần thiết cho một AT thực sự.

Hầu hết các dự án của công ty không đủ phức tạp để mọi người có thể thực hiện được. Một AT cần nhiều kỹ năng khác nhau: viết mã, kiến ​​trúc thiết kế, viết tài liệu, đánh giá công cụ và giải pháp, quy trình phần mềm…

nhiều Công ty phân chia nhiệm vụ của nhà phát triển theo chức năng.

Ví dụ: back-end, front-end, server-site, network, system administrator.

Điều này tạo ra mức độ chuyên môn hóa cao nhưng cũng tạo ra một những người thợ thủ công chuyên về một lĩnh vực cụ thể.

Anh ấy chỉ biết về một công việc trong giai đoạn phát triển phần mềm. Nếu bạn là một nhà phát triển UI / UX, bạn chỉ biết về UI / UX, bạn không biết nhiều về các công nghệ máy chủ và ngược lại.

Chỉ làm một loại công việc trong thời gian dài hạn chế khả năng của nhà phát triển muốn phát triển nghề nghiệp như TA.

Phương thức tuyển dụng của nhiều công ty là tìm kiếm những ứng viên đáp ứng được các yêu cầu kỹ thuật hiện tại mà không quan tâm nhiều đến kỹ năng phát triển của nhân viên trong tương lai..

Ví dụ, một công ty cần tuyển dụng Java, Ruby on Rails, .NET thường tuyển dụng TA có kỹ năng phù hợp. Phương thức tuyển dụng này gây ra những hạn chế cho các công ty tuyển dụng.

Vì như bạn đã nói ở trên, AT không chỉ giải quyết việc viết hoặc đọc mã, mà còn liên quan đến thiết kế, đánh giá và quản lý kỹ thuật.

Ông Trần Vũ Tất Bình – một trong những nhà phát triển Android đầu tiên tại Việt Nam: số lượng kiến ​​trúc sư phần mềm ở Việt Nam còn ít.

Những lỗi thường gặp của kiến ​​trúc sư kỹ thuật là gì?

Một sai lầm mà anh ta và hầu hết TA mắc phải là họ muốn chứng minh rằng anh ta là người thông minh. Nó có nghĩa là cố gắng đoán yêu cầu của khách hàng và hài lòng khi tôi đoán đúng.

Ví dụ, trước đây, khách hàng không muốn in dữ liệu ra máy in, chỉ trích xuất dữ liệu ra các loại tệp khác nhau. Nhưng tôi nghĩ bạn sẽ cần chúng trong tương lai, vì vậy tôi đã thiết kế giao diện cho thiết bị in.

Và anh ấy đã gây ấn tượng với khách hàng rằng đội của anh ấy đã đoán đúng yêu cầu của họ.

Sai lầm có thể dễ dàng khiến yêu cầu của bạn bị từ chối là thất bại.

READ  Đam mê là gì? Cách nhận diện và tìm kiếm đang mê của bạn? | Educationuk-vietnam.org

Bài học mà anh ấy rút ra là TA, nhà phát triển, người quản lý dự án phải làm đủ việc trong lĩnh vực công việc. Một giải pháp tốt là một giải pháp mà mọi người có thể hiểu, đáp ứng các yêu cầu vận hành và sửa chữa và đủ linh hoạt để sửa đổi với ít thời gian và nỗ lực nhất có thể.

Anh Hải mặc áo sơ mi trắng đứng giữa.

Anh Hải (áo trắng đứng giữa) cùng các đồng nghiệp

Làm thế nào để trở thành một Kiến trúc sư kỹ thuật?

Để trở thành Kiến trúc sư kỹ thuật, các Nhà phát triển cần củng cố kỹ năng phát triển phần mềm của mình, hiểu rõ quy trình và thường xuyên cập nhật công nghệ mới, chẳng hạn như 4 mẹo dưới đây:

Một là: Tôi khuyên bạn cố gắng chịu trách nhiệm nhiều hơn những gì bạn đang làm. Đừng lo lắng quá nhiều về những lợi ích. Vì cuối cùng tôi đã có cơ hội phát triển các kỹ năng của mình, đây là lợi ích đầu tiên.

Nếu bạn ở cấp độ thấp hơn, thì hãy cố gắng nhận nhiệm vụ ở cấp độ cao hơn. Sau đó, khi tôi trở thành một nhà phát triển cấp cao, tôi đảm nhận trách nhiệm của một kiến ​​trúc sư thiết kế thành phần trong công việc của TA. Bạn càng chấp nhận thử thách càng khó, kỹ năng của bạn càng tốt + càng có nhiều cơ hội.

Có hai: nếu bạn làm các dự án nhẹ hoặc làm các công việc nhẹ, thì bạn không thể trở thành một nhà phát triển có kinh nghiệm và phát triển để trở thành một AT có thể xử lý các dự án đòi hỏi độ phức tạp kỹ thuật cao. Do đó nó nên hỏi về Tham gia vào các dự án đầy thử thách với yêu cầu kỹ thuật cao để rèn luyện kỹ năng.

Có ba: chọn một công ty mà tôi có thể xem xét sản phẩm từ nhiều góc độ: UI / UX, front end, back end, quá trình phát triển … Tôi có thể thu thập hầu hết những kinh nghiệm này từ cả các công ty sản phẩm và các công ty bên ngoài, nhưng Công ty sản phẩm đặc biệt giỏi trong việc giúp tôi quan sát + hiểu được toàn bộ quá trình phát triển.

Tham khảo: 3 điểm khác biệt giữa công ty sản xuất và công ty bên ngoài

Có bốn: Cập nhật thông tin công nghệ, kỹ thuật mới đọc sách, xem blog và áp dụng chúng vào công việc hàng ngày.

READ  Giáo án bài Hạnh phúc của một tang gia (Vũ Trọng Phụng) | Educationuk-vietnam.org

Có một số cuốn sách mà anh ấy đã đọc mà anh ấy coi là điểm khởi đầu để học thiết kế phần mềm và viết mã chất lượng cao.

Những cuốn sách sau đây có thể được áp dụng cho hầu hết mọi ngôn ngữ lập trình.

    • Mẫu thiết kế: Các yếu tố của phần mềm hướng đối tượng có thể tái sử dụng. Kinh nghiệm sâu rộng về phần mềm hướng đối tượng của 4 nhà thiết kế giỏi nhất được tập hợp ở đây với các giải pháp đơn giản và gọn gàng cho nhiều vấn đề thiết kế phổ biến. Cuốn sách này được viết cách đây 20 năm, nhưng bây giờ đọc vẫn hay, vì kiến ​​thức của kiến ​​trúc sư thường giống nhau / thay đổi rất ít theo thời gian.
    • Các mô hình và thực tiễn tốt nhất để tích hợp doanh nghiệp. Cuốn sách cung cấp một danh mục gồm 65 mẫu có giá trị với các giải pháp thực tế mô tả khả năng nhắn tin và giúp bạn tạo ra một giải pháp nhắn tin hiệu quả cho doanh nghiệp của mình.
    • Phần mềm hướng đối tượng, chạy thử nghiệm đang phát triển. Thông qua nhiều ví dụ, bạn sẽ học cách TDD hoạt động ở nhiều cấp độ, sử dụng các bài kiểm tra để chạy các tính năng, tìm hiểu về cấu trúc mã hướng đối tượng và cách sử dụng Mock Objects để mô tả mối quan hệ giữa các đối tượng.
    • Phát triển phần mềm khéo léo, nguyên tắc, mô hình và thực hành: Một cuốn sách cơ bản và nâng cao về các nguyên tắc thiết kế phần mềm hướng đối tượng cần thiết cho các nhà phát triển phần mềm và kiến ​​trúc sư. Tác giả giải thích rất cụ thể các nguyên tắc của lập trình hướng đối tượng với nhiều ví dụ minh họa. Sự kết hợp của cuốn sách này và [1] Mẫu thiết kế: Các yếu tố của phần mềm hướng đối tượng có thể tái sử dụng là bước đầu tiên giúp bạn học cách thiết kế phần mềm tuyệt vời.

Ngoài ra, anh ấy khuyên bạn nên kiểm tra các nguồn thông tin này hàng ngày:

  1. InfoQ
  2. DZone
  3. Lulja Martin

Tiểu sử của Mr. Hải Nguyên

Ông Hải từ Nhà phát triển phần mềm Tek Giám đốc kỹ thuật i Giám đốc dự án i Giám đốc dự án cấp cao kryesor Kiến trúc sư trưởng kỹ thuật.

Với 14 năm kinh nghiệm phát triển phần mềm, anh ấy là giám đốc kỹ thuật cho công ty của mình, eSoftHead, và một công ty gia công phần mềm có trụ sở tại Úc.

Ngoài ra, anh cũng phát triển một dịch vụ đám mây để quản lý khách hàng và quản lý dự án, MyCollab, một phần của sản phẩm này là mã nguồn mở và được nhiều công ty sử dụng.

ITviec Robby

Nếu bạn cho rằng những chia sẻ này có thể giúp ích cho bạn bè, đồng nghiệp của mình thì đừng ngần ngại nhấn nút Chia sẻ bên dưới nhé!

Xem thêm công việc kiến ​​trúc sư kỹ thuật tại ITviec.

Bài viết cùng chủ đề: