스태프 엔지니어가 되려면 ‘스태프 프로젝트’를 수행해야 한다는 것이 보편적인 생각인데요. 스태프 프로젝트를 해본 경험이 있나요? 있다면 어떤 프로젝트였나요?
누구도 명확하게 선을 그은 적도 없고 그렇다고 공식적인 요구 사항을 기록한 것도 아니지만 승진하려면 스태프 프로젝트를 해내야 한다는 것은 당연한 것이에요. 특히 여러 사람이 참여하는 정말 중요한 프로젝트에서 리더 역할을 경험하지 않고 스태프 엔지니어로 승진할 수 있다고는 생각하지 않습니다.
전 스태프 프로젝트에 참여했어요. 당시 드롭박스는 기본적으로 일반 사용자용 제품으로, 고객이 보유한 장비에 내려받아 설치해 사용하는 제품이었죠. 비즈니스용 드롭박스를 출시할 때 번거롭게 로그아웃과 로그인을 번갈아 하지 않고도 개인용 계정과 업무용 계정을 동시에 사용할 수 있게 해달라는 요구 사항이 있었어요. 처음 출시할 때는 출시일에 대한 압박이 컸던 데다 개인용 계정과 업무용 계정의 프로세스를 모두 실행하는 형태로 구현했어요. 제가 수행했던 스태프 프로젝트는 여러 사용자가 드롭박스 프로세스 하나를 공유하도록 개선하는 것이었어요. 문제는 프로젝트의 범위가 커널부터 사용자 인터페이스까지 이어진다는 점이었어요. 드롭박스 시스템을 구성하는 모든 계층을 전부 이해해야만 했죠. 처음에는 6개월 정도면 가능할 거라 생각했는데 결과적으로는 18개월이나 걸렸어요. 데스크톱 클라이언트 팀 인력이 한동안 이 프로젝트에 매달렸었죠.