'조엘 스폴스키'에 해당되는 글 1건

  1. 2008.02.14 똑똑하고 100배 일 잘하는 개발자 모시기 4
사용자 삽입 이미지














똑똑하고 100배 일 잘하는 개발자 모시기
조엘 스폴스키 저/이석중 역 | 위키북스 | 2007년 09월

원제 : Smart and Gets Things Done : Joel Spolsky's Concise Guide to Finding the Best Technical Talent


조엘 스폴스키라는 이름 값과 친구의 블로그 서평을 보고 이 책을 사게 되었다.
작년 가을 쯤, 특강을 앞두고 있었기 때문에 적절한 이야기 거리가 될 거란 기대도 함께 있었다.

책 겉면에는 "조엘 온 소프트웨어 시즌 2"라고 써 있는데,
사실 원래 "조엘 온 소프트웨어" 책과는 성격이 다른 듯 하다.
(만약 그 정도의 깊이를 기대 했다가는 실망하는 사람도 있을 것 같으니 참고 하시길.)
게다가 그 책과 출판사도 다르고, 약간(혹은 많이) 상업적인 문구이기도 한데,
그래도 양심은 있는 지, 글자는 좀 작게 썼다.
아무튼 이것 때문에 일부 까대는 사람도 있긴 한데, 나는 그다지 관심 없다.

이 책의 주제는 "좋은 인재를 뽑는 방법"이지만
한편으로는 "사람들이 일하고 싶은 일터"이기도 하다.

특히 개발자들이 진정으로 원하는 사소한 것들에 대해서 이야기 하는데
개발자를 고용하는 사람 입장에서는 모르고 있을 가능성이 큰 것들도 꽤나 있다.
조엘식 인재 모시기는 다소 파격적이기도 해서
우리나라의 열악한 소프트웨어 환경에서는 함부로 따라하기 힘든 면이 많다.
하지만 그만큼 개념을 달리 하지 않으면 실재로 훌륭한 인재를 구하기도 힘든 현실이다.

개발자에게 독방을 주거나 최고급 책상, 의자, 모니터 등을 제공하기는 힘들겠지만
빵빵한 pc 와 정품 소프트웨어는 최소한 지급해 주어야 한다는 것에는 깊이 동의한다.
나도 입사 후 무려 2년 동안 부팅이 10~20 분이나 걸리고
틈틈히 급사망하는 pc를 사용했는데, 그 짜증은 이루 말 할 수 없는 것이었다.

작업이 더뎌질 뿐만 아니라 데이터를 날리기도 하고,
부팅이나 다른 프로그램이 실행되는데 기다리는 시간은 온갖 스트레스를 불러온다.
새 pc를 제공하는 데 불과 몇 십만원이면 되지만 그 동안 시간을 지체하면서 손해 본 것은
내 일당의 십수배 이상은 되지 않았을까 싶다.
당연히 손익을 따지면 어마어마한 손해이다.


내가 있는 회사는 엔지니어를 뽑는데 눈높기로 소문난 회사이기도 하다.
내가 봐도 딱 그런 느낌이 든다.
하긴 사람을 뽑는데 신중한 것은 어떤 면에서는 장점이다.
대졸 신입 사원을 잘 뽑지 않는데 거기엔 그럴만한 이유가 있다.
대졸 신입은 딱히 실력을 입증할 만한 데이터가 없다.
만약 학교를 다니면서 오랫동안 파트타임 잡을 가졌다거나 ACM 대회 같은 데서 입상한다거나
소프트웨어 대회에 출품하여 입상한 경험등이 있으면 좋겠지만
사실 그런 인재는 드물 뿐만 아니라 우리 회사에 지원하지도 않는다 -_-;
실재로는 어떨 지 모르지만 고용자의 입장에서는 대게 고만고만해 보이는 것도 사실일 터
그래서 모두 비슷비슷해 보이는 지원자들 가운데, 우열을 가릴 수도 없고
딱히 뽑을 사람도, 떨어트릴 사람도 없는 상황이 되어버린다.
결론은 다 뽑을 순 없으니, 다 떨어트린다...

훌륭한 사람을 뽑는 것 보다 엉뚱한 인재를 뽑지 않는 것이 더 중요하다는 것에
매우 충실한 인재 채용 정책이다.
조엘도 이 점에 대해서는 매우 중요하게 언급하고 있다.
그나마 규모가 있는 회사엔 어쩌다 괜찮은 인재가 지원하겠지만
20~30명 이하 크기 회사라면 아마도 처음부터 뛰어난 개발자를 신입으로 뽑는 건 정말 불가능 하다.
어쨌든 그래서 발전은 더뎌지고 악순환은 반복된다.
결국 고리를 끊는 것은 개념을 달리하는 인재 채용 정책이 될 지도 모른다.

어쩌면 사람을 뽑는 입장에서도 과감히 지르는 쪽이 오히려 남는 장사가 될 지 모르긴 하다만,
말이 쉽지 그만한 깡을 가진 사람은 드물 것이다.
어쨌든 이건 대단히 어려운 문제이다.


책의 마지막 부분에는 효과적인 면접 방법에 대해 얘기 하고 있는데,
그 가운데 가장 공감하는 것은 코딩 테스트이다.
간단히 재귀(recurse)나 포인터에 관한 문제를 풀게 하는 것은 매우 효과적일 거란 생각이 든다.

몇 년 전 아는 사람이 있는 곳에서 학부 병역특례원을 뽑으면서 면접 때,
linked list 와 stack 등을 시험 답안지에 손으로 직접 써서 구현하라는 문제를 냈는데,
나에게 채점을 해 달라고 해서 좀 당황한 적이 있었다.
내 개인적인 생각으론 이 정도는 좀 과한 것이 아닌가 생각되는데
그래도 규모가 작은 곳에서 병역특례로 인재를 구하는 것은 매우매우매우 중요한 기회이기 때문에
한편으로는 그러려니 하는 생각도 들었다.

내 생각엔 대졸 신입 정도의 수준이라면
아주 간단한 재귀 문제를 내는 것 만으로도 충분히 테스트를 할 수 있을 것 같다.
조엘이 말 하길, 사람의 실력에 따라 문제를 풀어 내는 속도가 천차 만별이라 하였는데
문제 자체의 난이도 뿐만 아니라 문제를 해결하는 속도나
문제를 풀어가는 과정을 봄으로써 그 사람의 실력을 충분히 가늠해 볼 수 있다고 본다.

만약 나에게 테스트 해 볼 수 있는 기회를 준다면
패턴 매칭이나 재귀 함수 호출을 써서 풀 수 있는 간단한 수학문제를 내 보겠다.
우리 회사에서도 전에 사람을 뽑으면서 factorial 따위의 문제들을 냈다고 했는데 괜찮은 시도라고 본다.

...


: