2015년 5월 27일 수요일

훌륭한 프로그래머가 더 훌륭해지기 위한 방법 - 4단계

전문적인 개발자가 될수 있도록 노력한다.

훌륭한 프로그래머는 더 훌륭해지기 위한 방법을 지속적으로 찾는다. 우리 회사와 다른 회사에서는 다음과 같은 전문적인 개발 단계들을 고려한다.


1단계 초보자란 한가지 언어의 기본적인 기능들을 사용할 수 있는 프로그래머를 말한다. 초보자는 클래스와 루틴, 루프, 조건문을 작성할 수 있으며 해당 언어의 많은 기능들을 사용할 수 있다.

2단계 입문 초보 단계를 넘어온 중급 수준의 프로그래머는 여러 언어의 기본적인 기능들을 사용할 수 있으며 적어도 한 가지 언어를 능숙하게 다룬다.

3단계 유능한 프로그래머는 한 가지 언어나 환경 또는 둘 다에 전문적 기술을 갖고 있다. 이 단계에 있는 프로그래머는 J2EE의 모든 복잡한 부분들을 알고 있거나 Annotated C++ Reference Manual을 암기하고 있을 것이다. 이 단계에 있는 프로그래머들은 회사에서 중요한 위치에 있게 되는데, 많은 개발자들이 이 단계를 넘어서질 못한다.

4단계 리더는 3단계 프로그래머에 대한 전문적인 지식을 갖고 있다. 그리고 프로그램에서 컴퓨터와의 의사 소통은 오직 15%뿐이며 85%가 사람과의 의사 소통임을 알고 있다. 일반적인 프로그래머는 30% 정도만 혼자서 일한다(McCue 1978). 심지어는 그보다 더 적은 시간을 컴퓨터와 작업하는 데 보낸다. 전문가는 기계보다는 사람을 위해서 코드를 작성한다. 진정한 전문가 수준의 프로그래머는 보석처럼 명확한 코드를 작성하며 문서화한다. 그들은 한 줄의 주석으로 표현하여 이해할 수 있는 코드의 로직을 재작성하느라 머리를 쓰고 싶어하지 않는다.


"어떤 바보라도 자신의 실수에 대해서 정당성을 주장할 수 있으며 
대부분의 바보들이 그렇게 한다."   
- Dale Carnegie -


"전체 개발시간의 10%가 코드 작성의 90%를 차지하며, 
나머지 10%가 개발시간의 90%를 차지한다"  
- Tom Cargill -



출처: CODE COMPLETE SECONDE EDITION, Part7 소프트웨어 장인정신 p1126    - 스티브 맥코넬 저 -

댓글 없음:

댓글 쓰기