LYnLab 로고

블로그취미로그

2016년 11월 셋째 주

데이터는 거짓말을 하지 않는다. 아무런 규칙이 없을 것 같은 정보라도, 내가 정의한 규칙대로 헤쳐 모으면 나름대로 의미가 생겨난다.

2016-11-20#일상

💡 이 글은 작성된지 1년 이상 지났습니다. 정보글의 경우 최신 내용이 아닐 수 있음에 유의해주세요.

나는 다른 사람들에게 나에 대한 이야기를 그다지 하지 않는 편이다. 말을 하기 싫어서 이러는 것은 아니고, 그냥 어떤 이야기를 어떻게 해야할지 도저히 감이 안오기 때문이다.

이런 성격 때문에, 때로는 다른 사람과의 커뮤니케이션에서 문제가 발생하기도 한다. 나는 어떤 사건에 대해 A라는 견해를 가지고 열심히 이야기했는데, 상대방은 내가 B라는 생각을 가지고 있다는 전제로 이야기를 받아준다던가. 때로는 가족들과 이야기를 할 때도 미묘하게 핀트가 어긋남을 느낄 때가 있다.

이야기를 하는 상대마다 서로 다른 나의 생각을 전제로 하는 까닭에, 나 자신이 본래 어떤 생각을 가지고 있었는지가 헷갈릴 때가 종종 있다. 어떤 사람은 내가 B라는 전제로 이야기하지만, 다른 누군가에게 나는 C로 보이는 것 같기도 한다. 물론 모든 사람들이 나에 대해 똑같은 판단을 내릴 수는 없겠지만, 적어도 A, B, C, ...가 아닌 A, A’, A’’, ... 정도의 차이로 인식해주었으면 하는 바람은 있다.

그래서, 적어도 1주일에 한 번씩은 글을 통해 내가 어떤 생각을 가지고 살고 있는지 정리해보고자 한다. 뭐, 특출나게 대단한 내용을 쓰려는 것은 아니고, 그저 공개적인 장소에 작성하는 일기 정도의 수준에 불과할 것이다.

아, 참고로 나는 생각을 정리하기 위한 글은 반말로, 다른 사람에게 의견이나 정보를 전하기 위한 글은 존대어로 쓰는 경향이 있다(항상 그런건 아니다). 그리고 앞으로 이 시리즈의 글은 항상 반말로 쓰이게 될 것 같다.

요컨데, 이 글은 내 생각을 남에게 전달하는 것보다 내 생각을 정리하는게 주 목적에 가깝다는 뜻이다. 다른 사람이 내 생각을 알아주었으면 해서 쓰는 글이 아니라, 내가 자신의 생각이 어땠는지를 남겨두기 위해 쓰는 글이라는 뜻이다.

이번 주에 있었던 가장 큰 변화는, 회사에서 자리를 옮기게 된 일이다. 단순히 물리적으로 위치를 옮긴 것뿐만 아니라, ‘앱 개발팀’에서 ‘서버팀’(회사에서는 ‘시세팀’으로 부른다.)으로 소속을 옮기게 되었다.

주변 사람들에게 되도록이면 숨기는 편이지만, 개발을 처음 시작한 이후로 벌써 9년이라는 시간이 흘렀다.

... 저렇게 많은 햇수를 공부했으면서 실력이 왜 그 모양이니 라고 생각하신 분도 분명히 계실 것이다. 9년 중 대부분을 혼자서 개발을 해왔다보니 세간에서 말하는 ‘개발 실력’이 좀처럼 늘지를 않았습니다. 부끄럽습니다.

아무튼 9년이라는 시간동안 알고리즘, 앱, 웹, 게임, 딥 러닝 등 좋게 말하면 다양하게, 나쁘게 말하면 잡다하게 경험을 쌓아왔다. 잡다한 경험 중 그나마 표면에 내걸 수 있는 홈 그라운드 분야는 안드로이드. 6년이라는 안드로이드 개발 경험만큼은 몇 안되는 나의 자랑거리다. 나름 23만 명이 사용한 서비스를 혼자서 개발, 운영해왔기도 하고.

서버 경험이 없냐고 하면 그건 아니지만, 떠도는 유행에 따라 튜토리얼을 조금 만지작거리고, 서비스라고 부르기도 초라한 수준의 서비스 개발을 경험해봤을 뿐이다. 대표적인 예시가 지금 읽고 계신 이 블로그. django로 밑바닥부터 직접 개발한 나름의 포트폴리오 중 하나다.

이렇게 초라한ㅡ 정확히 말하자면 없는 것에 가까운 경력을 가진 내가 서버팀에 들어가게 된 것은 당장 나 자신조차 의외라고 생각되는 일이었다.

팀을 옮기는 것이 확정되었을 때, 가장 많이 들었던 말은 ‘하고 싶다는 생각만으로 그 일을 할 수 있게 된 것은 너에게 있어서 축복이다’라는 것. 나 또한 이에 동의한다. 경험 부족의 주니어가 단순히 하고 싶다고 일을 할 수 있게 되는 것은 흔한 일은 아닐테다.

물론 회사라는 집단은 여러 경제적, 정치적 판단에 움직일 수 밖에 없는 곳이고, 나는 그 판단의 영향에 가장 쉽게 움직일 수 밖에 없는 위치에 있다. 절대로 서열의 부당함을 논하자는 것이 아니다. 오히려 옳은 일이라고 생각한다. 아직 경험이 부족한 만큼, 더욱 많은 경험을 겪으신 분들의 판단에 내 위치가 정해지는 것은 오히려 적성을 찾는 것에 도움이 되는 일이라고, 적어도 나는 그렇게 생각하고 있다.

때문에 처음 회사에서 안드로이드를 맡게 될 것이라는 소식을 들었을 때, 쉽게 수긍할 수 있었다. 정확히 말하면 안도했다. 잠깐 말했다시피 나는 안드로이드 경력이 가장 깊으니까, 가장 자신 있는 분야이기도 하고. 경험이 많은 분들, 흔히 말하는 시니어분들께서도 적성을 살릴 수 있는 위치에 나를 놓았을 것이라는 판단을 내렸다.

돌이켜보면, 잘할 수 있는 것과 하고 싶은 것은 달랐지만 말이다.

그래서 나는 궁극적으로 무엇을 하고 싶었나.

주변 사람들에게는 항상 ‘데이터를 만지고 싶다’는 식으로 이야기를 해왔는데, 이 얼마나 추상적인가. 데이터를 만진다는 것은 단순히 DB를 다루는 것부터 소위 말하는 빅 데이터(참고로 나는 이 표현을 정말로 싫어한다), 머신 러닝과 딥 러닝을 통한 데이터 분석가가 되는 것까지를 포함하는 포괄적이고 구체적이지 못한 표현이다.

그걸 알면서도 이렇게 추상적인 표현을 써왔던 것은, 내가 무엇을 하고 싶은지에 대해 단언할 수 있는 것이 겨우 그 정도였기 때문이다.

확실히 정보를 만지는 일은 흥미롭다.

지난 11월 17일, 수능날. 우리 서버에 심각한 장애가 발생했다. 1분 1초를 앞다투는 주식 서비스가 햇빛 창창한 한 낮에 뻗어버리다니. 팀을 옮겨온지 고작 4일밖에 안된 새내기에게는 충격과 공포 그 자체였다.

아직 업무 파악조차 제대로 되지 않아 무엇을 어디부터 봐야할 지 도저히 감이 오지 않았던 내가 선택한 일은 그저 로그를 보는 일이었다. 치솟는 DB의 부하를 보고, 분 단위에 육박하는 서버의 응답 속도를 보고, 어떻게든 원인을 짐작해보려고 애썼다.

결과적으로 로그를 쳐다본 것은 NG였다. 장애의 원인은 생각보다 단순한 곳에 있었지만, 아직 서비스를 구조를 제대로 알지 못하는 상태에서 로그만으로 원인을 도출해내는 것은 무척 어려운 일이었던 것이다.

하지만 원인을 파악하고 나니, 각각의 데이터가 무엇을 의미했는지 그제서야 눈에 들어왔다. 치솟는 DB 부하 그래프는 어느 부분이 문제였는지 말해주고 있었고, 계속 경고를 보내왔던 서버 응답의 목록은 그 부하를 어떤 곳에서 일으켰는지 노골적으로 드러내고 있었다.

알고 보니 재밌었다.

데이터는 거짓말을 하지 않는다. 아무런 규칙이 없을 것 같은 정보라도, 내가 정의한 규칙대로 헤쳐 모으면 나름대로 의미가 생겨난다. 물론 나는 이미 만들어진 규칙을 이용했을 뿐이었지만, 더 명확한 규칙을 만들어나가면 되니까.

어쩌면 내가 하고 싶었던 일은 이런게 아니었을까 하는 생각이 오랜만에 드는 순간이었다. 팀을 옮긴지 4일밖에 안되는 순간에 이런 큰 사고가 터진 덕분에 깨달을 수 있었다.

이제 좀 더 구체적으로 이야기 할 수 있게 되었다.

나는 데이터를 만지는 일이 재미있다. 무의미하게 나열된 데이터를 규칙에 따라 정제해서 숨어있는 의미를 꺼내는 일이 재미있다. 그 동안 내가 하고 싶다고 말해왔던 머신 러닝, 딥 러닝은 수단과 도구에 불과했다. 궁극적인 목표는 러닝 기술 자체가 아닌, 이들을 도구로 유의미한 무언가를 꺼내는 행위였던 것이다.

한 번 제대로 꽂히기 시작하면 스스로 일을 벌이고, 때로는 벌인 일에 내가 파묻혀 수습하지 못하는 지경에 이르는 경험을 종종 해왔던 만큼, 이번에도 단시간에 끝나지는 않을 것 같다는 기분이 든다.

지난 6년간 해왔던 안드로이드 개발을 단숨에 접을 생각은 없다. 다만 새로운 일을 위한 도구 중 하나 정도로 쓰이게 될 것 같기는 하다. 얼마나 멋진가. 단지 내가 하고 싶다는 이유로 지난 6년의 일을 ‘도구’로 활용해 새로운 일을 벌이는 거다.

물론 다양한 일을 겪다보면 생각보다 재미 없을 수도 있고, 몸과 머리를 무지막지 굴려야하는 힘든 상황에 마주치게 될 지도 모른다.

그럼에도 내 손으로 이 길을 선택했고, 무엇보다 나를 이 위치에 놓아주신 분들의 노력에 조금이라도 보답해야할 의무가 있는 만큼, 나는 새로운 위치에서 나름의 최선을 다하고자 노력을 할 것이다.

이 방향이 최선인지는 아무도 모른다. 직접 겪어봐야 비로소 알게 될 것이다. 다만 지금까지 그래왔듯, 수 년 뒤의 내가 ‘재미있었다’고 느낀다면, 그걸로 충분히 만족스럽지 않을까.

관련된 글

#mynewgear - 델 U3223QE 모니터

재택근무가 끝나며 회사가 지원해준 모니터를 반납하게 되었습니다. 이제는 내돈내산. 꼼꼼하게 비교해봐겠죠?

학생 라이센스 만료 대책위원회 - JetBrains 편

졸업이 다가온다. 심사에서 떨어지지 않는다는 전제이지만. 이는 무엇을 의미하는가? 학생 개발자 생활을 윤택하게 해주는 각종 무료 라이센스와도 졸업해야 한다는 뜻이다.

내가 개인 프로젝트를 하는 이유

나는 개인 프로젝트를 상당히 다양하게 진행하는 편이다. 프로젝트를 진행하면서 반드시 지키려고 노력하는 나와의 약속을 몇 가지 간추려보았다.

작성한 댓글은 giscus를 통해 GitHub Discussion에 저장됩니다.

크리에이티브 커먼즈 라이선스크리에이티브 커먼즈 저작자표시크리에이티브 커먼즈 동일조건변경허락

본 사이트의 저작물은 별도의 언급이 없는 한 크리에이티브 커먼즈 저작자표시-동일조건변경허락 4.0 국제 라이선스에 따라 이용할 수 있습니다.

LYnLab, 2011 - 2024.