Sự khác biệt giữa các nhà phát triển Entry Level / Jr / Sr là gì? [đóng cửa]


198

Khác với tiêu đề và trả tiền, sự khác biệt là gì?

  • Họ có trách nhiệm gì khác nhau.

  • Làm thế nào họ có kiến ​​thức / kinh nghiệm?

  • Biện pháp cơ bản để xác định nơi nhà phát triển phù hợp với cấu trúc cơ bản này là gì?

Câu trả lời:


341

Điều này sẽ thay đổi nhưng đây là cách tôi nhìn thấy nó ở một nơi đủ lớn để có sự phân biệt giữa các loại lập trình viên.

Tôi muốn nói cấp nhập cảnh và Junior là điều tương tự. Họ vừa ra trường và có ít hơn hai năm kinh nghiệm làm việc. Họ được phân công các nhiệm vụ ít phức tạp nhất và cần được giám sát khá chặt chẽ. Nói chung họ biết khoảng 10% những gì họ nghĩ rằng họ biết. Thông thường họ chưa trải qua toàn bộ chu kỳ phát triển và vì vậy thường đưa ra một số lựa chọn rất ngây thơ nếu có cơ hội lựa chọn. Đáng buồn thay, nhiều người trong số họ không thực sự quan tâm yêu cầu là gì, họ muốn xây dựng mọi thứ theo cách của họ. Họ thường có kỹ năng sửa lỗi kém.

Trình độ trung cấp là nơi nhiều lập trình viên ngã xuống. Họ có hơn hai năm kinh nghiệm và thường ít hơn mười, mặc dù một số người có thể ở mức này toàn bộ sự nghiệp của họ. Họ có thể tạo mã làm việc với ít sự giám sát miễn là chúng được gán cho các nhiệm vụ tương đối thường xuyên. Chúng thường không được giao nhiệm vụ thiết kế cấp cao hoặc các nhiệm vụ phức tạp cao đòi hỏi trình độ kiến ​​thức chuyên sâu. Họ có thể được giao nhiệm vụ thiết kế một phần của ứng dụng, đặc biệt là khi họ ở trong khu vực để trở thành một nhà phát triển cao cấp. Họ giỏi trong các nhiệm vụ bảo trì hoặc nhiệm vụ trong đó họ chỉ có thể tập trung vào mảnh ghép của mình, nhưng thường không được coi là toàn bộ ứng dụng trừ khi làm việc với các nhà phát triển cao cấp hoặc được ưu tiên thăng hạng lên cấp cao. Họ thường có thể làm tốt công việc khắc phục sự cố và gỡ lỗi, nhưng họ phải thực sự vượt qua để có được những cái khó. Họ chưa có đủ kinh nghiệm để xem các mô hình trong các vấn đề chỉ cho họ đến nơi có thể xảy ra. Nhưng họ đang đạt được những kỹ năng đó và hiếm khi cần yêu cầu gỡ lỗi. Có lẽ họ đã trải qua toàn bộ chu trình phát triển ít nhất một lần và thấy kết quả của các vấn đề thiết kế và đang học cách tránh chúng trong tương lai. Thông thường họ có xu hướng có nhiều khả năng đưa ra yêu cầu theo mệnh giá và không đẩy nó trở lại khi nó có vấn đề hoặc khoảng trống rõ ràng. Họ đã học đủ để biết những gì họ không biết và bắt đầu có được kiến ​​thức đó. Họ là những con ngựa của thế giới lập trình,

Không ai là cấp cao thậm chí cần phải hỏi câu hỏi này. Họ là những chuyên gia trong ngăn xếp công nghệ được lựa chọn của họ. Họ được giao những nhiệm vụ khó khăn (những người không ai biết cách giải quyết) và thường nhận được phản hồi thiết kế. Họ thường làm việc độc lập vì họ có một hồ sơ theo dõi đã được chứng minh về việc giao hàng. Họ dự kiến ​​sẽ cố vấn cho các nhà phát triển Junior và trung cấp. Thường thì họ là những người gỡ rối tuyệt vời. Họ đã gặp phải những vấn đề tương tự trước đây và có một ý tưởng rất tốt về nơi để tìm kiếm đầu tiên. Người cao niên thường cố vấn bên ngoài nơi làm việc là tốt. Họ thường có ít nhất mười năm kinh nghiệm và hầu như luôn luôn có ít nhất một cuộc diễu hành tử thần và biết chính xác lý do tại sao một số điều cần tránh. Họ biết cách cung cấp một sản phẩm làm việc và đáp ứng thời hạn. Họ biết những góc nào có thể được cắt và những góc nào không bao giờ nên cắt. Họ biết ít nhất một và thường một vài ngôn ngữ ở cấp độ chuyên gia. Họ đã thấy rất nhiều "công nghệ mới nóng" tấn công tại nơi làm việc và biến mất, vì vậy họ có xu hướng thận trọng hơn một chút về việc nhảy lên băng thông cho công cụ phát triển mới thú vị tiếp theo (nhưng không hoàn toàn chống lại sự thay đổi - đó sẽ là nhà phát triển trung cấp lớn tuổi hơn, những người không bao giờ thực hiện bước nhảy vọt lên Senior). Họ hiểu công việc của họ là cung cấp phần mềm làm việc làm những gì người dùng muốn chứ không phải chơi với các công cụ thú vị. Họ thường kén chọn về nơi họ sẽ làm việc bởi vì họ có thể và bởi vì họ đã thấy tận mắt một số nơi có thể tồi tệ như thế nào. Họ tìm kiếm những nơi có nhiệm vụ thú vị nhất để làm. Thường thì họ biết nhiều về các sản phẩm của công ty hơn bất kỳ ai khác ngay cả khi họ chỉ ở đó vài tháng. Họ biết rằng họ cần nhiều hơn kiến ​​thức lập trình và rất giỏi trong việc tìm hiểu kiến ​​thức về lĩnh vực kinh doanh mà họ hỗ trợ. Họ thường nhận thức được các vấn đề mà đàn em không bao giờ xem xét và những người trung gian thường không nghĩ đến như các vấn đề pháp lý và pháp lý trong lĩnh vực kinh doanh mà họ hỗ trợ. Họ có thể và sẽ đẩy lùi một yêu cầu bởi vì họ biết những vấn đề với nó sẽ là gì và có thể giải thích tương tự cho giáo dân.


2
có một Tiêu đề (bằng tiếng Anh) cho "Trình độ trung cấp" Trình dịch Google sử dụng "Nhà phát triển đầy đủ". Nhưng nó không phải là một nguồn có giá trị =)
Michel Ayres

23
Tuyệt vời, giải thích giống như câu chuyện. Tôi rất thích đọc nó.
Saeed Neamati

1
Cảm ơn lời giải thích này. Tôi tự học trong nhà phát triển iOS (không có giáo dục comp-sci) và đã phát hành ứng dụng đầu tiên của tôi có một số tính năng không tầm thường (ví dụ JSON của CRUD, một số thành phần xã hội, thiết kế tốt). Tôi không nghĩ mình là một lập trình viên tuyệt vời nhưng tôi đã viết ứng dụng trở lại mặt trận và hiểu những gì nó cần để vận chuyển. Bạn sẽ đặt một người như tôi ở đâu, theo giả thuyết?
SamYoungNY

1
@NYCTechEngineer, tràn ngăn xếp đến với tâm trí. Ngoài ra các nhóm người dùng địa phương, viết blog, viết bài và sách.
HLGEM

1
@BrianHaak Thx - thật thú vị những gì bạn nói. Kể từ năm ngoái, tôi đã làm việc trong một dự án lớn hơn nhiều so với trước đây. Tôi đã có cảm giác khi xem mã tôi đã viết cách đây vài tháng và nói "wtf? Ai nghĩ đây là một ý tưởng tốt?" :) - Bắt đầu dự án này từ một hạt nhân nhỏ thành một dự án có thể mở rộng dễ dàng & cũng có thể chứa những người không phải là nhà phát triển muốn thêm nội dung đã buộc tôi phải suy nghĩ về cấu trúc cấp cao hơn. Ghép cặp lập trình viên nhiều kinh nghiệm hơn cho tôi thấy rằng tôi đang thiếu rất nhiều opps. để sử dụng trừu tượng. Tôi cũng gặp rắc rối với không gian tên.
SamYoungNY

43

Cấp nhập cảnh - phải cung cấp cho họ các hướng dẫn rõ ràng, kiểm tra mọi thứ họ làm, ít hoặc không có trách nhiệm thiết kế, không có trách nhiệm phân tích

Junior - hướng dẫn ít rõ ràng hơn, ít kiểm tra hơn, một số trách nhiệm thiết kế và phân tích nhỏ; giúp những người ở cấp nhập cảnh tìm trình biên dịch và sử dụng kho lưu trữ

Cao cấp - trách nhiệm thiết kế và phân tích chính, dự kiến ​​sẽ tự sửa lỗi giám sát, ít / không kiểm tra, ít / không hướng dẫn; giúp những người ở cấp cơ sở học hỏi / cải thiện kỹ năng phân tích và thiết kế


20
Thật tuyệt, ngoại trừ tôi không biết rằng tôi hoàn toàn đồng ý với "không kiểm tra / hướng dẫn" cho cấp cao. Trừ khi bạn không làm việc trên hoặc với một nhóm, không ai nên hoàn toàn là một hòn đảo.
Wonko the Sane

@WonkotheSane chúng tôi có một người hợp nhất các mã có lỗi mà không có bất kỳ yêu cầu codeReview hoặc pull nào. Không thảo luận nhiều về kiến ​​trúc ứng dụng ngoài việc chỉ sử dụng mô hình quan sát ở mọi nơi. Tự mình đưa ra mọi quyết định để anh ấy không thích nghi với bất kỳ điều gì mới . Tất cả chỉ vì anh một hòn đảo. Anh ta không ở trong đó. Anh ấy hòn đảo :(
Honey

16

Thực sự, tôi nghĩ rằng nó đã đi vào thời gian bạn đã làm việc bao lâu. Nếu bạn có 10 năm kinh nghiệm, bạn là một dev cao cấp, nếu bạn tốt nghiệp thì có lẽ bạn đang ở cấp độ đầu vào. Tôi đã thấy nhiều nhà phát triển cấp cao, những người khó có thể viết mã và không thực sự biết họ đang làm gì và nhiều nhà phát triển cơ sở tuyệt vời.


7
Điều này lặp lại kinh nghiệm của tôi. "Senior" có nghĩa là thời gian với công ty và thường không có gì khác; kỹ năng không phải là yếu tố trong một iota. Tôi đã làm việc với nhiều nhà phát triển "cao cấp" (và các nhà quản lý cho vấn đề đó), những người không biết gì về phần mềm ngoài việc phát triển thử và sai nhưng đã làm việc với công ty hơn 5 năm hoặc là lập trình viên đầu tiên được thuê khi nơi đã được bắt đầu, và do đó đã được thăng chức do nhiệm kỳ.
Wayne Molina

8

Tôi nghĩ rằng các vị trí thợ thủ công trường học cũ của người học việc, người hành trình và bậc thầy phù hợp với các vị trí này tốt cho cấp nhập cảnh, cấp cơ sở (hoặc chỉ không có tiền tố) và cấp cao.

Một số người vào cấp được giao những nhiệm vụ tương đối đơn giản, không có hậu quả sâu sắc và công việc của họ được kiểm tra bởi một thiếu niên hoặc cấp cao. Theo thời gian, họ nhận được nhiều trách nhiệm hơn và được giao những nhiệm vụ phức tạp hơn, học những sợi dây trên đường đi.

Ở cấp cơ sở (hoặc chỉ loại bỏ "cấp nhập cảnh" / "cấp cơ sở" khỏi tiêu đề / mô tả), bạn đã hoàn thành việc học nghề của mình và đã bao quát các lĩnh vực phát triển chính cho công ty của bạn, đã nhúng vào từng lĩnh vực chính để bạn quen thuộc với từng người trong số họ. Bây giờ bạn giúp cung cấp hướng dẫn và đầu vào cho người học việc tương đương, nhưng công việc của bạn vẫn được xem xét bởi thạc sĩ / cấp cao, mặc dù có lẽ không nhiều như khi bạn còn là một thiếu niên.

Theo thời gian và việc giao các dự án thành công, cuối cùng bạn trở thành cấp cao. Ở cấp độ cao, bạn đã thành thạo mọi thứ được bao phủ trong khu vực của bạn, bao gồm toàn bộ quá trình phát triển và tất cả các công cụ và công nghệ có liên quan. Bạn được trao quyền để đưa ra các quyết định kỹ thuật quan trọng và dự kiến ​​sẽ cung cấp cái nhìn sâu sắc cho ban quản lý về quy trình phát triển phần mềm.

Vì vậy, dựa trên những hướng dẫn đó, bạn sẽ có thể nhìn vào một người hoặc một vị trí và xác định thùng nào trong ba thùng họ đặt vào.


6

Nó sẽ làm sôi sục sự mong đợi của các lập trình viên.

Nếu tôi là công ty tuyển dụng và tôi thuê một lập trình viên Entry Entry, tôi biết rằng người đó không biết gì và chúng tôi sẽ cho rằng anh ấy / cô ấy cần phải học mọi thứ. Nếu tôi thuê một người cấp cao, theo lý thuyết, họ sẽ tự túc, từ quan điểm kỹ thuật.


4

Điều này hoàn toàn phụ thuộc vào công ty. Nhưng các từ khá rõ ràng: cấp nhập cảnh là một người mới tham gia vào lĩnh vực này, cấp dưới là một người vượt quá cấp nhập cảnh và biết cách xung quanh một vài công nghệ ngôn ngữ. Cuối cùng là những người phụ trách dự án nhiều hơn và ngồi ở cấp cao hơn. Họ thường có thể ủy thác nhiều như họ mã.


Tôi hiểu điều này, nhưng tại thời điểm nào bạn "vượt cấp nhập cảnh" hoặc "ngoài cấp cơ sở"? Nếu bạn luôn luôn học hỏi thì mỗi ngày bạn vượt xa những gì bạn đã làm ngày trước.
JD Isaacks

Nhập cảnh là dễ dàng, nhưng tôi đang tìm kiếm nhiều ví dụ về kinh nghiệm / kiến ​​thức có thể đề xuất cơ sở hoặc cấp cao.
JD Isaacks

Giống như tôi đã nói điều này phụ thuộc vào công ty, bối cảnh của công nghệ / ngôn ngữ được đề cập và cụ thể hơn là vấn đề quan điểm trừ khi bạn đang nói về chức danh công việc chính thức. Tôi không nghĩ mình sẽ tự coi mình là một chuyên gia trong bất kỳ ngôn ngữ nào trừ khi tôi tự viết ra thứ ngu ngốc đó.
Chris

Ngoài ra, nếu bạn ở một công ty, hãy xem các nhà phát triển jr, sr và so sánh / đối chiếu chính bạn với họ. Đây là một thước đo tốt trong bối cảnh cụ thể cho công ty nói.
Chris

4

Như hầu hết đã nói, nó thay đổi từ công ty này sang công ty khác, và công việc này sang công việc khác.

Chẳng hạn, tôi đã từng làm việc tại một công ty coi bất kỳ ai làm việc ở đó hơn 5 năm là "Kỹ sư phần mềm cao cấp". Ở một thái cực khác, một nơi khác tôi làm việc có định nghĩa rất nghiêm ngặt (và thang lương liên quan).

Một số nơi có thể coi "cấp nhập cảnh" và "cấp dưới" có nghĩa tương tự.

Nó có thể thay đổi dựa trên nhiều năm kinh nghiệm, kiến ​​thức chung, kiến ​​thức cụ thể (nghĩa là biết các tính năng của một ngôn ngữ nhất định), kinh nghiệm quản lý và / hoặc lãnh đạo, tất cả các kết hợp của chúng, và chắc chắn nhiều hơn nữa.


3

Tôi sẽ đi với câu trả lời thực sự đơn giản ở đây: các nhà phát triển cao cấp (nói chung) là những người có thể nhìn thấy rừng cây. Họ nghĩ vượt ra ngoài vấn đề trước mắt và hiểu được những thay đổi kiến ​​trúc có thể hoặc nên xảy ra do sửa chữa vấn đề mà họ đang phải đối mặt.

Hầu hết các công ty phần mềm tôi từng thấy đều có những người mới bắt đầu làm mã hóa hàng ngày trong khi các nhà phát triển cấp cao đang giám sát những gì người mới đang làm và giải quyết các vấn đề thực sự xấu xí, gai góc.

Rõ ràng đây chỉ là ý kiến ​​của tôi, và không phải là một quy tắc khó và nhanh. YMMV.


2

Đơn giản chỉ cần đặt và từ các quan sát cá nhân được tìm thấy trên các trang web đăng việc và chỉ liên quan đến mức độ kinh nghiệm.

Entry = Công việc mới của bạn có lẽ là công việc đầu tiên của bạn.

Junior = Tốt của bạn nhưng không được coi là tốt nhất, bạn cũng thường có ít hơn 5 năm và hơn 2 năm kinh nghiệm.

Senior = Bạn được cho là giỏi nhất và có hơn 5 năm kinh nghiệm.


Bạn đã bỏ lỡ một trung gian.
Neolisk
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.