내가 지금 참여하고 있는 C 프로젝트는
이제 개발 단계가 끝나고 디버깅 및 테스트를 하는 단계이다.
물론 내가 만든 리퀘스트 서비스 로직은 모든 불만 없이 잘 돌아갔어야 하는데
나도 모르는 실수가 하나 둘 씩 발견되고 있었다.
모든건 linq 관련된 것들인데 모두 collection에서 grouping 하는데 발생되는 문제들이었다.
하나는 group 된 값들에 대해 datetime 순으로 order by를 거는데 잘 안되서 살펴보니
어느 group의 값에 대해 order by 를 걸어야 하는지 판단하지 못해 발생한 문제.
하나는 역시 group 된 값들에 대해 count 순으로 order by를 거는데
마찬가지의 문제로 클라이언트 쪽에 통계 그래프가 제대로 나오지 않는 거였다.
누구나 할 수 있는 실수 이지만
이런게 발견되고 수정될 수 있는 경험을 쌓는다는 것이
어찌 보면 더 중요한 것 같다.
최근 개발자를 부탁해라는 한 한국계 여성 개발자의 책을 읽었는데
여러 가지 면에서 고개를 끄덕이게 만드는 내용을 봤다.
스킬이 뛰어나고 연차가 많아도 결국 해당 업무에 대한 경험이 부족하다면 경력직으로 살아가기란 어려운 일이라고...
아직까진 나도 젊다고 생각하고 있고
최선방에서 여러 가지 개발 경험을 가진다는 건
중요한 일인 것 같다.
Thursday, November 24, 2011
Thursday, November 3, 2011
일 하면서 즐거움을 느낄 때란
요즘 다른 프로젝트에 서포트 하는 개념으로 참여를 하고 있다.
간단히 정리를 하자면
- 어떤 로그가 담긴 DB 내용을
- 웹에서 리퀘스트를 주면 JSon 형태로 데이터를 주게 되어 있고
- 그 데이터를 수집하여 통계 자료를 보여주는
일을 하고 있다.
여기서 내가 맡고 있는 일은 웹에 리퀘스트를 주고 받는 데이터를
collection으로 의미 있는 데이터로 변형해서 client 쪽에 넘겨주는 부분을 맡고 있다.
처음엔 관련 기술 정보가 부족하여
이것도 해보고 저것도 해보고 하다가
차츰 핵심 로직들이 완성되어 가고
그걸 또 조금씩 general 하게 만들어 가는 과정에서
희열을 느낀다고 해야 하나
내 스스로도 잘 만들고 있다는 느낌을 받으면서 개발을 해 나갈때에
즐거움을 느끼는 것 같다.
가끔씩 이런 일들이 생기면 즐겁게 일 할수 있을 텐데
이런 일들이 항상 일어나는 것도 아니고
또 버그 수정하고 개선 사항 추가해서 하는 일을 추가적으로 하다 보면
어느새 즐거움은 그냥 일을 위한 일을 하는 것으로 바뀌게 될 지도 모른다.
하지만 지금은 지금 상태로 즐기는게 좋은 것 같다.
잘 짜여진 class 구조,
중복 작업을 하지 않게 도와주는 interface 상속
general 하게 만들 수 있는 template 함수
collection에서 의미 있는 데이터를 뽑아내는 linq 코드들
client 쪽에 이벤트를 전달 하기 위한 delegate 구조 등등
또다른 개발 스킬들을 얻게 되어서 좋은 것 같다.
정말로.
간단히 정리를 하자면
- 어떤 로그가 담긴 DB 내용을
- 웹에서 리퀘스트를 주면 JSon 형태로 데이터를 주게 되어 있고
- 그 데이터를 수집하여 통계 자료를 보여주는
일을 하고 있다.
여기서 내가 맡고 있는 일은 웹에 리퀘스트를 주고 받는 데이터를
collection으로 의미 있는 데이터로 변형해서 client 쪽에 넘겨주는 부분을 맡고 있다.
처음엔 관련 기술 정보가 부족하여
이것도 해보고 저것도 해보고 하다가
차츰 핵심 로직들이 완성되어 가고
그걸 또 조금씩 general 하게 만들어 가는 과정에서
희열을 느낀다고 해야 하나
내 스스로도 잘 만들고 있다는 느낌을 받으면서 개발을 해 나갈때에
즐거움을 느끼는 것 같다.
가끔씩 이런 일들이 생기면 즐겁게 일 할수 있을 텐데
이런 일들이 항상 일어나는 것도 아니고
또 버그 수정하고 개선 사항 추가해서 하는 일을 추가적으로 하다 보면
어느새 즐거움은 그냥 일을 위한 일을 하는 것으로 바뀌게 될 지도 모른다.
하지만 지금은 지금 상태로 즐기는게 좋은 것 같다.
잘 짜여진 class 구조,
중복 작업을 하지 않게 도와주는 interface 상속
general 하게 만들 수 있는 template 함수
collection에서 의미 있는 데이터를 뽑아내는 linq 코드들
client 쪽에 이벤트를 전달 하기 위한 delegate 구조 등등
또다른 개발 스킬들을 얻게 되어서 좋은 것 같다.
정말로.
Wednesday, May 18, 2011
자신이 잘못 알고 있다는 걸 인정하기가 그렇게 어려운 일인가?
사건은
그리 오래전에 일어난 일이 아니었다.
이제 개발일은 별로 안하게 되고
시스템 안정화나 문제/장애 해결을 커뮤니케이션 일이 주가 되다 보니
내가 개발자로 일하고 있는지
그냥 기술지원 센터에 일하는 직원인지
스스로 물어보면서 허탈한 웃음을 짓고 있는게 한두번이 아니다.
문제는
이런 업무를 처리하고 있던 상황에서
트리플 모니터를 사용하는 사람이 장애를 일으킨다 해서
시스템 로그 확인한 다음에 상식 적인 수준에서 답변을 했다.
그래픽 카드 드라이버 이상일 확률이 높다라고...
어플리케이션 어디에도 모니터나 해상도를 세팅하는 로직이 있질 않는데
트리플 모니터를 사용하는 사용자만 실행이 안되는 건 이상하지 않은가?
그런데 그 장애를 접수하고 관리하시는 분이
그럴리 없다!
분명 프로그램에 문제가 있는 거니 코드 확인해 봐라!
라고 해서
있지도 않은 로직 찾느라 시간 허비하고
원격 지원도 하라고 해서 원격 지원도 했건만
결국 그 고객의 그래픽 카드 드라이버가 업데이트가 되지 않아 그랬던 것으로 밝혀졌다.
이건 뭐
어떤 기분이라 설명해야 할지 모르겠지만
어쨌든 문제가 해결되었다는 걸로 일적으로 엮인 관계에서는
더 이상 문제 삼아봤자 이득도 없고 불필요한 일이긴 하다.
하지만, 이 장애를 접수하신 분의 태도가 더 마음에 들지 않는다.
결국 내가 답변해준 범위 내에서 해결 가능한 걸
그 지랄(?)을 해 대서 해줬더니
수고했다라던가
내가 잘못 알고 있었으니 미안하다 라는 얘기는
단 한마디도 없었다.
그냥
갑과 을의 관계라는게 이런 것이라고 넘어가기에는
분명 인간과 인간 사이의 예의가 안되어 있는 것이라 생각한다.
아주 마음에 들지 않는다.
그 분은 진정
조금이라도 미안한 마음은 가지고 있기는 할까?
그리 오래전에 일어난 일이 아니었다.
이제 개발일은 별로 안하게 되고
시스템 안정화나 문제/장애 해결을 커뮤니케이션 일이 주가 되다 보니
내가 개발자로 일하고 있는지
그냥 기술지원 센터에 일하는 직원인지
스스로 물어보면서 허탈한 웃음을 짓고 있는게 한두번이 아니다.
문제는
이런 업무를 처리하고 있던 상황에서
트리플 모니터를 사용하는 사람이 장애를 일으킨다 해서
시스템 로그 확인한 다음에 상식 적인 수준에서 답변을 했다.
그래픽 카드 드라이버 이상일 확률이 높다라고...
어플리케이션 어디에도 모니터나 해상도를 세팅하는 로직이 있질 않는데
트리플 모니터를 사용하는 사용자만 실행이 안되는 건 이상하지 않은가?
그런데 그 장애를 접수하고 관리하시는 분이
그럴리 없다!
분명 프로그램에 문제가 있는 거니 코드 확인해 봐라!
라고 해서
있지도 않은 로직 찾느라 시간 허비하고
원격 지원도 하라고 해서 원격 지원도 했건만
결국 그 고객의 그래픽 카드 드라이버가 업데이트가 되지 않아 그랬던 것으로 밝혀졌다.
이건 뭐
어떤 기분이라 설명해야 할지 모르겠지만
어쨌든 문제가 해결되었다는 걸로 일적으로 엮인 관계에서는
더 이상 문제 삼아봤자 이득도 없고 불필요한 일이긴 하다.
하지만, 이 장애를 접수하신 분의 태도가 더 마음에 들지 않는다.
결국 내가 답변해준 범위 내에서 해결 가능한 걸
그 지랄(?)을 해 대서 해줬더니
수고했다라던가
내가 잘못 알고 있었으니 미안하다 라는 얘기는
단 한마디도 없었다.
그냥
갑과 을의 관계라는게 이런 것이라고 넘어가기에는
분명 인간과 인간 사이의 예의가 안되어 있는 것이라 생각한다.
아주 마음에 들지 않는다.
그 분은 진정
조금이라도 미안한 마음은 가지고 있기는 할까?
Subscribe to:
Posts (Atom)