Công nghệ thông tin là một ngành có khá nhiều thuật ngữ khó hiểu và từ chuyên ngành chỉ có những người trong ngành mới có thể hiểu hết nghĩa. Có thể bạn đã nghe qua các chức danh như Architect (Kiến trúc sư), Tech Lead (Trưởng nhóm kỹ thuật), Team Leader (Trưởng nhóm) và Engineering Manager (Giám đốc kỹ thuật) đôi khi gây ra nhiều sự nhầm lẫn về vai trò và trách nhiệm của các vị trí này trong team.
Trong bài viết này, sẽ nêu tất cả các thông tin liên quan đến chức danh Tech Lead trong ngành IT để người đọc có cái nhìn khách quan hơn và không còn bị nhầm lẫn về vị trí này.
Tech Lead là gì?
Tech Lead là một Software Engineer (kỹ sư phần mềm) chịu trách nhiệm dẫn dắt một nhóm và điều chỉnh hướng kỹ thuật. Họ là người theo dõi và đưa ra các hướng kỹ thuật tối ưu nhất, công việc chính của họ là xây dựng tầm nhìn, giải quyết các bất đồng và quản lý chất lượng kỹ thuật.
Một Tech Lead giỏi là người có khả năng đưa ra những phương án kỹ thuật hiệu quả, phù hợp, chấp nhận đầu tư vào các công cụ được cải tiến liên tục, hệ thống phát triển để đáp ứng nhu cầu công việc, hỗ trợ các thành viên trong team luôn đi đúng hướng, hiệu quả công việc cao.
Đôi khi vai trò của Team Leader sẽ được các thành viên luân phiên đảm nhiệm, nhưng đối với vị trí của Tech Lead thì không như vậy. Tech Lead có thể đồng lãnh đạo một team với các vai trò khác như Product Manager, Engineering Manager hay Team Leader.
Khi đó Product Manager chịu trách nhiệm vào “Cái gì”, Engineering Manager hay Team Leader tập trung vào“ Phát triển con người và nhóm”, Tech Lead tập trung vào “Phát triển kỹ thuật” của các thành viên trong nhóm và hệ thống. Trọng tâm duy nhất của Tech Lead là dẫn đầu về chỉ đạo kỹ thuật và chất lượng cho nhóm, họ cũng có thể có thêm trách nhiệm tùy thuộc vào nhóm cụ thể.
Vai trò và trách nhiệm của Tech Lead
Vai trò
Trong một team, tùy thuộc vào quy mô của từng dự án mà có 1 hoặc nhiều vị trí đảm nhận vai trò quản lý khác nhau. Đối với những dự án lớn, trong một team có thể có cả 3 vai trò như Product Manager, Engineering Manager và Tech Lead, mỗi vị trí sẽ đảm nhận những nhiệm vụ khác nhau.
Trong trường hợp này, Tech Lead thường là người chịu trách nhiệm toàn bộ về mảng tech, họ sẽ tham gia nhiều hơn vào các cuộc thảo luận và quyết định về kiến trúc code. Đồng thời Tech Lead cũng sẽ quan sát, quản lý chất lượng của codebase và sự phát triển kỹ thuật của team.
Có thể thấy dù cho trong nhóm có thêm bao nhiêu vị trí nữa thì Tech Lead vẫn luôn thực hiện đúng chức năng của mình đó là điều hướng và lãnh đạo về mặt kỹ thuật của team. Một Tech Lead giỏi sẽ đồng hành cùng team, code cùng team, hiện thực hóa các ý tưởng, giải quyết vấn đề, xác định rủi ro kỹ thuật và hơn hết là phải có niềm tin vào các thành viên của team.
Trách nhiệm
Tech Lead làm việc với tư cách là người quản lý dự án và sản phẩm thiên về khía cạnh kỹ thuật cho team Developer Software Systems hay Computer Systems. Họ làm việc với giám đốc điều hành công ty hoặc khách hàng từ đó xác định yêu cầu về các thông số kỹ thuật cho hệ thống, đảm bảo hệ thống đủ mạnh để đáp ứng nhu cầu về các quy trình kinh doanh của khách.
Tech Lead cũng phát triển sản phẩm để phù hợp với kiến trúc của công ty hoặc yêu cầu của khách hàng, làm cho việc tích hợp trở nên trực quan và đảm bảo tất cả các bộ phận hoạt động cùng nhau, Tech Lead tạo ra các sơ đồ của toàn bộ kiến trúc mạng. Trách nhiệm của Tech Lead bao gồm:
- Xây dựng mối quan hệ với các nhà cung cấp phần mềm và phần cứng
- Chỉ ra những hạn chế với kiến trúc kỹ thuật và sửa chữa chúng
- Sử dụng Java và Apex để xây dựng phần mềm
- Outsourcing một số task phát triển nhất định cho các công ty đối tác
Các kỹ năng cần có của một Tech Lead là gì?
Ngoài các kỹ năng mềm như kỹ năng giao tiếp, quản lý, tổng hợp thông tin… thì một Tech Lead cần có các thêm kỹ năng phụ hỗ trợ cho chuyên ngành của họ để có thể giúp hoàn thành tốt công việc của vị trí Tech Lead.
Development (Phát triển)
Develop là nền tảng của Tech Lead, Tech Lead cần biết cách viết mã và có thể nhận ra được một mã chất lượng tốt trông như thế nào. Tech Lead sẽ phải giúp đỡ team của mình khi gặp phải bất kỳ trục trặc về kỹ thuật nào mà họ gặp phải.
Architecture (Kiến trúc)
Develop chỉ là một phần công việc của việc xây dựng hệ thống, Tech Lead cần phải có hiểu biết rộng hơn về các phần mềm phù hợp với hệ thống tổng thể. Họ cần hiểu rõ về phương thức phần mềm được triển khai, quản lý và vận hành trong môi trường sản xuất.
Leadership (Khả năng lãnh đạo)
Một Tech Lead chuyên nghiệp cần có kỹ năng lãnh đạo mạnh mẽ, ngay cả khi họ không chịu trách nhiệm quản lý toàn phần của dự án. Các kỹ năng thuộc kỹ năng lãnh đạo như huấn luyện, tạo sức ảnh hưởng và ủy quyền là chìa khóa thành công của Tech Lead.
Sự khác biệt giữa Tech Lead và Engineering Manager
Việc các công ty kết hợp vai trò Tech Lead và Engineering Manager là rất phổ biến. Mặc dù cả hai vai trò có một số điểm chung, nhưng mục tiêu công việc của 2 vai trò này lại khác nhau: Tech Lead chịu trách nhiệm về Hệ thống trong khi Engineering Manager chịu trách nhiệm về Con người.
Trong các công ty vừa và nhỏ hoặc nếu Tech Lead là một người có nhiều kinh nghiệm thì các Tech Lead có thể đảm nhận luôn vai trò của Engineering Manager trong những công ty đó. Trong trường hợp khi hệ thống và đội ngũ phát triển có quy mô và độ phức tạp cao, thì Tech Lead và Engineering Manager được đảm nhận bởi 2 người tách biệt.
Bảng so sánh
Tech Lead (Hệ thống) |
Engineering Manager (Con người) |
Giỏi về kỹ thuật và đổi mới |
Lập kế hoạch nghề nghiệp, thăng chức và huấn luyện |
Tích hợp kiến trúc và hệ thống |
Lập kế hoạch và thuê nhân viên |
Cố vấn công nghệ, áp dụng và liên kết |
Lập kế hoạch và phân phối team |
Bản trình bày thiết kế hệ thống |
Tham gia vào các quyết định kỹ thuật |
Hands-On Coding 30% – 70% thời gian |
Hands-On Coding 0% – 30% thời gian |
Điều hướng Platform, Patterns và Practices |
Năng suất và chỉ số của team |
SLA hệ thống, số liệu và giám sát |
Bảo vệ team |
Theo topdev.vn
Japan IT Works