Muốn biết Junior vs Senior thế nào hả à. Search "
Câu chuyện mua dưa" ấy.
Theo tôi quan trọng là kỹ năng giải quyết vấn đề. Phải thấy được góc nhìn toàn cảnh (The Big Picture) của mọi vấn đề chứ ko phải chỉ có mổi cái kiến thức về technical rồi bảo tao đây senior, expert, với tôi đó chỉ là một anh thợ code lành nghề mà thôi.
Mục đích cuối cùng là deliver dự án
on time, on scope, on budget, good quality. Anh senior phải có góc nhìn toàn cảnh để đạt đc 4 tiêu chí cho mục đích đó và
lan toả kỹ năng đó ra cho cả team. Đôi khi phải có kỹ năng giải quyết vấn đề dựa trên ràng buộc về timeline, resources, knowledge của team.
Ví dụ đứng trước yêu cầu setup code base cho dự án khó, chặt deadline, team thì cùi toàn fresher, junior... anh ta có biết estimate, đàm phán về timeline, hỗ trợ quản lý thời gian cho cả team, support juniors? có biết nhận ra những cái potential risks? Có biết chọn công nghệ phù hợp (ko phải mới nhất hay hot nhất) với dự án, trình độ của team , timeline hay ko? Tất cả những thứ đó để đảm bảo 4 tiêu chí kia.
Những sai lầm thường gặp của các anh "senior" tôi hay thấy là chỉ rèn mổi technical skill rồi cho là tao đây expert. Mấy thằng khác code ko bằng tao là dbrr hết, team lead, pm ngu hơn tao. Mấy anh này thì thường rất khó làm team work. Lúc code thì chọn những cái hot nhất, cao siêu nhất để thể hiện. ==> góc nhìn của a ta có thể đúng về mặt techical nhưng ko phù hợp về mặt timeline, scope, budget, resources, team skills... cuối cùng thường thấy là mấy anh này ôm task làm 1 mình.