Monthly Archives: June 2011
SDEC2011 참관기 – 영어를 공부해야겠습니다.
6월 27, 28일 이틀 연속으로 경원대학교 비전타워에서 진행된 SDEC(Seoul Data Engineering Camp) 에 참여했습니다. NHN 과 정보과학회에서 주최한 대용량 데이터 처리에 관한 컨퍼런스인데, 첫날에는 이미 많이 알고 있던 내용들 때문에, 조금 심심했다면(그래도 모두 좋은 내용이었습니다.), 정말 중요한 내용들이 많았던 둘째날은, 영어가 관건이었습니다.
일단, 토익 시험도 바닥을 기고, 제대로 영어를 공부하지 않았던, 저로서는, 다양한 영어를 전혀 이해하지 못하겠더군요. 다시 한번 깨달았습니다. 일단 제 인생의 주적은 영어라는 거!!!
페이스북 엔지니어, CouchBase 의 엔지니어, Linked in( 링크드인 역시 굉장한 내부 기술력을 가지고 있습니다. SNS 하는 회사들 전부 -_- 괴물들입니다. ) 이렇게 큰 회사들에서도 많이 참여했는데, 개인적으로는 Heroku 에서 온 Keith Rarick의 BOF 세션이 가장 맘에 들었습니다. 기술적인 부분을 떠나서, 자신이 하고 있는 것에 대한 자신감!!!이 멋지더군요. 특히 제가 참여한 BOF 세션이 가장 사람들이 적게 참여해서 많은 얘기를 억지로라도 해야했는데요. 이전 세션에서 발표한 내용을 제가 못들었다고 다시 질문하니, 열정적으로 알려주더군요. 다만, 제가 잘 못알아들었다는!!!
사실 국내에서 이정도의 Quality 를 낼 수 있는 세미나는 개인적으로는 Platform Day 밖에 없는 듯 합니다. 실제 부딫쳐본 문제에 대해서 들고 나오고, 서로 논의하고, 이런 것을 느끼며, 참 즐거웠고 SDEC 을 준비해주신 분들에게 감사드리고 싶습니다.
그리고 무엇보다 -_-, 영어를 몰라서 잘 못알아듣는 케이스는 앞으로 없었으면 좋겠다라는 개인적인 바램이 있습니다.(영어 공부를 해야겠죠!!!) SDEC이 2012, 2013년 계속 진행되기를 바랍니다.
앞으로 어떻게 개발할 것인가?
최근에 실수를 여러번 하게 되었다. 특히 평가시즌에 실수가 겹친것이 슬프긴 하지만… 덕분에 앞으로 어떻게 개발해야 할 것인가에 대한 좋은 생각을 하게 되었다. (문제는 내가 시니어급 개발자라는 것 T.T 이제서야 이런 생각을 가지면 어떻하자는 건지…)
1. 먼저 Input 과 Output을 정의한다.
이번에 첫번째 실수중의 하나이다. 코드에 문제가 있었는데, Test Framework의 파싱 모듈의 오류로, 중간의 공백이 체크가 되지 않았다. 이로 인해, 실제로 눈에 보이는 결과가 동일했던것… 바이너리 체크를 했다면, 쉽게 찾을 수 있었을 텐데…
명확한 Input 과 Output 을 정의하여, 이에 대해서 원본과 비교하는 Framework 을 만든다. 이것은 Regression 테스로 이용한다. 이를 위해 Python Test Library를 정비해야 한다.
2. 전체 범위를 테스트 한다.
1번과 연결되는 내용이다. 빠지고 넘어간, 그리고 특정 기능이 적용된 유저, 그렇지 않은 유저군으로 나누어서 전체 케이스가 커버 되도록 테스트를 한다. 이는 물론, Test Framework 을 이용해서 할 수 있도록 해야 한다.
3. 코드 리뷰는 중간 중간 올릴 수 있도록 한다.
딱히 큰 해결책이 없어보이지만, 기능별 Commit의 경우, 그 범위가 크면, 다른 사람이 코드 리뷰를 할 수 없게 된다. 이번에도, 그런 일이 생겨서, 코드 리뷰가 되었지만, 부족할 수 밖에 없었다. 이를 위해서, 변경 사항을 중간 중간 올려서, 코드 리뷰를 받는 것이 좋을듯 하다.
4. 설계 리뷰를 중간 중간 한다.
이번에 실수한 것 중에, 기능 적인 문제는 없지만, 설계가 미진한 부분이 있었다. 중간 중간 다른 사람들과 리뷰를 했지만, 심도 있게 하지 못해, 장애에 Flexible 하지 못한 부분이 생겼다. 이는 충분히 리뷰했으면 초반에 해결할 수 있었을 듯 하다.
위의 4가지만 혼자서 지킬 수 있다면, 앞으로, 실수는 많이 줄어들 것이다. 확실히, 실수를 안 할 수 는 없다. 앞으로 당연히 많이 하겠지만, 위의 과정을 잘 지킨다면, 최소한 같은 실수들을 반복하는 것은 많이 줄일 수 있을 것 같다.
실수를 하는 것이 문제가 아니라, 이에 대해서 깨닮음을 가지지 못하는 것이 문제라고 생각하자. “Failure is an opportunity!” 라는 말 처럼, 실수나 실패에서도 발전할 수 있는 사람이 되자!.
파워포인트 블루스의 공개 강의를 듣고…
전날 밤을 샌 관계로… 집에 들어가는 중… “파워포인트 블루스” 의 김용석님께서, 한빛미디어에서 공개강의를 한다는 것을 기억해냈다.(사실 본건, 그 전날인데, 이래저래 바쁘고, 밤을 새는 바람에 까먹어 버린…), 집에 가서 잘 것인가, 아니면 공개강의를 들을 것인가? 굉장히 고민이 되었지만, 항상 스터디 PT나 발표 PT를 어떻게 만들 것인가에 대한 고민에 뭔가 도움이 되지 않을까 싶어서, 졸리는 것을 참고, 합정역의 한빛미디어를 찾아갔다.
최초의 5분의 짧은 동영상, 2시간의 강의, 사실 중간에 너무 피곤해서 잠시 눈이 감기긴 했지만, 그걸 스스로 쫓아낼 만큼 매력적인 강의였다. 프리젠테이션에서 가장 중요한 것은, 발표 방법이나, PT를 잘 만드는 것이 아니라, Contents 다. 그리고 그 Contents를 어떻게 배치할 것인가? 그러면서 어떻게 메시지를 전달할 것인가가 핵심이었던 것 같다.
그렇다면 이것을 기술적인 자료에는 어떻게 적용해야할까? 질문을 던졌지만, 그렇게 확 속이 풀릴정도의 답변을 얻지는 못했지만, 이건 나의 내공의 부족이니… , 그래도 요새 고민하던 것 중에 다시 생각의 화두를 가지게 되었다. 앞으로 나의 PT 가 어떻게 바뀔지는 모르겠지만, 일단 김용석님의 PT 자체도 상당히 잘 만들어져 있고, 이를 풀어가는 능력 자체도 상당히 뛰어나신 분이었다.
곧, 다음 책이 나오신다는데, 이것도 꽤 기대된다.
실력 부족을 느끼며…
최근에 내 실력이 굉장히 부족하다는 것을 느낀다. 경력은 이제 9년차임에 불구하고, 내가 과연 9년차 정도의 레벨인가에 대한 의문은 따로 지울 수가 없다. 아마 객관적인 눈으로 나를 평가한다면, 아마 지금의 내 나이 또래에서는 약간 포장해서 기본적인 실력은 된다고 생각한다. 그러나, 과연 내가 전체적인 부분에서 실력이 있는가? 시장에서 나를 팔 수 있는가? 라고 물어보면 대답하기 힘들다.
나 스스로는, 내 스스로의 발전에 투자를 하려고 노력하는 편이다. 방통대 대학원 수업도 듣고있고, 방통대 대학원 수업이나, 스터디를 하면서, 내 스스로의 약점은, 어느 정도 기본적인 부분까지는 이해를 하지만, 그 이상이나, 응용이 어렵다는 것이다. 한 7년정도 꾸준히 해온 주말 스터디나, 그 외의 학습들이, 넓은 분야를 커버를 할 수 는 있지만, 하나의 깊은 분야도 이루지 못했다는 부분…
그리고 과연 9년차의 실력에 맞는 경험이나, 문화, 철학을 가지고 있는가? 라고 물어보면, 또 대답하기가 힘들다. 최근에 같이 일하게 되신 분들을 보면, 나름 자신만의 철학을 가지고 계시다라는 생각이 든다. 그 덕분에도 많이 배우고 있긴 하지만…
물론, 지금 수준에서, 더 나아가기 위해서 어떤 교육을 받는다던가, 아니면, 뭘 공부하면 해결이 된다거나, 이럴 수준은 아니라는 것은 알고 있다. 단순히 책을 보고 이해하는 것이 아니라, 내가 뭔가를 책임져서 만들어낼 수 있는, 개발만이 아닌, Product를 낼 수 있는 수준이 되어야 하는데, 아직 그럴 실력이 안된다는 것!!!
최근에서야, 아, 이제 개발을 어떻게 해야 되겠구나라는 생각이 조금씩 들고 있다. 그러나 한 없이 부족하다는 것… 왜 이런게 필요한지… 어떻게 해야할지… 조금씩 눈에 보이고, 할 수 있겠구나라는 생각이 들고 있는데, 역시, 초급, 고급이 아닌 중급이 가장 힘들다는 것은… 쉽게 올라갈 수 도 없고, 올라가는 방법도 명확하지 않아서 그런게 아닐까라는 생각이 든다.