포트폴리오를 위한 프로젝트가 아닌 진짜 프로젝트를 해봤으면 좋겠어요

이와 같이 개발자 직무에 대한 수요가 급격하게 증가함에 따라 국비지원 부트캠프 시장도 점점 활성화되고 있는 상황인데요. 수강생들의 니즈에 맞게 잘 운영되고 있는 부트캠프가 있는 반면, 허점이 드러난 부트캠프도 있습니다.
강사나 멘토진의 역량이 부족하거나, 프로젝트 기간이 짧아 채용시장에서 매력적이지 않은 포트폴리오 결과물을 제공하는 등 부실한 운영으로 인해 부트캠프만 믿고 개발자를 꿈꾸던 수강생들의 불만이 이어지고 있는 것인데요.
이번 인터뷰에는 5년 차 풀스택 개발자 김병욱 님이 함께해 주셨는데요. Kernel360의 커리큘럼이 부트캠프의 한계를 어떻게 보완했는지, 어떤 백엔드 개발자 인재를 양성할 수 있을지 현직 개발자 김병욱 님의 시선에서 이야기 나눠보았습니다.
좋은 백엔드 개발자는 열린 사고방식으로 문제를 해결합니다
안녕하세요, 병욱님! 먼저 간단한 자기소개 부탁드립니다.
안녕하세요. 매일 1만 명 이상 사용하는 가격 변동 알림 앱, 폴센트에서 근무하고 있는 5년 차 풀스택 개발자 김병욱입니다. 저는 한때 시장에서 쌀을 파는 상인이었는데요. 비전공자이지만 개발 분야에 관심을 두게 되었고 여러 시행착오 끝에 이제는 5년 차 개발자로 자리 잡게 되었습니다.
Q. 처음 개발자를 준비했을 때 가장 어려웠던 점은 무엇인가요?
개발은 끝이 없는 분야이다 보니 어느 정도 실력을 갖춰야 취업을 할 수 있을지, 또 취업을 해도 어떻게 일을 해야 할지 알 수 없어서 늘 불안감이 있었어요. 이 불안감을 다스리기 위해 매일의 루틴을 촘촘하게 짜고, 오늘 하루도 열심히 살고 있다는 생각으로 취업 준비 과정을 버텼습니다. 결국 가장 중요한 것은 마인드컨트롤에 대한 의지인 것 같습니다.
개발자는 능동적으로 고객의 불편함을 해소하는 사람
Q. 병욱님이 생각하시는 ‘개발자’에 대한 정의를 내려주세요!
저는 개발자란 ‘고객의 불편함을 해소시켜 주는 사람’이라고 생각합니다. 개발이라는 직무의 궁극적인 역할은 소프트웨어상에서 고객이 겪는 문제를 해결해 주는 것이라고 생각해요.
그렇기 때문에
제가 생각하는 미숙한 개발자는 ‘수동적인 개발자’예요. 개발 업무를 하다 보면 기술적으로 난관에 부딪힐 때가 있어요. 하지만 문제를 잘 살펴보면 정말 다양한 해결책을 찾을 수 있습니다. 하지만 미숙한 개발자는 어려운 일을 마주하면 ‘이건 어려워서 못 해요’하고넘어가려 합니다. 이런 수동적인 태도가 업무의 진전을 방해한다고 생각해요.
반대로, 좋은 개발자는 역시 ‘능동적인 개발자’라고 할 수 있겠네요. 실제로 서비스를 사용하는 고객의 입장에서 생각해 보고 불편한 부분을 능동적으로 찾아서 해결하려는 것이 좋은 개발자가 되기 위한 바람직한 태도 같아요. 그래야 서비스도 자연스레 발전할 수 있거든요.
프로젝트에 투자하는 시간만큼 늘어나는 개발자의 역량
협업에 계시면서 신입부터 시니어까지 많은 개발자들을 만나보셨을 텐데 ‘일 잘하는 개발자’만의 특징이 있다면 무엇일까요?
제가 현업에서 봤을 때, 일을 잘하는 개발자들의 공통된 특징은 굉장히 많은 시간을 개발에 투자한다는 거예요. 모든 일이 그렇지만 시간을 많이 투자하면 투자할수록 능률은 올라가게 되어 있습니다.
특히 입문 개발자라면 업무 외에 추가적으로 더 많은 시간을 개발에 투자하셔야 해요. 오랜 시간을 개발 공부에 투자하기 위해서 ‘나는 이걸 해낼 수 있다’는 마음가짐도 필요한 것 같아요. 마음가짐이 잘 갖춰져야 끈기도 생기는 법이니까요.
Q. 현업에서 실무를 하시면서 ‘아, 이건 미리 경험하거나 배웠다면 좋았겠다’하는 것이 있었나요? 그 이유까지 알려주세요.
실무에 투입되기 전에 실제 고객들이 사용하는 서비스를 개발해 봤으면 좋았을 것 같았습니다. 단순히 포트폴리오를 위한 프로젝트와 달리, 고객들이 사용하는 서비스를 개발하면 새로운 것들을 정말 많이 배울 수 있거든요!
고객들이 내가 의도한 대로 행동하지 않는 돌발 상황, 서비스 속도가 느려졌을 때 문제점, 다양한 에러 상황 등등 실제 서비스 사용 과정에서 발생하는 문제들을 겪어본 개발자와 그렇지 않은 개발자는 실력 차이가 꽤 많이 난다고 생각해요.

서비스 ‘운영’ 경험을 보유한 개발자로 성장할 기회
Q. Kernel360의 커리큘럼의 장점은 무엇이라고 생각하시나요?
충분한 기간 동안 실제로 서비스를 운영해 볼 수 있다는 것이 Kernel360의 정말 큰 장점이에요. 실제 운영 과정에서는 예상치 못한 일들이 다양하게 발생하거든요. 그렇기 때문에 개발이나 배포뿐만 아니라 운영 경험을 쌓는 것도 굉장히 중요한데 서비스 운영까지 경험하는 것은 사실상 쉽지 않죠. 이번 Kernel360은 부트캠프와 달리 서비스 운영 경험이 있는 백엔드 개발자로 성장할 수 있다는 점에서 정말 흔치 않은 기회인 것 같아요.
무엇보다 5개월이라는 충분한 기간 동안 진행되는 메인 프로젝트가 있다는 점에서 부트캠프를 많이 보완한 것 같아요. 사실 시중에 나와 있는 부트캠프의 프로젝트들은 작업기간이 짧아서 *클론 코딩이나 포트폴리오용 프로젝트에 그쳤던 것 같거든요.
* 클론코딩: 실제 만들어진 서비스 등을 따라 만들어 보면서 배우는 공부 방식
부트캠프 파이널 프로젝트의 경우, 프로젝트 작업 시간이 더 있었으면 좋겠다는 수강생들의 피드백이 많았다고 들었는데 Kernel360은 오직 프로젝트만 진행한다는 점에서 수강생들의 만족도도 높을 것 같습니다. 이번 교육 과정에서는
개발 교육 전문가로 구성된 ‘디렉터’ 분들이 사수 역할을 해주신다고 하니 수강생들이 백엔드 개발자로서 전문성을 갖출 수 있을 것 같아 기대됩니다.
실무 프로젝트를 통한 배움에는 한계가 없어요
Kernel360은 강사, 강의 없이 온전히 프로젝트로만 이뤄진 과정인데요. 이런 커리큘럼이 예비 개발자들의 성장에 어떻게 도움이 될 것이라고 생각하시나요?
예비 개발자들, 초보 개발자들의 비약적인 성장에 도움이 될 거라고 생각합니다! 이론 학습은 사실 어디에서나 배울 수는 있어요. 어느 정도 개발에 대한 지식과 기초 실력을 쌓는 건 누구나 할 수 있지만, 진짜 중요한 것은 그 이후에 스스로 배우는 과정이에요.
왜냐하면 이론 학습으로 배울 수 있는 것에는 한계가 있지만 실무에서 배울 수 있는 것에는 한계가 없거든요! Kernel360은 실무 프로젝트를 중심으로 팀 회고, 멘토링, 특강을 통해 인사이트를 얻는 교육 과정이기 때문에 기초가 다져진 예비 백엔드 개발자들의 사고력과 응용 능력을 키워줄 것이라고 생각합니다.
Q. 어떤 사람들에게 Kernel360을 추천하고 싶으신가요?
부트캠프를 통해 백엔드 개발자로서 기본적인 학습이 되어 있고,
‘이제는 프로젝트를 집중적으로 운영해 보고 싶다!’ 하시는 분들에게 강력하게 추천하고 싶습니다.
실제 백엔드 개발자들이 현업에서 사용하는 기술들을 전문가 디렉터와 멘토들로부터 배울 수 있기 때문에 미리 회사에서의 업무를 경험해 볼 수 있거든요. 이런 경험은 개인의 성장뿐만 아니라 취업 과정에서도 큰 어필이 될 수 있을 거라는 생각이 듭니다.
Q. Kernel360에 지원을 망설이는 분들께 조언 한마디 부탁드립니다.
Kernel360이 기존의 백엔드 부트캠프와 달라 지원하기를 망설일 수 있다고 생각하는데요. Kernel360은 스스로의 힘으로 배우고 성장하기에 매우 좋은 커리큘럼입니다. 실제로 고객들이 필요로 하는 프로젝트를 만들고 고객과 만나는 경험을 하고 싶다면 지금 바로 지원해 보세요!
다른 이야기가 더 궁금하다면