본문 바로가기
내 생각

2017년 개발자로 어떻게 살았는가(회고)

by Havi 2018. 1. 1.
반응형

주변에서 자신이 지난 1년간 어떠한 일들을 했는지 회고하는 글들을 SNS를 통해 보게되었습니다. 처음에는 회고를 쓰는게 도움이 될까 반신반의하였지만 막상 직접 써보니 느껴지는게 많았던 것 같습니다. 회고를 써서 인터넷상에 공유하는게 남들에게 보여주기 위한 의도도 있겠지만 본래의 의미인 자신을 되돌아봄에 충실하며 써보고자 합니다.(제 개인적인 생각이 난무합니다) 그래야 몇년뒤에 이 때의 느낌을 더 잘 간직할것만 같습니다.

작년에는

작지만 강한(?) 포털회사인 줌인터넷에서 일하면서 처음에는 트래픽이 적고 간단한 웹들을 개발했다. 그러면서 점차 고객센터, 회원, 스윙 등 적당히(?) 트래픽있고 중요한 업무를 맡게 되었다. 회원쪽은 법적인 이슈, 고객 정보관련 이슈, 레거시 프로젝트로 인한 이슈 등 다양한 문제를 겪고 개선하고자 노력하였다. 이때는 업무에 적응하고 내가 맡은 프로젝트가 남들에게 맡겨졌을 때 욕먹지 않도록 노력하는 시기였다.

2017년이 될 무렵...

2017년 1월1일 다음과 같은 목표들을 세웠다. 사실 개인적인 목표들이 더 존재하지만 일단 개발적인 목표는 다음과 같았다.

  • 토비의 스프링 완독
  • 오픈소스 참여
  • 사내에 도움이 되는 프로젝트 진행
  • 평일 하루, 주말 하루 운동(개인적으로 건강도 개발과 연관이 있다고 생각한다)

목표를 얼마나 이루었는가

토비의 스프링 완독

사내 업무를 하면서 스프링으로 개발을 하지만 막상 책을 틈틈이 봤을뿐 정독해 본적이 없었다.
때문에 무언가 내실이 탄탄한 느낌이 없었다. 그래서 생각한 것이 토비의 스프링을 정리해 보는 것. 스터디를 진행할까 개인적으로 공부할까 고민해 보았지만 스터디를 진행하면 주체적이지 못할 가능성이 컸다. 무엇보다 아래와 같은 이점 때문에 블로그에 정리하게 되었다.

  • 남들이 보기때문에 잘 써야 함
  • 내가 주체적으로 이해해야만 글을 쓸 수 있음
  • 어차피 한번 읽어봤자 평생 기억할 수도 없고 여러번 봐야지 내것이 됨
  • 때문에 핵심만 정리된 내용을 보면 금방 읽고 기억을 상기시킬 수 있음

그래서 하루에 한 시간씩 책을 읽으며 블로그에 정리했다. 그래서 그런지 책을 읽는게 지루하지 않고 오히려 즐거웠다.

토비의 스프링은 내가 겉핥기로 이해했던 틀의 내부를 채워주었다. 어떠한 개념을 왜 만들게 되었는지, 어떻게 쓰는지 등 스프링을 더 깊게 이해하게 되었다.
(하지만 여기에도 단점이 존재한다. 진도가 너무나 더디다...그냥 읽는것보다 최소 3배는 더 걸린다.)

세미나를 통한 사내 프로젝트 개선

누구나 그러하듯 초반에는 팀내의 업무에 잘 적응하는 것이 가장 큰 목표였다. 닥치는데로 지식을 습득하고 공부하며 각종 세미나를 열심히 보러 다녔다. 세미나를 갔다오면 마치 트렌디한 개발자가 되는 느낌이였다.(실제로는 아니였지만...) 세미나에서 자극과 영감을 받을 때가 많았다.
모두가 비슷한 고민을 하고 있다는 것도 알게 되었다. 덕분에 새로운 기술을 적용하거나 어떠한 문제를 해결할 때도 도움이 되었다. 그러다 세미나에서 관심을 가진 기술을 실제 업무에도 적용해 볼 기회가 생겼다. 맹사장님의 ES6 세미나를 통해 ES6에 관심을 갖고 공부하고 있던 찰나 때마침 팀내의 모바일웹 서비스가 커피스크립트로 구성되어 있어서 맡게되는 개발자마다 큰 곤욕을 치르고 있었다.(나도 포함..) 그래서 팀장님과 잘 조율하여 CoffeeScript -> ES6 컨버팅 작업을 진행하였다. 관련 내용은 여기있다.

이때는 어느정도 트래픽을 받고 있는 줌의 모바일웹을 개선하는 것이라 두근두근하였다. 지금 생각하면 아쉬운 부분도 있지만 개선으로 인해 모바일웹 프로젝트를 맡게 되는 팀원들의 생산성이 올라갔다는 점이 뿌듯하다.

오픈소스 참여 도전

시간이 흘러 허브 서비스를 맡게 되었다. 허브는 트래픽이 수직 상승중에 있으며 가장 최근에 만든 서비스였다. 허브 서비스를 운영하며 전체적인 아키텍처와 자바8에 대해 많이 배우게 되었다. 이때 한창 람다, 디폴트 인터페이스, 스트림API 등의 공부를 하였다.
그러다 허브의 플리킹 기능을 수정할 일이 생겼다. 위, 아래 스크롤시 플리킹을 막는 기능이였다. Slick(플리킹 관련 오픈소스)의 버그아닌 버그같은 기능이였다. 구글링 해보니 나와 비슷한 문제를 겪는 여러 개발자가 있었지만 Slick 개발자는 자신도 알고있고 의도한 기능이라며 따로 개선해 주지 않았다. 그래서 내가 포크를 떠서 기능을 하나 추가하였다. 이슈는 당연히 먹히지 않을거 같아서 제시도 못했지만 다른 누군가에게 도움이 되었으면 한다. (사실 했지만 차였다)

또, 어떤 오픈소스를 수정해 볼까 고민해 보았다. 하지만 고민만 하였지 결국에는 남들이 개발한 소스에 커밋만 하는 정도로 끝나게 되었다.
지인인 창천향로님의 인텔리제이 번역 플러그인에 코드 개선정도, 기타 다른 오픈소스에 짧막한 커밋을 남겼다.

목표인 오픈소스 커밋은 달성했지만 아쉬움이 크다. 오픈소스를 개발할때는 내가 개발하는 것의 불편함 점을 개선하는 것이 실질적인 동기부여가 되는거 같다. 내년에는 나만의 오픈소스를 만들고 싶다!

사내 프로젝트 개선2

근데 허브에는 아쉬운 점이 있었다. 남들 다 있는 소셜 댓글 기능이 없었다. 때문에 사람들의 관심을 더 끌 수 있는데 그러지 못하는게 아쉬웠다. 그래서 공부도 할겸 간단한 OAuth2 기반의 데모 프로젝트를 만들어 보기로 했다. 다 만들고 블로깅도 하여 KSUG에 올렸는데 생각보다 반응이 좋았다.
하지만 실제로 허브에 적용하지는 못하였다. 회사의 업무 롤, 기타 계획들 때문에 내년으로 연기되었다. 그래도 누군가에게 도움이 되고 꾸준히 댓글이 달려서 기분이 좋았다. 특히 오타잡이님들 때문에 즐거웠다.

뜻밖의 기회

몇 달전 토비님과 저녁식사때도 '나도 미래에 책을 쓰고 싶은데 어떻게 쓰게 되셨는지' 질문을 한적이 있었다. 근데 놀라운 일이 일어났다. 한빛미디어의 기획자분이 나의 블로그를 보고 스프링 부트 관련 책을 써보자고 제안하였다. 그러한 기회가 너무 빨리, 이런식으로 찾아올줄은 꿈에도 몰랐다. 무척 기분좋은 일이였지만 내가 할 수 있나 많은 고민을 하였다. 사실 결심은 빨랐다. 이유는

  • 가보지 못한 세로운 영역에 도전해 보는거 같아서
  • 책을 쓴다는건 내 버킷리스트중 하나였기에
  • 포기할지라도 내가 손해보는 것은 없음(반성은 해야함...)

그리고 책을 쓰게 되었다. 처음에는 자괴감과 자신감에 대한 생각의 반복이였다. 다른 대단한 사람들이 쓴 책을 보며 '저런 대단한 사람들이나 책을 쓰는거지...'라는 생각과 '나는 초보자의 입장에서 더 쉽고 더 이해잘되게 풀어 쓸 수 있어'라는 생각과...그러다 책쓰는 프로그래머 협회 유동환님의 글을 보고 마음을 굳히게 되었다.

결과적으로 책을 쓰며 많은 것을 알게 되었다.

  • 정말 피와 땀이 많이 듬
  • 책을 쓰는 모두를 존경하게 됨
  • 내가 평소에 잘 알고 써오던 것도 더 정확하게 알기 위해 까보고 다방면으로 써봐야 됨
  • 티끌모아 태산이라고 꾸준한 습관이 중요함
  • 세상에 포기는 가장 쉬움
  • 회사에서 코딩하는게 훨씬 재밌음

의식적인 연습

예전에 박재성 강사님의 세미나를 들은적이 있었다. 그때 인상깊게 들어서 의식적인 연습과 관련한 책도 읽게 되었다.
하반기즈음 글도 쓰고 내가 하고싶은 공부를 하던 중 어느 순간부터 뭘 하던 진도가 잘 안나갔다. 그동안은 무작정 진행하였지만 이때 의식적인 연습을 시작해야겠다는 생각을 하게 되었다. 문제가 무엇인지 곰곰히 생각해 보았다.

  • 절대적인 글쓰기 시간의 부족
  • 습관적으로 SNS, 카톡을 봄
  • 이게 맞나?, 문장의 흐름은 괜찮나?, 독자들이 이해할 수 있을까?, 기타 여러 고민이 길어질수록 집중력이 흐려짐
  • 문법, 문장의 흐름, 단어 고민 등 기획자분과의 협업을 할때도 길어짐
  • 더 능률적인 방법, 환경 등을 고민하지 않고 무작정했던게 가장 큰 문제였음

나의 문제점부터 제대로 인지하고 다음과 같이 대처방안을 떠올려보았다.

  • 일찍기상(6시20분에 일어나 10분간 정신차리고 30분부터 1시간 글쓰기)
    • 아침에 더 집중이 잘됨
    • 아무리 바쁘더라도 이 시간에는 산을 만드는 티끌들을 모을 수 있음
  • 출퇴근하며 책읽기
    • 굉장히 나랑 잘맞음
    • 졸지않고 시간의 효율을 낼 수 있음
  • 바탕화면에 집중력을 흐트리는 요소들(카톡, 페북, 블로그 기타) 싹다 정리(작업 표시줄도 숨김, 왠만하면 전체화면으로 진행)
  • 10분 혹은 20분 간격으로 알림 설정
    • 윈도우의 알림기능 사용
    • 나에게 주어진 간격만큼 의식적으로 되뇌이며 집중하게 만듬
    • 뭔가 게임같은 요소처럼 느껴지도록 생각함
    • 날마다 제목도 다르게 정하여 당근과 채찍을 번갈아가며 사용

결과적으로 집중력이 향상되었다. 특히 글을 쓸때. 어떤이에게는 굉장히 바보같은 방법처럼 보일 수 있겠지만 잘못된 습관이 지속되게 되면 그러한 습관을 고칠 수 있도록 의식적으로 노력해야만 바꿀 수 있다는 것을 느꼈다.(물론 나만의 방식이다) 이를 통해 진정한 효율은 내 문제가 무엇인지 앎으로부터 나온다는 것도 깨달았다.

앞으로

현재는 줌의 메인페이지를 담당하고 있다. 앞서간 선배들의 발자취를 따라 나도 메인을 더 나은 서비스로 개선하며 의미있는 일을 해보고 싶다.
이제는 다른데로 이직하였지만 이전에 메인페이지를 담당하던 사수분은 어느날 인상적인 말을 남겼었다.

저는 제가 못할거 같은 일들에 도전해요. 잘 알지도 못하지만 한계에 계속 도전하고 노력하면 언젠가 그 벽을 깨고 성장하게 되더라구요.

누구나 알고 있을 것이다. 하지만 말만 하는게 아니라 행동으로 보여주기는 어렵다. 한계에 도전하며 포기하지 않고 노력하는게 앞으로 이 시대를 살아가며 치뤄야할 숙명이 아닌가 생각한다.
된다고 생각하는 사람은 되고 안된다고 생각하는 사람은 정말 안된다. 내년에도 되는 놈으로 살자! 2018년에도 화이팅!

반응형

'내 생각' 카테고리의 다른 글

2019년 성장 회고  (2) 2020.01.05
2018년 회고  (2) 2019.01.19
토비님과 저녁식사 후 생각 정리  (1) 2017.04.14

댓글