단시간에 어떤 일을 수행하는 코드를 짜는 능력은 어느 프로그래머나 크게 다르지 않을 꺼라는 생각을 해본다.
누구에게나 100에서 1000까지의 수의 합을 구하라. 라는 문제를 낸다면 모든 프로그래머가 아주 간단하게 루프 문을 돌려서 답을 낼 것이다. 결국 아주 세분화된 업무 단위에서의 프로그래머 능력 차이는 점점 작아진다. (물론 알고리즘 이라는 프로그래밍의 기법상의 문제가 존재하지만)
결국 중요한 것은 설계라는 것 같다.
프로젝트가 커질수록 필요한 만큼의 일을 하는 함수들을 만들어 적절하게 조합해서 더 큰일을 하게 만드는 설계능력이 더 중요해진다.
1. 잘 설계된 코드는 요구사항 변경에 잘 대처할수 있다.
2. 새로운 기능을 넣는 것도 기존의 조각을 조합해서 쉽게 만들수 있다.
3. 프로그래머 본인의 관리가 편해진다.
절실히, 기초 설계의 중요성을 느끼고 있는 요즘이다. 관리자는 프로그래머의 능력을 얼마나 단시간에 주어진 일을 해내느냐로 매긴다. 설계는 본인이 관리하여 성과로 평가 받을 일이다.