posted by 희정냥★ 2006. 10. 3. 22:36
프로그래머 타입별 분류
프로그래머의 적성에 따라 다음과 같은 식으로 역할을 나누면 어떨까 하는 생각이 들었음

1. 옵티마이저
- 나는 1 fps 를 올릴때마다, 1kb 를 줄일 때마다 삶의 보람을 느낀다 타입
- 좋아하는 툴 : 프로파일러, 프로파일링 라이브러리, 메모리 할당 현황 뷰어
- 이 사람이 가장 좋아하는 책 : Efficient C++, Effective C++ 시리즈, 인텔 프로세서 최적화 cookbook...

2. 인터페이스 디자이너
- 나는 불필요한 dependency 를 없앨 때마다 삶의 보람을 느낀다 타입
- 쓰기 쉽고 편하게 된 라이브러리를 만드는 것이 임무
- 각 모듈의 인터페이스에서 작명이나 구성이 사용자 중심이 아니라 구현자 중심으로 되어있는 부분을 수정
- 회사에서 만든 라이브러리는 언제라도 외부에 돈받고 팔 수 있는 수준이어야 한다는 신조
- 이 사람이 가장 좋아하는 책 : John Lakos 의 Large scale C++ Developement

3. 구조 설계자
- mvc 구조로 딱딱 기능이 잘 분담되어 있는 프로그램을 보면 기분이 좋아지는 타입
- 인터페이스 디자이너와 유사한 부분이 있지만, 인터페이스 디자이너는 여러개의 모듈 사이에어의 관계에 주목하는 반면, 구조 설계자는 한 모듈 내에서의 기능 구현
- 버츄얼 함수를 언제 써야 하고, 언제 쓰지 말아야 할지에 대해서 동물적인 감각으로 디자인
- 이 사람이 가장 좋아하는 책 : 디자인 패턴, POSA 등...

4. 신기술 연구원
- 아 돈만 있으면 이것도 써보고 싶고 저것도 써보고 싶고, 몸에 좋은건 다 써보고 싶다 타입
- gamedev 나 flipcode 같은 곳에 소개된 외국산 신종 라이브러리를 검토하고 도입, 적용하는 일
- 그 밖에 논문이나 아티클로만 소개되었던 부분들을 직접 구현해서 적용하는 것도 포함
- 이 사람이 가장 좋아하는 책 : GPG 시리이즈...

5. 어플리케이션 프로그래머
- 나는 유저들이 직접 만지는 부분을 만드는 것이 좋다 타입
- 지식보다는 경험을 이용해서 성과를 내는 타입
- 이 사람이 좋아하는 책 : 책보다 해킹을 좋아함

6. 테스트 케이스 프로그래머
- 유닛 테스트 or 예제 프로그램을 만드는 담당자.
- 뉴비 개발자가 우선 현재 시스템을 이해하기 위해 필수로 거쳐야 할 코스
- 이 사람이 가장 봐야 하는 책 : Test Driven Development, Extreme Programming Installed

7. 툴 프로그래머
- 나는 툴을 만들어서 사람들의 노가다를 덜어주는 것에서 보람을 느낀다 타입
- 언젠가 나만의 3ds max 같은 툴과 sdk 같은 것을 만들어보고 싶다
- 그의 고객은 외부 유저가 아니라 내부 개발자
- 이 사람이 가장 좋아하는 문서 : 3DSMAX SDK 레퍼런스 매뉴얼

사람마다 7 가지중 딱 한가지에만 맞춰지는 것은 아니고 2가지 이상의 특징을 가질 수도 있음

당신의 타입은?

----

출처 : 김학규님 홈페이지.

댓글을 달아 주세요

  1. 정희록 2006.10.11 00:30  Addr  Edit/Del  Reply

    난 천재 프로그래머에다가 시스템엔지니어

  2. 박석우 2007.03.05 05:28  Addr  Edit/Del  Reply

    나는 신기술 연구원 ㅠㅠ
    이거 시른데.;;;