Technical Architect là gì? Làm sao để trở thành Technical Architect? | Nttworks.vn

Kiến Thức Việc Làm 0 lượt xem

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, chẳng hạn như mã hóa, 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 khía cạnh kỹ thuật của một dự án, nhưng vẫn cần kỹ năng quản lý của nhóm phát triển để cân bằng các yếu tố chi phí và thời gian.

Đọc các cuộc phỏng vấn của ITviec với anh ấy Hải Nguyên, Kiến trúc sư trưởng của eSoftHead để nghe anh ấy nói về 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 việc làm kiến ​​trúc sư kỹ thuật 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 kiế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 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ề chức năng, tốc độ và bảo mật.
  • Quản lý các hoạt động kỹ thuật như đào tạo, kiểm tra, giám sát … để đảm bảo rằng nhóm phát triển viết mã và tài liệu theo các yêu cầu hệ thống đã xác định.
  • Làm việc định kỳ với khách hàng để đả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 dự án để đáp ứng 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, chẳng hạn như phát triển, thử nghiệm, triển khai, di chuyển.

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

Phạm vi công việc. Người phát triển tập trung thực hiện công việc được giao. Ví dụ: phát triển một số thành phần trong một dự án và tuân theo các quy tắc do kiến ​​trúc sư đặt ra.

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

Anh Thanh Phan, Giám đốc R&D Atlassian Việt Nam: Sự khác biệt giữa mã hóa và quản lý

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

Bạn có nghĩ rằng R&D thông thường cần kỹ năng lãnh đạo không?

Bản thân TA không cần kỹ năng quản lý như PM. Chẳng hạn, Thủ tướng Chính phủ phải quản lý con người, phạm vi dự án, tiến độ, mọi hoạt động của dự án để đảm bảo hoạt động tốt. Mặt khác, RT tập trung nhiều hơn vào các hoạt động kỹ thuật, cụ thể hơn là các hoạt động kỹ thuật.

READ  Hồ sơ xin việc có thời hạn bao lâu và câu trả lời chi tiết | Nttworks.vn

Tuy nhiên, R&D cần kỹ năng lãnh đạo của một nhóm phát triển. Hai vấn đề quan trọng liên quan đến dự án là chi phí và tiến độ.

Khi đưa ra một giải pháp, RD không chỉ quan tâm đến sự tồn tại của một giải pháp tốt về mặt kỹ thuật mà còn phải cân đối các yếu tố chi phí và thời gian mà nhóm phát triển có thể đáp ứng được.

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 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 cần thiết để TA đánh giá và quản lý chất lượng mã, tài liệu sản phẩm và các vấn đề về hiệu suất / bảo mật hệ thống khác.
  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ác công nghệ như điện toán đám mây, truyền thông di động, NoSQL.
  3. Có kinh nghiệm trong các phương pháp hay nhất về phát triển phần mềm như 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 liên quan đến dự án của bạn. Ví dụ, nếu công ty của bạn làm một sản phẩm cho 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 này.

Ông Nguyễn Xuân Huy – Kiến trúc sư kỹ thuật Cybozu Việt Nam: Một trong những thách thức mà mỗi kiến ​​trúc sư kỹ thuật phải đối mặt là 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 cho R&D khá cao nhưng lại 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.

Nhà phát triển không có thực hành.

Ví dụ công ty bạn có những dự án gì thì bạn làm theo cách này. Không phải tất cả các kỹ năng và kiến ​​thức cần thiết cho R&D thực sự đều có thể được thực hành.

Hầu hết các dự án kinh doanh không đủ phức tạp để mọi người có thể thực hành. R&D đòi hỏi 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ác 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 nghệ nhân chuyên về một lĩnh vực cụ thể.

Anh ấy chỉ biết về 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ệ phía 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ế mong muốn phát triển sự nghiệp R&D của nhà phát triển.

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 yêu cầu kỹ thuật hiện tại mà không quan tâm nhiều đến năng lực 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 thuê các TA có kỹ năng phù hợp. Phương pháp tuyển dụng này đặt ra những hạn chế đối với các công ty tuyển dụng.

Bởi vì, như bạn đã nói ở trên, TA không chỉ là viết hoặc đọc mã, mà còn về 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: Hiện vẫn còn ít kiến ​​trúc sư phần mềm ở Việt Nam.

Những sai lầm phổ biến nhất của kiến ​​trúc sư kỹ thuật là gì?

Một trong những sai lầm mà anh ta và hầu hết TA mắc phải là mong muốn chứng minh rằng mình là người khôn ngoan. Điều này có nghĩa là tôi cố gắng đoán yêu cầu của khách hàng và tôi hài lòng nếu tôi nghĩ đúng.

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

Và anh ấy đã gây ấn tượng với khách hàng rằng nhóm của anh ấy đã nghĩ đúng những tuyên bố của họ.

Sai lầm ở đây là nếu bạn cho rằng yêu cầu của khách hàng là sai, điều đó có nghĩa là bạn đã làm quá và sẽ mất thời gian cho đội của bạn.

READ  Developer là gì? Thông tin từ "A đến Z" về nghề developer | Nttworks.vn

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

Mr 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 một 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, hiểu rõ quy trình và thường xuyên cập nhật công nghệ mới bằng cách làm theo bốn mẹo dưới đây.

Một là: Tôi giới thiệu bạn cố gắng chịu trách nhiệm nhiều hơn những gì bạn làm. Đừng lo lắng quá nhiều về lợi ích. Bởi vì, sau tất cả, tôi đã có cơ hội để phát triển các kỹ năng của mình, đó là lợi ích đầu tiên.

Nếu bạn đang ở cấp độ cơ sở, hãy cố gắng hoàn thành 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ư thành phần cho công việc của TA. Những thách thức bạn phải đối mặt càng khó, kỹ năng của bạn càng tốt + nhiều cơ hội hơn.

Hai là: nếu bạn thực hiện các dự án đơn giản hoặc làm các công việc đơn giản, bạn sẽ không trở thành một nhà phát triển có kinh nghiệm cao và phát triển thành một kỹ thuật viên có thể xử lý các dự án đòi hỏi độ phức tạp kỹ thuật cao. Do đó, tôi nên hỏi Tham gia vào các dự án phức tạp và công nghệ cao để rèn luyện kỹ năng.

READ  Cán cân xuất nhập khẩu là gì? Cách tính cán cân xuất nhập khẩu | Nttworks.vn

Ba là: chọn một công ty mà tôi có thể xem 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 kinh nghiệm này từ cả sản phẩm và công ty gia công, nhưng Công ty sản phẩm giúp tôi theo dõi + hiểu rõ hơn 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à nhà thầu phụ

Thứ tư là: Cập nhật thông tin kỹ thuật, 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 của bạn.

Anh ấy đã đọc một số cuốn sách, cuốn sách 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.

Những cuốn sách dưới đây có thể được triển khai bằng 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 phần mềm hướng đối tượng phong phú của 4 nhà thiết kế giỏi nhất và 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 được tập hợp tại đây. Cuốn sách này được viết cách đây 20 năm, nhưng vẫn rất hay để đọc đến ngày nay vì kiến ​​thức của một kiến ​​trúc sư thường giống nhau / thay đổi rất ít theo thời gian.
    • Các mô hình tích hợp công ty và các phương pháp hay nhất. Cuốn sách bao gồm một danh mục gồm 65 mẫu có giá trị với các giải pháp thiết thực mô tả các khả năng của việc nhắn tin và giúp bạn thiết kế 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 đang phát triển dựa trên các thử nghiệm. Thông qua nhiều ví dụ, bạn có thể tìm hiểu cách TDD hoạt động ở nhiều cấp độ, sử dụng các bài kiểm tra để điều khiển các chức năng, tìm hiểu về cấu trúc hướng đối tượng của mã và tìm hiểu cách sử dụng các đối tượng mẫu để mô tả mối quan hệ giữa các hình dạng đối tượng.
    • Các Nguyên tắc, Mẫu và Thực hành Phát triển Phần mềm Agile: 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 Nhà phát triển Phần mềm và Kiến trúc sư. Tác giả giải thích các nguyên tắc của lập trình hướng đối tượng rất cụ thể với nhiều ví dụ. 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 nghiên cứu các nguồn thông tin này hàng ngày:

  1. InfoQ
  2. DZone
  3. Martin Lill

Tiểu sử anh Hải Nguyễn

Anh Hải đi từ Nhà phát triển phần mềm → Giám đốc kỹ thuật → Giám đốc dự án → Giám đốc dự án cấp cao → 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 của công ty eSoftHead của anh ấy và một công ty gia công phần mềm có trụ sở tại Úc.

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

ITviec Robby

Nếu bạn nghĩ những chia sẻ này có thể giúp ích cho bạn bè hoặc đồng nghiệp của mình, hãy nhấp vào nút Chia sẻ bên dưới!

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

Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai.

Protected with IP Blacklist CloudIP Blacklist Cloud