Thursday, November 24, 2011

소소한 개발 이야기들...

내가 지금 참여하고 있는 C 프로젝트는
이제 개발 단계가 끝나고 디버깅 및 테스트를 하는 단계이다.


물론 내가 만든 리퀘스트 서비스 로직은 모든 불만 없이 잘 돌아갔어야 하는데
나도 모르는 실수가 하나 둘 씩 발견되고 있었다.

모든건 linq 관련된 것들인데 모두 collection에서 grouping 하는데 발생되는 문제들이었다.
하나는 group 된 값들에 대해 datetime 순으로 order by를 거는데 잘 안되서 살펴보니
어느 group의 값에 대해 order by 를 걸어야 하는지 판단하지 못해 발생한 문제.
하나는 역시 group 된 값들에 대해 count 순으로 order by를 거는데
마찬가지의 문제로 클라이언트 쪽에 통계 그래프가 제대로 나오지 않는 거였다.

누구나 할 수 있는 실수 이지만
이런게 발견되고 수정될 수 있는 경험을 쌓는다는 것이
어찌 보면 더 중요한 것 같다.

최근 개발자를 부탁해라는 한 한국계 여성 개발자의 책을 읽었는데
여러 가지 면에서 고개를 끄덕이게 만드는 내용을 봤다.
스킬이 뛰어나고 연차가 많아도 결국 해당 업무에 대한 경험이 부족하다면 경력직으로 살아가기란 어려운 일이라고...

아직까진 나도 젊다고 생각하고 있고
최선방에서 여러 가지 개발 경험을 가진다는 건
중요한 일인 것 같다.

Thursday, November 3, 2011

일 하면서 즐거움을 느낄 때란

요즘 다른 프로젝트에 서포트 하는 개념으로 참여를 하고 있다.
간단히 정리를 하자면
- 어떤 로그가 담긴 DB 내용을
- 웹에서 리퀘스트를 주면 JSon 형태로 데이터를 주게 되어 있고
- 그 데이터를 수집하여 통계 자료를 보여주는
일을 하고 있다.

여기서 내가 맡고 있는 일은 웹에 리퀘스트를 주고 받는 데이터를
collection으로 의미 있는 데이터로 변형해서 client 쪽에 넘겨주는 부분을 맡고 있다.

처음엔 관련 기술 정보가 부족하여
이것도 해보고 저것도 해보고 하다가
차츰 핵심 로직들이 완성되어 가고
그걸 또 조금씩 general 하게 만들어 가는 과정에서
희열을 느낀다고 해야 하나
내 스스로도 잘 만들고 있다는 느낌을 받으면서 개발을 해 나갈때에
즐거움을 느끼는 것 같다.

가끔씩 이런 일들이 생기면 즐겁게 일 할수 있을 텐데
이런 일들이 항상 일어나는 것도 아니고
또 버그 수정하고 개선 사항 추가해서 하는 일을 추가적으로 하다 보면
어느새 즐거움은 그냥 일을 위한 일을 하는 것으로 바뀌게 될 지도 모른다.

하지만 지금은 지금 상태로 즐기는게 좋은 것 같다.
잘 짜여진 class 구조,
중복 작업을 하지 않게 도와주는 interface 상속
general 하게 만들 수 있는 template 함수
collection에서 의미 있는 데이터를 뽑아내는 linq 코드들
client 쪽에 이벤트를 전달 하기 위한 delegate 구조 등등
또다른 개발 스킬들을 얻게 되어서 좋은 것 같다.
정말로.