누구에게나 주니어 시절은 있기 마련이죠. 주니어와 시니어를 나누는 명확한 기준은 없지만, 나이와 연차가 쌓이면 자연스럽게 주니어에서 시니어로 넘어가게 됩니다. 연차가 늘면서 실력도 덩달아 늘면 좋겠지만, 단순히 시간이 성장시켜주지는 않죠. 꾸준히 노력해야 하고 그 과정에서 좋은 사수를 만나는 것도 중요합니다.
그래서 준비했습니다. 3~4회 차 구름 세미나* 강의를 맡아주신 레몬트리 강대명 CTO를 만났어요. 강대명 CTO는 파이널데이터 소프트웨어 엔지니어로 커리어를 시작해 네이버, 카카오, Udemy 등을 거쳐 레몬트리에서 개발팀을 리딩하고 있습니다. 강대명 CTO가 20년 동안 성장하며 어떤 고민과 시도를 했는지 나눈 이야기를 전해드릴게요.
📢 구름 세미나?
구름은 매달 수요일에 세미나를 열어 다양한 인사이트를 전하고 있습니다. 구름 세미나는 구름 커밋(commit)으로 새롭게 찾아올 예정이에요. 커밋 소식은 🔗여기서 확인하실 수 있어요.
Q. 만나서 반갑습니다. 대명님
자기소개 부탁드릴게요
안녕하세요. ‘백수는 GitHub이 답이다’라는 명언을 한 적 있는 20년 차 소프트웨어 엔지니어 강대명입니다. 지금은 ‘레몬트리’라는 키즈 핀테크 스타트업에서 CTO로 일하고 있어요.
Q. 레몬트리가 준비하고 있는 서비스에 대해
조금 더 소개해주실 수 있을까요?
레몬트리는 자녀 금융 교육을 목표로 하는 스타트업입니다. 부모와 자녀에게 용돈 설계부터 저축/소비/투자 관리, 생활 밀착형 교육 프로그램 등을 제공하려고 준비하고 있어요. 용돈을 받는 아이들이 돈을 어떻게 쓰고, 모으고, 불리고, 나눌지 알려주고 싶은 부모의 마음을 담아 만들고 있습니다.
부모들이 자녀에게 금융 지식을 가르치고 싶은 마음은 있지만 어디서부터 어떻게 시작해야 할지 어려워 하세요. 저도 그랬고요. 아직은 지식 격차가 있는 분야라고 생각합니다. 저희는 자녀 용돈 교육을 시작으로 가족 금융 시장을 만들어 가고 싶어요. 소외 계층을 포함한 누구나 쉽게 금융과 경제를 배울 수 있도록 돕고 싶습니다. 서비스는 올해 말 출시를 목표로 열심히 준비하고 있어요.
Q. CTO는 처음이시죠. 개발만 하실 때와 달라진 게 있나요?
가장 큰 차이는 책임감이죠. 개발만 할 때와 달리 매니징도 해야 하니까요. 예전에는 기술적인 부분을 많이 고민했다면, 이제는 직원들을 케어하는 데 더 집중하고 있습니다.
Q. 세미나와 강의, 멘토 활동도 꾸준히 진행하시고 계신데 특별한 이유가 있나요?
원래 교육 쪽에 관심이 많습니다. 재미도 있고요. 예전에 근무했던 ‘Udemy’라는 회사도 교육 분야가 궁금해 입사했었어요. 교육 활동은 앞으로도 꾸준히 이어가려고 합니다.
Q. 어느덧 20년 차 개발자이신데 가끔 주니어 시절 생각도 나시나요?
많이 나죠. 사회에 나와서 무작정 일을 시작하다 보니 어느 순간 경력이 많이 쌓였더라고요. 20년이나 됐네요.
저는 게임을 만들고 싶어서 개발을 시작했어요. 그래서 컴퓨터 전공을 선택한 건데 게임 개발은 한 번도 못 해 봤네요. 본격적인 일은 2002년부터 대체복무제도 중 하나인 병역특례로 시작했습니다. ‘파이널데이터’라는 복구 툴을 만드는 기업에서 파이널 포렌식스를 개발했죠.
Q. 주니어 때 개발 문화와 지금이 차이가 있다고 느끼세요?
그때는 개발 문화라는 게 없었어요. 물론 회사마다 다르겠지만 저 같은 경우는 위에서 어떤 기능을 구현하라고 하면 알아서 해야 했습니다. 개발 문화라는 게 명확하지 않아서 좋다, 나쁘다를 말하기도 힘들었어요. 당연히 그렇게 해야 하는 건 줄 알았고요. 뭐든 부딪히면서 배웠습니다.
부족하다고 생각한 부분은 스터디나 커뮤니티를 많이 다니면서 잘하는 분들께 배웠던 시기죠. 네이버 카페를 많이 활용했는데, 닷넷(.NET) 개발자 커뮤니티 덕에 많이 배웠습니다.
Q. 주니어 때는 조금이라도 실수하면 머리가 새하얘지죠. 대명님은 어떠셨어요?
실수는 지금도 안 할 수 없죠. 가장 중요한 건 회사나 팀의 분위기인 것 같아요. 실수해도 빨리 공유할 수 있는 심리적인 보완 장치를 마련하는 게 중요한 것 같습니다. 어떤 조직에서는 실수를 한 사람의 이름을 보고서에 적는 경우가 있어요. 누가 이런 잘못을 했다고요. 이러면 내 잘못을 숨기기 시작하죠. 사고는 점점 커질 거고요. 실수한 사람을 밝히는 게 중요한 게 아니라 다음에 같은 상황이 발생했을 때 어떻게 더 빨리 대처할 수 있는지가 중요하잖아요.
주니어 때는 몰랐지만 90% 이상의 장애는 간단한 조치로 해결할 수 있습니다. 보통 10% 이내만 깊게 고민해야 하죠. 작고 간단한 에러라도 문서로 남겨두면 좋습니다. 이런 걸 ‘knowledge sharing’이라고 하죠. 같은 에러가 발생했을 때 누구나 그 문서를 보고 해결할 수 있으면 간단해지니까요. 실수에 너무 매몰되지 않으면 좋겠습니다.
Q. 파이널데이터에서 네이버, 카카오에 이르기까지 만들고 있는 서비스 규모가 점점 커질 때 기분은 어떠셨어요?
파이널데이터에서 디지털 포렌식을 할 때는 대부분의 고객이 검찰, 경찰, 국정원 등 수사 기관이었어요. 그러다 보니 평소에 내가 만든 서비스를 누가 얼마나 사용하는지 가늠하지 못했죠. 그런데 네이버나 카카오에서 근무할 때는 버스나 지하철을 타면 옆 사람이 제가 만든 걸 쓰고 있더라고요. 묘했습니다.
확실히 고객하고 가까워지는 느낌이었어요. 이전에는 고객 문의도 6개월에 한 번 들어왔는데 네이버로 이직한 후에는 하루에 20건도 넘게 들어오더라고요. 확실히 사용하는 분들이 많으니 실수했을 때 여파도 훨씬 컸습니다. 피드백도 많아졌고요.
Q. 주니어에게 받은 피드백 중 기억에 남는 게 있으세요?
선명하게 기억하고 있는 피드백 중 하나가 ‘대명 님은 정답을 너무 빨리 가르쳐준다’는 이야기였어요. 상대방이 한번은 고민할 시간을 줘야 하는데 답을 너무 빨리 가르쳐주면 도리어 성장을 막을 수 있다는 요지였죠. 그 뒤로는 질문을 적극적으로 활용하게 됐어요. 질문에 대한 대답을 들으면 꼬리를 물고 질문을 이어가기도 합니다. 세미나나 강연을 진행할 때도 질문을 던진 후 추가 설명을 이어가고 있어요.
Q. 개발이나 IT 관련 인사이트는 어디서 많이 얻으세요?
페이스북이요. 저는 주로 페이스북 그룹에서 활동합니다. 가끔 트위터나 링크드인도 하는데 확실히 페이스북에 정보가 많아요. 모임을 찾는다면 페이스북, 소식이 빠른 건 트위터인 것 같습니다.
예전에는 방법이 구글링밖에 없었는데, 요즘은 넷플릭스 같은 엔지니어 블로그도 내용이 굉장히 좋아요. 둘러보시길 추천합니다.
Q. 개발자는 내가 만드는 제품이나 서비스를 어떤 시선으로 봐야 한다고 생각하세요?
일단 문제 없이 잘 만드는 게 가장 중요하죠. 고객이 가진 문제를 해결하는 게 늘 최우선순위여야 합니다.
제품이나 서비스를 개발하면서 늘 추가로 배울 수 있는 게 없는지 고민해보셔도 좋겠습니다. 회사의 성장은 개인의 성장이 아니지만, 개인의 성장은 회사의 성장이라고 믿거든요. 제품을 적절한 시기에 출시하는 것도 중요하지만, 개인의 성장도 중요합니다. 가능하면 회사에서 하는 일을 정리해 개인 블로그에 기록해두세요. 기술 세미나도 적극적으로 참여해 보시고요.
Q. 같이 일하고 싶은 주니어나 동료는 어떤 유형이신가요?
할 수 있는 만큼 충분히 고민해보되, 일정 상 어렵거나 힘든 부분은 빨리 공유해주는 분들이요. 상황에 대한 공유가 자주 이루어져야 조율이 쉽더라고요.
아이디어를 자주 제안해주시는 분들과도 시너지가 좋았습니다. 아이디어가 항상 좋을 필요는 없어요. 자주 교환하면서 디벨롭할 수 있으니 일단 많이 주고받는 게 중요한 것 같습니다.
Q. 대명님이 20년에 걸쳐 성장하실 수 있었던 비결이 있다면요?
어려운 질문이네요. 굳이 한 가지를 꼽자면 ‘호기심’인 것 같아요. 제가 좋아하는 분이 이런 이야기를 하셨어요. 개발자가 끝나는 순간은 실력이 떨어질 때가 아니라 호기심이 떨어질 때라고요. 저는 지금도 개발하다가 궁금한 게 있으면 여기저기 찾아보고 오픈 소스는 구조를 계속 뜯어보려고 합니다.
멘토링이나 강연도 호기심을 자극하는 방법 중 하나예요. 사실 멘티분들이 저에게 질문하는 게 100이라면 하면 제가 알고 있는 건 20도 안 돼요. 조금이라도 더 알려 드리려고 공부하게 만드는 동력이 되어주죠.
Q. 마지막 질문입니다. 주니어 개발자들에게 꼭 하고 싶은 말이 있나요?
오픈 소스를 적극적으로 활용하시길 권장합니다. 저는 지금도 자바 스프링, 노드 등 오픈 소스를 많이 사용합니다. 사용하다 보면 제가 모르는 에러가 발생하게 되는데요, 스택오버플로우나 구글에 검색해 해결하는 데서 그치지 말고 한 단계 더 나가보세요. ‘이 에러는 왜 나왔을까?’를 역으로 되짚어가는 거죠. 이런 환경에서 이런 값이 잘못돼서 이런 에러가 나는구나, 이런 에러가 안 나게 하려면 이렇게 해야지까지 정리해보세요. 오픈 소스니까 다 열어볼 수 있거든요.
연차와 실력은 비례하지 않습니다. 연차가 낮아도 잘하는 분들이 있는 반면 경력이 7년이어도 1년 차가 하는 일만 7년 동안 할 수도 있죠. 숫자는 의미가 없어요. 전 회사에서 같이 일했던 분은 3년 차셨는데 웬만한 10년 차보다 잘하는 분이셨어요. 꾸준히 공부하면서 다른 팀에 이런 게 문제가 되지는 않을지, 이 기능을 쓰면 어떨지 등 자주 의견을 주셨습니다. 같이 일하는 입장에서 자극이 많이 됐어요. 어떤 주니어 혹은 시니어로 성장할지는 여러분에게 달려 있습니다. 적극적으로 배우시길 바라요.
Edit Sunny Design Lil