(책에 대한 제대로 된 리뷰를 보고 싶다면 이 포스팅을 읽지 마시오...!)
나는 생각보다 간절함이 없는 사람이다. 수능 잘 본 사람의 후기나 성공한 사람의 이야기를 들어보면 "저는 어렸을 때 불우한 환경에서 자랐어요. 그래서 이를 악물고 공부(일)를 할 수 밖에 없었죠." 같은 내용이 많았다.
하지만 나는 무탈한 가정환경에서 자라왔고, 특히 나의 어머니는 자식들에게 직접 먹이를 찾아오라는 식의 양육보다는 클 때 까지 먹이를 물어다 주셨다. 그러다 보니 자연스럽게 가족에게, 특히 어머니에게 의지를 많이 하게 되었다. 언젠가부터는 이렇게 사사건건 먹이를 물어주는 어머니가 싫어 괜히 반항 아닌 반항을 할 때도 있었다. 하지만 결국 예전에 의지하던 습관이 남아있어 군대 가기 전 까지는 정말 의지를 많이 했던 것 같다.
그리고 군대를 가면서 의지했던 부모님과 2년 동안 떨어져 지내게 되었고 그때부터 조금씩 스스로 무언가를 많이 하게 되었다. 이런 측면에서 군대에서 보낸 2년의 시간은 그만큼 사회에서 경험할 수 있는 기회를 뺏었을지는 몰라도 심적으로 자립할 수 있게 된 계기가 되어 좋은 경험이었다고 생각한다.
그리고 전역한 이후에 따로 집에서 떨어져 나가 자취를 한 다음부터는 경제적인 도움은 받았지만 어떤 의사결정도 나 스스로 할 수 있게 되었고 이때부터 자그마한 성공을 해본 경험이나 어떤 것을 하고 싶다고 능동적으로 생각할 수 있었다. 예를 들어, 학교 연구실 인턴, 연구원 인턴, 네이버 부스트캠프 등 원래 집에 있었더라면 귀찮아서 안 했을 것들도 많이 경험해 보면서 스스로 많은 성장을 할 수 있었다.
왜 책 리뷰를 하는데 너의 인생 스토리를 이야기하냐라는 의문이 들 수도 있다. 결국 내가 하고 싶었던 말은 항상 누구에게 의지하고 스스로 생각해서 의사 선택을 해오지 않았던 내가 이제는 내 삶을 내가 만들어 나갈 수 있게 되었다는 말을 하고 싶어서이다.
4학년이 되기 전까지만 해도 아직 취직하기 까지 시간이 많이 남아있다고 생각했다. 그래서 Android를 공부하다가 iOS도 공부해 보고 싶어서 Swift 문법을 공부할 수 있었고 똥줄 타지 않아서 여유 있게 할 수 있었던 것들을 그때 당시의 수준에서 최선을 다해 했던 것 같다.
그러던 중 부스트캠프를 진행하면서 한 가지 생각이 들었다.
나는 정말 무지한 사람이었구나. 단순히 iOS 개발에 있어서 잘하는 사람보다도 just 개발 자체를 정말 잘하는 사람이 되고 싶다. 하드웨어부터 맨 윗단의 애플리케이션까지 전체적으로 이해할 수 있는 사람이 되어서 어떤 분야든 간에 내가 안 해서 그렇지 하면 다 할 수 있겠다 싶은 그런 사람이 되고 싶다.
이런 생각을 하게 되면서 자연스럽게 현재 내 수준이 파악이 되었다. 현재 내 수준은 이렇다.
CS의 기초도 남들이 물어봤을 때 청산유수로 이야기하기 어렵다.
내가 짠 코드에 있어서 한 단계의 깊이 있는 질문을 했을 때 이야기하기 어렵다.
그냥 좋아서 쓴 기술인데 이를 왜 썼는지, 내부적으로 어떻게 돌아가는지 이해하지 않고 기능만 갖다 썼다.
이외에도 여러 가지 배워나갈 길이 너무 많았다. SQL을 1도 모르는 것도, 프로세스가 메모리에서 어떤 영역을 가지고 관리되는지 등등 정말 어떤 분야에 있어서 남들에게 자신 있게 설명할 수 있는 영역이 없다. 전무하다.
워라밸을 꿈꾸고 6시 땡 하면 퇴근해서 개발이 아닌 다른 것들을 하며 내 라이프를 즐긴다? 이러면 위의 고민들을 할 필요 없이 CS의 기초를 익혀서 남들에게 설명할 정도로 반복하고, 이력서에 있는 질문들만 열심히 대비해서 내가 평생 머물 수 있는 회사를 가면 된다. 가서 워라밸 지키면서 일하면 그만이고 나중에 승진해서 관리자 직급으로 일하면 된다.(물론 이것조차 나에게는 먼 산이고 이러한 삶을 비하할 의도는 절대 없다)
하지만 내 꿈은 개발 자체를 정말 잘하는 사람이다. 어떤 부분에 있어서 자동화를 하고 싶을 때 쉘 스크립트를 이용해서 뚝딱뚝딱 코드를 짜고(이런 부분은 매우 쉽다고 생각할 수도 있지만 나에게는 아직 어려움), 해시테이블, 배열, 트라이 등등의 자료 구조를 꿰고 있어서 성능 최적화를 해야 할 때 이러한 선택지들을 만지작 거리면서 최적의 답을 제시할 수 있는 사람이 되고 싶다.
더 말하자면 너무 길어져서 여기까지만 하겠다. 아무튼 이러한 가치관을 정립해가던 시기에 이 책을 접하게 되었고 이 시점에서 보기에 딱인 그런 책인 것 같아 읽어보았다.
이 책은 견습생인 내가 숙련공이 되는데 도움을 주는 여러 패턴들을 알려준다 (역시 개발자 아니랄까 봐 패턴으로 이야기하는 것이 재밌었다). 읽으면서 이미 알고 있는 부분도 있었지만 무릎을 탁 칠만한 패턴들도 있었다.
가장 기억에 남는 패턴은 "가장 뒤떨어진 이가 되라" 였다. 당연한 이야기처럼 들릴 수도 있지만 내가 어떤 집단에 신입으로 들어가면 제일 뒤떨어진 이가 된다. 그러면 항상 뒤떨어진 사람으로 살고 싶지 않으니 열심히 노력할 것이고 다른 분들이 제자리에 있거나 내가 더 많이 노력하면 언젠가는 내가 더 잘하게 될 거다. 이러한 상황이 와서 회사 내에서 중간 혹은 제일 잘하는 개발자가 된다면 더 이상 회사에 남아서 배울 것들이 많지 않다. 그때 내가 가장 뒤떨어질 수 있는 회사로 이직을 하라는 것이었다.
사실 내가 다니고 있는 회사에 만족한다면 이직을 하기 정말 쉽지 않다. 회사 직원들과도 적응해서 편하게 일할 수 있고 몇 년간 근무하면서 몸에 익어서 마치 낯선 곳에서 하루 종일 돌아다니다가 내 침대에 누운 느낌처럼 회사가 몸에 익을 것이다(회사를 아직 안 다녀봐서 이 부분은 의견 차이가 많을 것이다).
그렇지만 내 경험으로도 낯선 곳에 뚝 떨어졌을 때 성장 곡선을 가장 크게 그렸다. 현실에 안주하면 발전은 없다. 그래서 이 패턴을 자꾸 되뇌면서 성장하려고 노력하고 회사 내에서 실력적으로 높은 위치에 선다면 그때 이직하는 것을 계속 머릿속으로 생각해야 겠다.
이 책에서 말하길, 견습생일 때는 연봉에 관해서는 잠시 옆으로 치워두는 것이 좋다고 말한다. 이 책은 어떻게 하면 노력을 적게 하고 돈을 많이 벌 수 있을지에 관한 책이 아니다. 장인처럼 매일 노력을 게을리하지 않고 자신의 능력을 키워나가다 보면 연봉은 자연스럽게 따라오는 부산물일 뿐이라고 말한다.
나 또한 취준 생활을 거치면서 대기업과 중소기업의 임금 차이에 대해서도 정말 실감하고 있다. 커피챗을 통해 한 대기업 개발자 분과 이야기할 기회가 있었다. 그 분은 이렇게 말씀하셨다.
"처음부터 높은 연봉을 주는 회사에서 일하는 것이 중요해요. 첫 연봉이 높아야 나중에 이직할 때도 그 연봉을 기준으로 책정하기 때문입니다. 만약 중소기업에서 낮은 연봉으로 시작하게 된다면 나중에 이직을 했을 때 대기업 신입 초봉보다 못 받고 일할 수도 있어요."
정말 맞는 말이고 결국 생활에 직결된 부분은 돈이기 때문에 살면서 한 푼이라도 더 벌려면 처음부터 높은 연봉을 주는 곳에 가는 것이 맞다고 생각한다. 그렇지만 장기적인 관점에서 내 생각은 조금 다르다(반박 시 당신 말이 맞음 정말임!).
우선 현재 시장 상황이 매우 좋지 않다. 물론 이런 상황에서도 능력이 있다면 뚫고 들어갈 수 있을 것이다. 하지만 객관적으로 내 실력은 중간 혹은 그 이하이다. 이를 끌어올려서 중간 이상으로 만들려면 빡세게 하면 3개월 여유롭게 하면 6개월 혹은 그 이상이 걸릴 것이다(다소 짧아 보일 수도 있지만 경쟁의 대상들 또한 신입이기 때문에 도긴개긴이다). 하지만 나는 분명 빡세게 안 할 거라는 걸 잘 인지하고 있다. 왜냐하면 4학년 2학기가 지나고 부스트캠프가 끝나면서 두 달 동안 열심히 안 해왔으니까. 그러면 어떤 선택이 합리적일까? 일단 내가 성장할 수 있다고 믿는 회사에 들어가는 것이 답이다.
그렇게 나는 이번에 한 회사에 들어가게 되었다. 연봉 또한 중견 혹은 대기업과 대비하여 많이 적긴 하다. 하지만 개발 이사님께서 iOS에 대해서 잘 알고 계시고 회사의 분위기도 열심히 하려는 사람이 많을 것으로 추정이 된다(아직 안 가봐서 모름). 우선 회사에서 사람들과 부딪히면서 스스로 열정에 불을 지피기도 좋을 것이라고 생각하고 개발 이사님을 멘토라고 생각하면서 스스로 성장하려고 노력할 것이다.
27살이 되고 예전에는 몰랐지만 요즘 깨닫는 것이 있다.
매일 하는 작은 노력이 몇 년이고 쌓이면 매섭다.
20살부터 운동을 시작한 친구가 있다. 그는 몸이 엄청 좋은데 운동을 일주일에 몇 번 하냐고 물어보면 주 3회를 한다고 한다. '이상하다. 나는 주 6일까지 한 적도 있었는데 왜 이 친구보다 몸이 안 좋을까' 이에 대한 비밀은 나는 주 6일을 2년 간 하다가 관두었고 그 친구는 20살부터 7년을 한 것에 있다.
정말 작은 노력이라도 이것이 연 단위로 쌓이다 보면 무시할 수 없을 정도로 커진다는 것을 깨닫는 순간이었다. 나도 이제 시작이다. 지금은 비록 신입이고 실력이라 할 것도 없는 수준이지만 연 단위의 노력을 쌓아나가다 보면 내가 원하는 실력을 갖춘 개발자가 되어있을 것이라고 생각한다. 그 날을 위해 매일 정진하자. 화이팅:)