Theo truyền thống, trong ngành công nghệ, các nhà phát triển được chia thành bốn cấp độ dựa trên trình độ chuyên môn của họ: Sơ cấp, Trung cấp, Cao cấp và Trưởng nhóm. Hoặc năm, nếu bạn bao gồm các Thực tập sinh lập trình là “những người lính” được xếp hạng thấp nhất trong ngành phát triển phần mềm. Trong bài viết trước , chúng tôi đã đề cập đến việc trở thành nhà phát triển Junior là như thế nào. Vì vậy, hãy bắt đầu từ nơi chúng ta đã dừng lại lần trước và trải qua giai đoạn tiếp theo trong quá trình phân cấp nghề nghiệp của lập trình viên, đó là Nhà phát triển cấp trung.

Nhà phát triển cấp trung là ai?
Mid-level Developer là một lập trình viên tương đối có kinh nghiệm đã dành ít nhất 2-4 năm trong nghề này. Những năm này lẽ ra đã biến một lập trình viên mới thiếu kinh nghiệm và không chắc chắn thành một lập trình viên mạnh mẽ có đầy đủ chức năng, có thể viết mã của riêng mình và đưa ra các giải pháp mà không cần nhờ đến sự trợ giúp của các thành viên cấp cao trong nhóm. Nhà phát triển cấp trung thường là đơn vị trung tâm trong hầu hết mọi “đội quân” phát triển phần mềm, vì các lập trình viên cấp trung là những người thực hiện phần chính của công việc lập trình trên hầu hết mọi dự án. Không giống như các nhà phát triển Junior ít kinh nghiệm hơn, các lập trình viên cấp trung không cần nhiều trợ giúp hoặc giám sát, có thể làm mọi thứ một cách tự chủ và hiểu rõ về mã cũng như công nghệ được sử dụng trong dự án nên có nhiều trách nhiệm hơn. Ví dụ, nếu trọng tâm chính của Junior là viết mã có thể hoạt động, rõ ràng và đơn giản, thì lập trình viên cấp trung cũng cần suy nghĩ về những thứ như đảm bảo mã rõ ràng dễ hiểu và được viết phù hợp với tiêu chuẩn chất lượng và yêu cầu của dự án. Thông thường, phần lớn cơ sở mã của hầu hết mọi phần mềm đều được viết bởi các lập trình viên cấp trung. Tất nhiên, như mọi khi khi nói về nghề nghiệp và chuyên môn trong ngành công nghệ, điều đáng nói là các lập trình viên cấp trung (giống như Juniors hoặc Senior devs) có thể có kinh nghiệm và trách nhiệm khá khác nhau tùy thuộc vào công ty họ đang làm việc. “Từ quan điểm bên ngoài, 3–5 năm kinh nghiệm khiến bạn trở thành một người tầm trung. Từ bên trong một tổ chức, bạn đang ở thời điểm được tin cậy với việc viết mã nhưng ít hoặc không có tương tác với khách hàng và quyền sở hữu các dự án vừa và nhỏ. Tôi đã thấy các trường hợp các nhà phát triển cấp cao thích ở lại cấp trung hơn vì về cơ bản bạn đang viết mã mà không cần phải giao dịch với người quản lý dự án và khách hàng.”Lewis Nakao, một nhà phát triển phần mềm giàu kinh nghiệm và tư vấn nghề nghiệp viết mã, nói .Trách nhiệm của một Mid-level Developer là gì?
Bây giờ chúng ta hãy nói chi tiết hơn về một số trách nhiệm điển hình và phổ biến nhất của một Mid-level Developer.- Viết và duy trì mã.
- Phân tích và triển khai các phương pháp mã hóa tốt nhất vào mã dự án.
- Phân tích các yêu cầu kỹ thuật của dự án và điều chỉnh mã phù hợp với chúng.
- Xác định và phát triển các khu vực để sửa đổi trong các dự án hiện tại.
- Thực hiện và triển khai kiểm thử phần mềm.
- Phát triển các thủ tục đảm bảo chất lượng cho các dự án phần mềm.
- Phân tích nhu cầu của người dùng, cũng như nhu cầu của các nhà thiết kế, người kiểm tra QA và các thành viên khác của nhóm phát triển phần mềm.
- Xây dựng quy trình đảm bảo chất lượng.
- Phối hợp các nỗ lực và hợp tác với các nhà phát triển, nhà thiết kế, nhà phân tích hệ thống và kinh doanh khác, v.v.
- Ghi lại mọi phần của quá trình phát triển để tiếp tục công việc và bảo trì.
Yêu cầu đối với Nhà phát triển cấp trung
Dưới đây là danh sách các yêu cầu phổ biến và tiêu biểu nhất đối với Nhà phát triển cấp trung mà bạn nên đáp ứng để có được công việc này. Tất nhiên, các yêu cầu sẽ khác nhau tùy thuộc vào chính sách tuyển dụng của công ty, công nghệ được sử dụng trong dự án và ngôn ngữ lập trình của nhà phát triển. Rõ ràng, chúng tôi sẽ tập trung vào các yêu cầu điển hình đối với các nhà phát triển Java cấp trung.- Ít nhất hai đến ba năm với tư cách là nhà phát triển Java và có kinh nghiệm làm việc trên ít nhất một số dự án phần mềm khác nhau.
- Kiến thức đầy đủ về cách thiết kế, lập trình, triển khai và bảo trì các ứng dụng Java.
- Biết cách lập trình các hệ thống có dung lượng lớn và độ trễ thấp dành cho quy mô lớn.
- Kiến thức vững chắc về các framework để xây dựng dự án web (Maven, Gradle), framework cho các dự án doanh nghiệp (Spring, Hibernate, Spring Boot), các công cụ để kiểm tra đơn vị (JUnit, Mockito), v.v.
- Khả năng đóng góp trong tất cả các giai đoạn của vòng đời phát triển.
- Khả năng viết mã chất lượng cao, hiệu quả và dễ kiểm tra.
- Quen thuộc với việc tiến hành phân tích, kiểm tra và gỡ lỗi mã Java.
- Có kinh nghiệm quản lý phát triển ứng dụng Java và Java EE.
- Có thể đưa ra các phương pháp thay thế và triển khai các công nghệ mới hơn.
- Khả năng giao tiếp rõ ràng và chính xác với cả khách hàng kỹ thuật và phi kỹ thuật.
GO TO FULL VERSION