오늘 문득 세바시에 공신으로 유명한 강성태씨의 발표영상을 본 후 이와 관련해서 공감가는 부분이 많아 글을 쓰고 싶어 졌다.


강성태씨가 10년간 공부 비법을 연구하던 중 하는 말이 학생들이 공부를 안한다는 것이다.

그 해결책으로 습관을 언급하였다. 런던이 어느 연구팀에서 연구결과 사람이 습관을 자기 몸에 베이게 하려면 최소 66일이라는 시간이 든다고 하더라.


이 애길 들으니 2010년도 내가 생각났다.

2007~ 2010년도 근무한 회사에서 팀장을 포함한 프로그래머들이 총 5명인 회사였다

팀장은 전국 올림피아드 전국 3위 출신의 천재였고, 나머지 팀원들도 모두 입사할때 2시간에 할당된 프로그램 코딩 시험을 통과해야지 입사 할수 있는 회사에서 난 운좋게 입사를 하였다(당시 문제 수준이 서든어택, 카트라이더, 메이플스토리 등으로 유명한 게임회사 넥슨과 비슷한 수준이었다). 난 대학교때 공모전 입상 경력도 있었고 대학교때 학부에서 프로그래밍 2년간 도는 족보도 남겼을정도로 남겼을 정도였고 학부에서 내 이름을 언급하면 교수님이든 학우들이든 프로그래밍 좀한다는 인식에 사실 자만을 하고 있었다. 하지만 그 회사에서는 그냥 평범한 수준이었다. 전부다 나 보다 잘하는 애들 같았다. 그중에 한명은 안철수 연구소를 거쳐서 현재는 넥슨 아메리카(미국 LA 지사)에 있을정도로 실력들이 좋았다. 그때 느겼던것은 잘하는 사람들의 공통점은 잘 할수 밖에 없는 습관을 가지고 있더라는 것이었다. 


난 그들에서 배운것은 단순히 단편적인 기술적인 지식보다 그들의 습관을 보고 배웠다. 그리고 그 습관을 내것으로 만드는데는 몇 개월이란 시간이 걸렸다. 강성태씨가 애기한 66일 얼추 비슷한 시간 인것 같다. (시간을 일일이 재어 보진 않았지만..) 


어떤 일이든지 그 쪽 분야에서 잘 할수 밖에 없는 습관 즉, 잘 할수 밖에 없는 DNA을(후천적인 노력으로 만든 습관) 가지게 된다면 그 사람은 잘 하는 사람이 될 수 밖에 없다고 되는것이 아닌가? 라고 생각해 본다.


하지만 사람이 습관을 바꾼다는것은 엄청난 고통이 따른다. 나도 어떤 계기가 있어서 그런 고통을 감당해 낼 수 있었던것 같다.


조엘 온 소프트웨어에서 프로그래머 한 명의 기술적인 차이가 23배라고 한다.

근데 어느 IT회사에 재직중에 어느 팀원으로 부터 이런 애길 들은 적이 있다.

아무리 노력해도 천재 개발자를 못이긴다고? 그 천재 개발자의 일하는 것을 잘 관찰 해 보길 바란다. 잘 할 수 밖에 없는 DNA을 가졌을 확율이 높을것이다. 


Posted by 모과이IT
,

갑자기 문득 이런 생각이 나서 정리를 하고 싶어 졌다.


먼저 공무원을 지망하는 사람은 현실적으로 대한민국의 월급을 받는 곳중에서 제일 안정적으로 일을 할수 있다는 사실에서 오랫 동안 안정적으로 보장이 되어지기 때문에 지원을 많이 한다.


그에 반해 공무원이 아니난 대기업, 중견기업, 벤처기업들에 가면 불안정적이라는 생각을 하게 된다.


위의 문제는 아주 단순한 논리로  안정적인 월급과 정년 보장 을 할수 있는 2가지 논리로 구분하여 


그렇다면 안정적인 월급과 정년 보장 꼭 공무원을 하여야지만 가능한것인가?


난 위의 2가지 논리에 몇가지 전체조건을 추가 시키면 한 직장은 아니더라도 한 직업으로 평생 직업을 가질수 있다고

감히 생각해 본다. 


안정적인 월급, 정년 보장의 전제 조건으로 자기가 좋아하는 분야이고 열정을 쏟아 있는 직업 그리고 올바른 방향을 설정해서 지속적으로 노력하는것 이라고 말하고 싶다.


한 예로 나를 예를 들고 싶다.


나는 프로그래머로 경력이 7년이다. 프로그래머란 새로운 기술 습득을 위해서 부단히 노력해야 하는 직업이다. 프로그래머가 좋아 하지 않으면 중간에 다른 길을 찾는 사람들 많이 보았다. 이쪽은 좋아 하지 않으면 도퇴 되어진다.


현재 프로그램은 스마트폰을 시작으로 더욱더 다양한 디바이스들이 나오기때문에 기존에 어떤 언어를 기술을 가지고 우려 먹던 시절은 무의미해 졌고 지속적으로 공부하고 습득해서 프로그램을 만들어야한다. 


지속적으로 공부해서 습득하려면 에너지가 엄청나게 소비되는 활동이다. 지속적으로 공부해도 지치지 않으려면 본인이 좋아해야지 감당을 할수가 있다.  좋아하지 않으면 쉽게 지치고 힘들어서 포기한다. 그리고 변화를 두려워 하게 된다. 변화를 해야지 발전을 할수 있고 새로운 지식을 습득을 하여 적용을 하여 현재의 트렌드를 대응 하면서 살아 갈수 있다. 현재 나이가 35살이고 경력 7년이지만 아직 이 바닥에서 취업 잘 되는 편이다. 


내가 30살 전에 IT 프로그래머에 대한 부정적인 글들을을 너무 나도 많이 보아 왔다. 정년이 35살 이라는둥 40살에 치킨집 차려야 하나는둥.... 실제로 해보니 본인만 좋아하면 얼마든지 그 정년 35살 치킨집 40살 창업은 뛰어 넘을수 있을거 같다는 생각이든다. 어디까지나 본인의 결정인거 같더라. 취업을 하다보면 현재의 기업에서 요구하는 스킬이 있다. 그 요구하는 스킬에 맞추어 주면 다시한번 프로그래머 생명이 연장되듯이 본인이 좋아하고 열정을 가지고 변화를 하면 공무원 못지 않는 평생 직업이 될수 있는것이 IT 프로그래머인거 같다.


사실 난 공무원이 좋다 그래도 사실 난 피부로 와 닫지 않는다. 나는 내 일이 좋고 나는 꿈이 있기 때문에

그 꿈을 이루기 위해서 아직도 진행형이기 때문이다. 한 1/3 아니 중간쯤 왔다고 생각되기도한다. 아직 갈길이 멀기

때문일까?




'모과이 > MoGuWai's Mind' 카테고리의 다른 글

개발자에게 습관이란...  (0) 2017.10.03
Microsoft MVP 되는 법..  (0) 2010.11.08
훌륭한 프로그래머란  (0) 2010.09.27
프로그래머가 언어를 대하는 자세  (0) 2010.09.27
개발자에게 가장 두려운 것  (0) 2010.09.27
Posted by 모과이IT
,
Microsoft MVP 공식 홈페이지 둘러보기

우석님의 이글루에서 MVP Summit 등록시에 받는 배지 라는 글을 읽고 생각이 나서 몇자 끄적끄적여 본다.. 자주 받게되는 질문에 대한 정리겸 해서..

작년에 이어 올해도 잘하면, Outstanding MVP에 선정되어 Microsoft MVP Summit에 항공료도 지원받으며 다녀올 수 있을 것도 같기는 한데 올해는 못가게 되어 난 등록을 하지 않았다.. 작년처럼 2월에 했으면 다녀왔을 텐데, 하필 4월에 하는 바람에 울 아가가 그때쯤 세상에 나오는지라 못가게 되었다.. 언제 태어날지 모르므로 5분대기조 해야 한다.. 흐흐..
빌게이츠 얼굴 보느라 울 아가 태어나는 모습을 못보게 될 수는 없지 않은가..

Microsoft MVP가 되면 각종 혜택을 많이 받는데, 가장 좋은 것은 일반인들은 얻기 힘든 Microsoft와 제품에 관한 정보들을 보다 빠르게 많이 얻을 수 있다는 점이다.. 물론, 다른 물질적인 혜택들도 많다.. MSDN 유니버설 1년 가입도 시켜주고 (MS의 모든 제품을 정품으로 죄다 사용할 수 있으니 쥑인다..), 그외의 제품들도 기념품 격으로 많이 준다.. (마우스, 키보드, 조이스틱, 게임패트, 무선 네트워크 베이스, 무선 랜카드, 시계, 볼펜, 가방, 옷 등등 현재 내 방은 온통 Microsoft 로고가 새겨진 것들로 가득하다..) 물론, 매년 본사에서 열리는 Summit에 참가해 MS 캠퍼스 구경도 하고 유명한 MS 직원들도 직접 보고 이야기 나눌 수 있는 것도 좋은 점 중에 하나다.. MS 제품의 소스코드도 일부 MVP들에게 공개되기도 한다..

그럼 이런 Microsoft의 MVP 자격을 얻는 방법은 여러가지가 있는데..
1. Microsoft 기술에 대한 지식과 경험이 탁월한 경우
2. Microsoft 기술에 관한 저서, 커뮤니티 운영 등의 업적이 탁월한 경우
3. Microsoft 커뮤니티에 대한 공헌이 탁월한 경우

나를 포함한 많은 사람들이 가장 쉽게 접근할 수 있는 방법이 3번이 아닌가 싶다.. Microsoft의 커뮤니티란 Microsoft Public Newsgroup을 말한다..

접속방법과 간단한 사용법은 여기를 참조하면 된다.. 사실 내가 이 커뮤니티에 탁월한 공헌을 했다기 보다는 난 내가 뭘 더 배웠다고 생각하는데, 아무튼 이런걸 보고 일석이조라고 하는게 아닐까.. 공부도 하고, MVP도 되고.. 헐헐..

자신이 아는 내용은 남을 위해 답변을 달아주고, 자신이 모르던 내용은 다른 사람의 답변을 통해 얻게되고, 내가 모르는 내용은 질문을 올리기도 하고, 이런 과정을 통해 비슷한 관심사를 가진 사람들과 친하게 되고..
그러다 잘하면 Microsoft MVP도 되고.. Microsoft 제품을 많이 사용하며, 유사한 업종에 종사중인 사람들은 Microsoft Public Newsgroup으로 오시라..

영문 뉴스그룹도 많지만 .kr 이 들어가는 한글 뉴스그룹도 무자게 많다.. 뉴스그룹 하면 영어에 대한 부담을 느낄 필요가 없으니 많은 사람들이 모여 의견을 나눠볼 수 있으면 좋겠다..
Posted by 모과이IT
,
PMP를 구입한 이후 너무 책 읽는 것에 소홀해져 나름대로 다시 한번 예전의 감각을 찾아보기 위해서 시간 날때마다 읽으려고 구입한 '패턴을 활용한 리펙터링'을 구입했다.

몇년째 관심을 가지고 있지만 과연 이것이 유용한 것인지 대답을 찾지 못했던 패턴이라는 주제와 언제나 실력의 벽에 부딛히도록 만드는 리펙터링이라는 주제를 함께 다룬 책이기에 제목만으로도 구입할 수 밖에 없도록 만들었다.

이 책의 45페이지에 보면 Martin Fowler가 한 말을 인용한 구문이 나온다.

컴퓨터가 이해하는 코드는 어느 바보나 다 짤 수 있다. 훌륭한 프로그래머는 사람이 이해할 수 있는 코드를 짠다.

이걸 읽는 순간 "두둥!"하고 머릿속에서 울리는 느낌이 들었다.
코드를 보면서 문맥을 놓치게 만들거나 "왜?"라는 의문이 들게하는 코드가 생기게 하는 것은 보는 사람의 실력이 떨어져서가 아니라 만든 사람의 실력이 부족하기 때문이다.

어떤 프로그래머가 보든지 한눈에 쭉 읽어가며 "대단해~"이라는 찬사를 보낼 수 있도록 만드는 코드를 만드는 것이 진정한 실력.

난 아직도 너무나 부족하다.
Posted by 모과이IT
,
'프로그래머로 회사에 입사하면 하는 업무는?' 당연히 프로그래밍이다.
하지만 프로그래밍만 하는 것은 아니다. 기안서도 작성해야 하고 지출결의서도 작성해야 하며 마음에 드는 책을 구입하려면 책 구매 신청서도 내야 하고 휴가라도 가고 싶다면 휴가원을 제출해야 한다. (휴가원 제출하기 귀찮아서 2년간 휴가 한번 쓰지 않은 나같은 인간도 물론 있겠지만 회사를 다니며 이런 서류 한번 제출하지 않고 다니기는 쉽지 않다.)

프로그래밍을 아무리 잘 한다고 해도 서류 한번 잘 못 결재 올렸다간 욕먹기 쉽상이고 아무리 똑똑한 사람일지라도 경영팀에게는 멍청하고 부주의한 사람으로 찍혀버리는 것도 순식간이 되어버린다. 심하면 사회 부적응자라는 평가를 받기도 한다. (노파심에 이야기하자면 절대 지금 다니고 있는 회사가 그렇다는 말은 아니다.)

그러므로 멋진 회사원으로 사람들에게 좋은 이미지를 심어주기 위해서는 자기 일 뿐만 아니라 서류 작성도 잘 해야 하고 회의때 자신의 의견을 조리있게 이야기할 수 있어야 하며 아이디어를 그럴듯하게 보여지는 문서로 만들어내는 능력도 필요하고 격식에 맞는 이메일을 작성할 정도의 예의도 갖추고 있어야 한다.

다행스러운 것은 프로그래밍을 할 수 있는 것 만큼의 능력을 요구하는 것은 아니기에 남들 하는 만큼만 해도 충분히 인정을 받을 수 있다는 점이다.

프로그래밍의 영역만 따져 들어가보면 역시 마찬가지이다.
C++만 할 줄 안다면 그것으로 충분할까? 최근의 경향은 난 다른 언어는 전혀 쓸 줄 몰라요 라는 말로 버티기가 쉽지 않다. 자신이 잘 하는 언어 한가지 이외에 데이터베이스도 다룰 줄 알고 자바 스크립트정도는 보고 이해할 수 있어야 하며 Lua나 Ruby와 같은 스크립트 언어 한가지를 필요에 따라 쓸 수 있고 인스톨패키지를 만들 수 있도록 NSIS나 인스톨쉴드정도는 필요하다면 쓸 수 있을 정도가 되어야 한다.

그렇다고 만능 프로그래머가 되어야 한다는 이야기는 아니다.
잘하는 언어 한가지. 그 한가지를 갖춘 상황에서 다른 언어에 관심을 외면해선 안된다는게 프로그래머로써의 내 생각이다. 다행스러운 것은 한가지 언어에 대해서 어느 정도 알고 있다면 다른 언어를 익히는데 그렇게 어렵지는 않다는 점이다.

너무 잡다하게 많은 언어를 하는 것은 물론 도움이 되지 않는다. 하지만 다른 언어를 익히는 것에 경시하는 것은 좋은 자세가 아니라고 생각한다. 지금 당장 프로그래머로서 뭘 해야 할지 막막하고 무엇을 해야 할지 모르겠다면 다른 언어를 익혀보자. 분명 스스로 발전할 수 있는 도화선이 되어줄 것이다.

Posted by 모과이IT
,

4.9 총선의 거친 바람에 변두리 블로그가 휩쓸릴까 두려워 포스팅도 자제하며 한달동안의 은둔생활 마치고 컴백. 블로그에 글 쓰기 싫어 빈둥대던 때에 적절하게 국가적인 행사로 핑계꺼리 만들어주니 어찌나 고마운지.

한달동안 쉬면서 뭘로 머리 들이밀까 고민하고 있던 차에 적절한 동영상 발견



광고에 대한 이야기이지만 이게 어찌 광고만 해당되는 이야기겠는가. 어디든 마찬가지인 이야기.

개발자가 제일 무서워 하는 이야기는 "이건 아니야! 그러니까 새로 만들어!"가 아니다.
신입일때야 이 이야기가 제일 무섭지만 2,3년쯤 지나게 되면 적어도 윗 사람이 그렇게 이야기할 때는 '만드는 기간이 좀 길어지더라도 내가 널 지켜줄테니까 걍 다시 만들어.'라는 의미도 포함하고 있는 것이다. 만일, 이런 의미를 포함하지 않고 다시 만들라고 하는 것이라면 평생 고생할테니 회사를 그만두거나 다른 팀으로 빨리 옮기는게 좋다.

정말 무서운 이야기가 "괜찮긴 한데 이게 좀 부족해. 그걸 이렇게 바꿔봐"이다.
이 이야기의 배후에는 '그정도 고치는 건 2,3시간이면 충분하지? 일정 변경은 없다.'라는 의미가 포함되어 있다. 별거 아닌 수정이니까 부담가지지 말고 그냥 고치라는 것이다보니 반박하기가 정말 힘들다. 어쩔 수 있나. 야근하면서 고쳐야지. 그런데 정말 무서운 이유는 몸이 힘들어지기 때문이 아니다.

이런 "윗사람이 보기에 별거 아닌 변경"이 가져오는 정말 큰 문제는 본질이 바뀐다는 점이다. 원래 의도가 뭐였는지 알 수 없어진다. 결국 이것은 개먹이 광고에 강아지에게 출연 기회조차 주지 못하게 되어버리거나 도대체 뭘 재미있게 하라는 것인지 도저히 알 수 없는 게임을 만들어버리게 된다.

개구리를 솥 안에 넣어두고 물의 온도를 서서히 높이게 되면 뜨거워지는 지도 모르고 죽는 것 처럼 이런식의 작은 변경이 계속되다보면 결국 "내가 뭘 만들고 있었지?"가 되어버린다.

"이거 조금만 바꿔보지?"라는 의견이야말로 그게 정말 필요한 것인지 아닌지 꼭 생각해봐야 한다. 작은 변경은 반드시 나비효과로 돌아온다.
Posted by 모과이IT
,