Quora에 실린 Why is it so hard for so many software engineers to get high-quality work experience?라는 질문에 대한 대답 중 흥미로운 내용이 있어 소개한다.
Drew Eckhardt가 제시한 답은 다음과 같다.
- 대다수 유용한 상업적인 소프트웨어 프로젝트는 통합 연습이다
- 대다수 직업은 기존 소프트웨어를 유지보수하는 작업과 관련이 있으므로, 대다수 엔지니어는 동작을 개선하는 새로운 소프트웨어 프로젝트를 반복적으로 구축하지 못하며, 따라서 다른 사람을 위해 고품질 소프트웨어를 구축하는 충분한 연습 기회를 얻지 못한다.
- 새로운 소프트웨어를 구축하는 대다수 직업은 처음 개발 단계부터 거쳐온 오랜 역사를 배우기 위해 동료 작업자와 함께 경험을 공유하지 못하므로 동일한 실수를 반복한다. 폭발적으로 엔지니어가 증가하고 있지만, 더 많은 엔지니어들이 경험이 부족한 상태이며, 잠재적인 멘토로부터 충분한 경험을 얻기 앞서 비 엔지니어 부문으로 옮겨가버린다(예: 관리자).
- 평형 상태를 유지하기 위해 동일한 상태에서 상대적으로 오랜 기간 동안 일해온 엔지니어링 리더가 관리직으로 이동한다. 소프트웨어 프로세스를 만드는 경험이 부족해질 수 밖에 없다.
- 프로젝트에서 엔지니어링 기술을 유지하기 위한 현재 상태(1~4번 참조)로는 고품질 개발 경험을 제공하지 못한다.
- 경험이 풍부한 엔지니어가 성장 가능한 부문은 아주 제약된 상황이다. 구글에서 5% 정도, VMware에서 3%, 대다수 스타트업에서는 한 두 자리만 이 수준에 이른다.
고품질 개발 경험을 얻으려면 샌 프란시스코 베이 에어리어에 가서 시스템 소프트웨어를 개발해야 한다. 벤처 캐피탈 펀딩으로 인해 새로운 개발이 지속적으로 일어나고 있기 때문이다. 새로운 개발을 수행하는 직업이 많기 때문에 훌륭한 동료들과 실질적인 경험을 쌓을 수 있다.
EOB
댓글 없음:
댓글 쓰기