개발을 한지 이제 15년 정도 되어 가는 것 같다. 그러나 일정은 계산하는 것은 아직도 어렵다. 

개발 경력이 낮을 때에는 요청하는 기능이 개발 가능한지 불가능한지에 대해서도 예측이 안되기 때문에 일정을 계산하기 어려웠다. 경력이 쌓이고 나서는 요청받은 기능이 개발적으로 불가능하면 기획이라든지 요구사항을 조금씩 협상해 가면서 일이 가능하도록 유도하는 기술이 쌓이게 된다. 그런데 이 때도 일정 계산은 어렵다. 이 때부터 개발과정은 일정과 완성도 사이의 적절한 타협을 하게 된다. 경우에 따라서는 양보할 수 없는 완성도라는 것도 있다보니 (참고로 여기서 말하는 완성도 의미는 사용편의성, 유지편의성, UI 의 화려함, 적절한 속도, 프로그램의 안정성 등등을 모두 포함하는 말이다. ) 일정이 예상했던 일정보다 늘어나기도 한다. 그러나 반대로 일정이 줄어드는 일은 없다. 이 때는 완성도를 높이기 위해 작업하기 때문이다. 

완성도 문제 이외에도 많은 문제가 일정 계산을 어렵게 한다. 개발 과정에서 기획에서 고려하지 못했던 요소가 드러나기도 하고, 예전에 그냥 무시했던 코드가 갑자기 이거 이번 기회에 고쳐야겠는데 라는 마음이 생기기도 하고. 해당 기능을 구현하기 위해서는 특정 라이브러리의 버전업이 필요할 것 같은데, 그러면 기존에 잘 동작했던 것이 문제가 생기기도 하고. 갑자기 다른 업무 때문에 회의가 잡혀서 개발 시간을 까먹기도 하고. 등등의 문제로 일정 계산이 아직도 나에게는 어렵기만 하다.