Entry Level / Jr / Sr 개발자의 차이점은 무엇입니까? [닫은]


198

제목과 지불 이외의 차이점은 무엇입니까?

  • 그들은 서로 다른 책임이 있습니다.

  • 그들은 얼마나 지식 / 경험이 있는가?

  • 개발자가이 기본 구조에서 적합한 위치를 결정하기위한 기본 측정 값은 무엇입니까?

답변:


341

이것은 다양하지만 프로그래머 유형을 구별 할 수있을 정도로 큰 장소에서 보는 방법입니다.

엔트리 레벨과 주니어는 같은 것입니다. 그들은 학교를 다니고 2 년 미만의 경력을 가지고 있습니다. 그들은 가장 복잡한 작업을 배정받으며 상당히 면밀히 감독해야합니다. 일반적으로 그들은 자신이 생각하는 것의 약 10 %를 알고 있습니다. 일반적으로 전체 개발주기를 거치지 않았으므로 선택할 기회가 주어지면 매우 순진한 선택을하는 경우가 많습니다. 슬프게도 많은 사람들이 실제로 요구 사항이 무엇인지 신경 쓰지 않고 자신의 방식으로 물건을 만들고 싶어합니다. 그들은 종종 디버깅 기술이 좋지 않습니다.

중급 수준은 많은 프로그래머가 떨어지는 곳입니다. 2 년 이상 경험이 있고 일반적으로 10 명 미만이지만, 일부는이 수준에서 전체 경력을 유지할 수 있습니다. 상대적으로 일상적인 작업에 할당되는 한 감독이 적은 작업 코드를 생성 할 수 있습니다. 일반적으로 심도있는 지식이 필요한 고급 디자인 또는 복잡한 작업이 아닙니다. 그러나 특히 선임 개발자가되기 위해 해당 영역에있을 때 응용 프로그램을 디자인해야 할 수도 있습니다. 유지 관리 작업이나 퍼즐에 집중할 수있는 작업에는 능숙하지만, 선임 개발자와 함께 일하거나 선임 승진을 준비하지 않는 한 일반적으로 응용 프로그램 전체를 고려하지는 않습니다. 그들은 일반적으로 문제 해결 및 디버깅의 적절한 작업을 수행 할 수 있지만 어려운 것을 얻으려면 실제로 slog해야합니다. 그들은 아직 발생하고있는 가능한 장소를 가리키는 문제의 패턴을 볼 수있는 충분한 경험이 없습니다. 그러나 그들은 그러한 기술을 습득하고 있으며 디버깅 도움을 요청할 필요가 거의 없습니다. 아마도 전체 개발주기를 한 번 이상 겪었을 수 있으며 설계 문제의 결과를 보았으며 향후이를 피하는 방법을 배우고 있습니다. 일반적으로 액면가에서 요구 사항을 취하고 명백한 문제 나 격차가있는 경우에는이를 요구하지 않는 경향이 있습니다. 그들은 자신이 모르는 것을 알기에 충분히 배웠으며 그 지식을 얻기 시작했습니다. 그들은 프로그래밍 세계의 주역이며

상급자도이 질문을 할 필요조차 없습니다. 그들은 선택한 기술 스택의 전문가입니다. 어려운 과제 (아무도 해결 방법을 모르는 과제)가 주어지며 종종 설계 책임을받습니다. 그들은 종종 제품 배달에 대한 입증 된 실적을 가지고 있기 때문에 독립적으로 작동합니다. 그들은 주니어 및 중급 개발자들을 멘토링해야합니다. 종종 그들은 놀라운 문제 해결사입니다. 그들은 이전에도 같은 문제에 부딪 쳤으며 어디를 먼저보아야할지에 대한 좋은 아이디어를 가지고있었습니다. 노인들은 종종 직장 밖에서도 멘토링을합니다. 그들은 일반적으로 적어도 10 년의 경험을 가지고 있으며 거의 ​​항상 적어도 한 번의 죽음 행진을 겪었으며 어떤 것들을 피해야하는 이유를 정확히 알고 있습니다. 그들은 작동하는 제품을 배달하고 마감일을 맞추는 방법을 알고 있습니다. 그들은 어떤 모서리를자를 수 있고 어떤 모서리를 자르지 말아야하는지 알고 있습니다. 그들은 전문가 수준에서 최소한 하나 이상의 언어를 알고 있습니다. 그들은 많은 "핫 신기술"이 직장에 타격을 입히고 사라지는 것을 보았으므로, 다음 흥미로운 신 개발 툴을 위해 악 대차를 뛰어 넘는 데 다소 보수적 인 경향이 있습니다. Senior로 도약하지 않는 중급 개발자). 그들은 자신의 임무는 사용자가 원하는 도구를 사용하여 재미있는 도구를 사용하지 않고 작동하는 소프트웨어를 제공하는 것임을 이해합니다. 그들은 종종 그들이 일할 수있는 곳과 어떤 장소가 얼마나 나쁜지를 직접 보았 기 때문에 그들이 어디에서 일할 것인지 더 까다로워합니다. 그들은 가장 흥미로운 일을하는 곳을 찾습니다. 그들은 몇 달 밖에 안 갔더라도 다른 사람보다 회사의 제품에 대해 더 많이 알고 있습니다. 그들은 프로그래밍 지식 이상의 것이 필요하다는 것을 알고 있으며 지원하는 비즈니스 영역에 대한 지식을 얻는 데 능숙합니다. 그들은 종종 후배가 고려하지 않은 문제를 알고 있으며 중간체는 종종 그들이 지원하는 비즈니스 영역의 규제 및 법적 문제에 대해 생각하지 않습니다. 그들은 문제가 무엇인지 알고 평신도에게도 설명 할 수 있기 때문에 요구 사항을 푸시 할 수 있습니다.


2
Google 번역사가 "전체 개발자"를 사용하는 "중급 수준"에 대한 제목 (영어)이 있습니까? 그러나 그것은 가치있는 출처가 아닙니다 =)
Michel Ayres

23
훌륭하고 이야기 같은 설명. 나는 그것을 읽는 것을 즐겼다.
Saeed Neamati

1
이 설명에 감사드립니다. 나는 iOS 개발자 (비공식 교육 없음)에 대해 스스로 교육을 받았으며 사소한 기능 (예 : CRUD의 JSON, 일부 소셜 구성 요소, 좋은 디자인)을 갖춘 첫 번째 앱을 출시했습니다. 나는 훌륭한 프로그래머라고 생각하지 않지만 앱을 앞뒤로 작성하고 배송에 필요한 것을 이해했습니다. 나 같은 사람을 어디에 배치하겠습니까?
SamYoungNY

1
@NYCTechEngineer, 잘 스택 오버플로가 떠 오릅니다. 또한 로컬 사용자 그룹, 블로그, 기사 및 서적 작성.
HLGEM

1
@BrianHaak Thx-당신이하는 말이 흥미 롭습니다. 작년부터 저는 전보다 훨씬 더 큰 프로젝트를 진행했습니다. 몇 달 전에 작성한 코드를보고 "wtf? 누가 이것이 좋은 생각이라고 생각합니까?"라는 느낌을 받았습니다. :)-이 프로젝트를 작은 커널에서 쉽게 확장 할 수있는 프로젝트로 시작하고 컨텐츠를 추가하려는 개발자가 아닌 사람들도 수용 할 수있게되면서 더 높은 수준의 구조에 대해 생각하게되었습니다. 숙련 된 프로그래머와 페어링하면 많은 opps가 누락되었음을 알 수 있습니다. 추상화를 사용합니다. 또한 네임 스페이스에 문제가 있습니다.
SamYoungNY

43

엔트리 레벨-명시적인 지침을 제공하고, 수행하는 모든 것을 점검하고, 디자인 책임이 거의 없거나 전혀 없으며, 분석 책임이 없어야합니다.

주니어-덜 명확한 지시, 적은 점검, 약간의 설계 및 분석 책임; 엔트리 레벨 사람들이 컴파일러를 찾고 저장소를 사용하도록 도와줍니다.

선임-주요 설계 및 분석 책임, 자신에 대한 감독, 점검 / 점검 없음, 지시 사항 없음 / 없음; 중급 수준의 사람들이 분석 및 디자인 기술을 배우고 향상시키는 데 도움


20
수석 레벨의 "체크 / 지침 없음"에 전적으로 동의한다는 사실을 제외하고는 좋았습니다. 팀에서 일하거나 팀과 함께 일하지 않는 한 아무도 섬이되어서는 안됩니다.
Sane Wonko

@WonkotheSane 우리는 codeReview 또는 pull 요청없이 코드를 오류와 병합하는 사람이 있습니다. 어디에서나 관찰 패턴을 사용하는 것 외에 앱 아키텍처에 대해서는 많이 논의하지 않습니다. 모든 결정을 혼자서 만들어 새로운 것에 적응하지 못하도록 합니다. 모든 그가 때문 입니다 섬 자신. 그는 안에 있지 않습니다. 그는 입니다 섬 :(

16

실제로, 당신이 일한 시간이 얼마 남지 않았다고 생각합니다. 10 년의 경력이있는 경우 수석 개발자이며, 졸업생이라면 아마도 엔트리 레벨 일 것입니다. 나는 코딩을 거의 할 수 없었고 그들이 무엇을하고 있는지 실제로 몰랐던 많은 '노인'개발자와 환상적이었던 많은 주니어 개발자를 보았습니다.


7
이것은 내 경험을 반영합니다. "선배"는 회사와의 시간을 의미하며 일반적으로 다른 것은 없습니다. 기술은 하나의 iota를 고려하지 않습니다. 나는 시행 착오 개발 이외의 소프트웨어에 대해 전혀 알지 못했지만 5 년 이상 회사에 있었거나 처음으로 고용 된 프로그래머였던 많은 "고급"개발자 (및 해당 문제의 관리자)와 함께 일했습니다. 장소가 시작되었고 임기 때문에 승진했습니다.
웨인 몰리나

8

나는 구식 장인의 견습생, 여행사 및 석사 슬롯이 엔트리 레벨, 주니어 (또는 접두사 없음) 및 노인을 위해이 슬롯에 잘 맞는다고 생각합니다.

누군가의 엔트리 레벨에는 심각한 결과가없는 비교적 간단한 작업이 주어지며 그들의 작업은 주니어 또는 시니어에 의해 점검됩니다. 시간이 지남에 따라 그들은 더 많은 책임을지고 더 복잡한 과제를 겪으며 그 과정에서 밧줄을 배우게됩니다.

주니어 (또는 제목 / 설명에서 "엔트리 레벨"/ "주니어"제거)에서 견습 과정을 마치고 각 주요 영역에 빠져 들어 회사의 주요 개발 영역을 다루었습니다. 그들 각각에 익숙합니다. 이제 견습생에게 안내와 의견을 제공하는 데 도움이되지만, 마스터 / 시니어는 자신의 작업을 여전히 검토하지만, 주니어 때만 큼은 아닙니다.

시간이 지남에 따라 성공적인 프로젝트를 제공하면 결국 상급자가됩니다. 상급 수준에서는 전체 개발 프로세스와 관련된 모든 도구와 기술을 포함하여 해당 지역에서 다루는 모든 것을 마스터했습니다. 중요한 기술 결정을 내릴 권한이 있으며 소프트웨어 개발 프로세스에 대한 관리에 대한 통찰력을 제공해야합니다.

따라서 이러한 지침이 제공되면 사람이나 위치를보고 3 개의 쓰레기통 중 어떤 쓰레기통을 넣을 수 있는지 결정해야합니다.


6

프로그래머에 대한 회사의 기대에 부응 할 것입니다.

내가 채용 회사이고 엔트리 레벨 프로그래머를 고용하는 경우, 그 사람은 아무것도 알지 못한다는 것을 알고 있으며 우리는 모든 것을 배울 필요가 있다고 가정합니다. 이론 상으로는 상급 수준의 직원을 고용하면 기술적 인 관점에서 자급 자족 할 것입니다.


4

이것은 회사에 따라 다릅니다. 그러나 단어는 매우 분명합니다. 엔트리 레벨은 필드에 들어가는 사람이고, 주니어는 엔트리 레벨을 넘어서는 사람이며 몇 가지 언어 기술에 대해 잘 알고 있습니다. 마지막으로 수석은 프로젝트를 더 책임지고 더 높은 자리에 앉아있는 사람들입니다. 일반적으로 코딩하는만큼 위임 할 수 있습니다.


나는 이것을 얻는다. 그러나 당신은 어느 시점에서 "입학 레벨 너머"또는 "주니어 너머"입니까? 당신이 항상 배우고 있다면 매일 당신은 당신이 전날의 것 이상입니다.
JD Isaacks

입학 레벨은 쉽지만 주니어 나 시니어에게 제안 할 경험 / 지식의 예를 더 많이 찾고 있습니다.
JD Isaacks

내가 말했듯이 이것은 회사, 문제의 기술 / 언어의 맥락, 더 구체적으로는 공식 직책에 대해 이야기하지 않는 한 의견에 달려 있습니다. 나는 내가 굳이 글을 쓰지 않으면 내가 어떤 언어로도 전문가라고 생각하지 않는다.
Chris

또한 회사에 있다면 jr, sr 개발자를보고 자신과 비교 / 대조하십시오. 이것은 해당 회사의 상황에 맞는 좋은 계기입니다.
Chris

4

대부분이 말했듯이 회사마다, 직업마다 다릅니다.

예를 들어, 저는 5 년 이상 그곳에서 "시니어 소프트웨어 엔지니어"로 일한 사람을 고려한 회사에서 일한 적이 있습니다. 다른 극단적 인 경우, 내가 일한 또 다른 장소는 매우 엄격한 정의 (및 관련 급여 규모)를 가졌습니다 .

"입장 수준"과 "주니어"가 같은 것을 의미하는 곳도 있습니다.

수년간의 경험, 일반적인 지식, 특정 지식 (즉, 특정 언어의 특징을 알고 있음), 관리 및 / 또는 리더십 경험, 이들의 모든 조합 및 훨씬 더 많은 내용에 따라 달라질 수 있습니다.


3

여기에 간단한 대답을하겠습니다. 고위 개발자 (일반적으로)는 나무의 숲을 볼 수있는 사람들입니다. 그들은 정면에서 바로 문제를 넘어 생각하고 직면 한 문제를 해결 한 결과 아키텍처 변경이 무엇을해야하는지 이해해야합니다.

내가 본 대부분의 소프트웨어 회사는 엔트리 레벨의 사람들이 매일 코딩을하고있는 반면, 선임 개발자들은 새로운 사람들이하는 일을 감독하고 정말 못생긴 가시적 인 문제를 해결합니다.

분명히 이것은 단지 내 의견이며 단단하고 빠른 규칙이 아닙니다. YMMV.


2

구인 게시 사이트에서 발견 된 경험과 관련된 개인 관찰 내용을 간단히 입력하고 확인하십시오.

출품작 = 아마도 새로운 직업 일 것입니다.

Junior = 당신의 선한 것이지만 최고가되어야하는 것은 아니며, 보통 5 년 미만, 2 년 이상의 경험이 있습니다.

시니어 = 당신은 최고가되어야하며 5 년 이상의 경험이 있습니다.


중간체를 놓쳤습니다.
Neolisk
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.