지금까지 개발자가 이렇게 좋은 대우를 받았던 적이 있을까? 내가 개발자의 길을 걷기 시작했던 1990년대 후반에서 2000년 초반 벤처 붐이 일면서 잠깐 반짝했던 것 같다.
하루가 멀다 하고 "전 직원에게 몇 백만 원의 연봉을 인상하기로 했다.", "몇 백만 원의 복지 포인트를 지원한다.", "100% 원격 근무로 전환한다."와 같은 뉴스가 들려오고 있다. 이 모든 뉴스들이 가리키는 것은 역량 있는 좋은 개발자를 유지하고 채용하고자 하는 간절함의 표현이다.
이와 같은 개발자의 처우 개선은 일반 사용자용 소프트웨어를 개발하는 서비스 개발 회사에 집중되고 있다. 물론 비서비스 개발 회사의 개발자에 대한 처우도 조금씩 나아지고 있지만 서비스 개발 회사의 처우 개선에 비해서는 부족한 현실이다. 그렇다 보니 서비스 개발 회사의 개발자와 솔루션, SI 개발자의 처우에 대한 격차가 점점 더 벌어지고 있다.
글 전개의 편의성을 위해 일반 사용자용 소프트웨어를 개발하는 회사로 사용자의 피드백을 받아 지속적으로 서비스를 개선해 나가는 회사, 소프트웨어가 회사의 매출에 기여하는 부분이 가장 큰 회사를 서비스 개발 회사로 지칭했으며, 그렇지 않은 SI, 업무용 소프트웨어를 개발 회사 등을 묶어 비서비스 개발 회사로 글을 전개했다.
그렇다면 비서비스 개발 회사에서 일하는 개발자의 처우가 부족한 것이 개발자들의 열정과 역량이 부족해서 일까? 나는 그렇지 않다고 생각한다. 개발자의 길을 걷기 시작할 때의 열정과 역량은 서비스 개발 회사의 개발자와 비서비스 개발 회사 개발자의 비슷한 수준이다. 하지만 시간이 지나면서 역량의 차이가 발생하고, 처우 또한 열악한 상황이 많다 보니 열정 또한 떨어질 수밖에 없다.
비서비스 개발 회사의 개발자들의 역량 차이가 발생하는 가장 큰 이유는 개개인의 역량이 부족하기 때문이 아니라 일하는 환경 때문이다. 어떻게 성장하는 것이 좋은 개발자로 성장할 것인지에 대한 로드맵을 보고 배울 선배가 부족하며, 성장하려는 열정이 있더라도 어디서부터 어떻게 시작해야 할지 막막한 것이 현실이다. 물론 개인의 노력을 통해 극복할 수 있는 것 아니냐고 반문할 수 있지만 주어진 환경의 틀을 깨고 다른 길을 걷는 것은 상당한 용기와 혜안이 필요하다. 그만큼 역량 있는 개발자로 성장하는데 주변 환경이 중요하다.
앞에서 잠시 언급했지만 서비스 개발 회사들은 개발자를 채용하기 위해 정말 다양한 수단과 방법을 동원하고 있다. 네이버, 카카오와 같은 업계 1, 2위 회사도 개발자를 구하지 못하는 상황이다 보니 스타트업의 어려움은 말로 표현하기 힘들 정도다.
개발자에 대한 처우는 계속해서 개선되고 있지만 개발자 채용은 점점 더 힘들어지고 현실이다. 개발자의 처우가 개선되고 있다는 뉴스는 자주 보이지만 상당 수의 개발자는 피부로 체감하기 힘들다. 이 둘의 불일치를 어떻게 해소하면 좋을 것인가가 교육자로서 고민이었고, 이에 대한 한 가지 해결책이 "NEXTSTEP for Enterprise Pro"라는 채용 연계형 교육 과정을 운영하는 것이었다.
나는 교육자의 길을 걷기 시작하기 전부터 대한민국 소프트웨어 생태계의 역량을 한 단계 높이려면 재직자에 대한 재교육이 필요하다고 생각했다. 지금까지 정부, 기업이 지원하는 거의 모든 교육은 취업자 교육에 집중되어 있다. 특히 국비지원 과정을 통해 무분별하게 많은 개발자들이 양산되고 있다. 정부, 기업 주도로 많은 소프트웨어 교육 과정을 운영하는 것도 의미 있다. 단, 이 같은 교육 과정을 통해 배출되는 교육생들의 역량이다. 짧은 기간 동안 집중적으로 학습한 소프트웨어 역량만으로 소프트웨어 회사들이 요구하는 역량을 갖추는 데는 한계가 있다. 단순히 취업만 성공했다고 끝나는 것이 아니라 이렇게 취업한 친구들이 다음 단계로 성장할 수 있는 환경을 만들어 주어야 한다. 계속해서 취업생 교육에만 집중할 것이 아니라 취업자 교육과 재직자 교육을 병행해 운영하는 것이 지금의 소프트웨어 개발자의 품귀 현상을 해소할 수 있는 방법 중의 하나이다.
2020년. 기업이 교육비를 지원하는 재직자에 대한 재교육 과정을 개설해 볼 수 있는 환경이 무르익었다고 생각했다. 오히려 더 일찍 시작했었어야 할 수도 있다.
교육생 입장에서는 교육비에 대한 부담을 최소화하면서 역량을 키우고, 좋은 회사로 이직할 수 있는 기회를 얻을 수 있고, 회사 입장에서는 부족한 개발자를 합리적인 비용으로 채용할 수 있다는 확신이 드는 순간 우아한형제들에 이 과정을 제안했다. 그렇지 않아도 개발자 채용에 대한 어려움을 호소하고 있던 상황이라 빠른 속도로 승인을 받을 수 있었다. 그렇게 우아한테크캠프 Pro 과정을 시작했다.
우아한테크캠프 Pro 교육 과정을 통해 달성하고 싶었던 학습 목표는 크게 두 가지였다. 첫째는 짧은 9주 동안 많은 지식을 전달하는 데는 한계가 있기 때문에 꾸준하게 자기 주도적으로 학습함으로써 프로그래밍에 대한 즐거움을 느끼도록 하는 것이다. 즉, 약간은 떨어져 있는 열정을 다시금 되살리고 싶었다. 둘째는 소프트웨어 장인으로 성장해 나가기 위한 로드맵을 제시하는 것이었다.
교육 진행 방식은 NEXTSTEP의 모든 교육이 그러하듯 미션 기반, 코드 리뷰 방식으로 진행해 별반 다르지는 않았다. 단, 위 두 개의 목표를 달성하기 위해 몇 가지 장치를 두어 운영했다. 나는 100% 무상으로 지원하는 것이 교육 효과 측면에서 좋지 않을 수도 있다고 생각한다. 이런 철학 하에서 교육비에 대한 지원을 2단계로 나눠 운영했다. 프리코스라는 과정을 통해 선발된 교육생에 대해 50%의 교육비를 지원한다. 교육 과정을 마치고 40명 중 20명을 우수 수료생으로 선발해 30%의 교육비를 추가로 지원하는 구조로 운영했다. 이 같은 구조로 운영하는 것이 교육에 대한 참여도를 높여 학습 효과를 높일 수 있다고 생각한다.
또 다른 장치는 지식을 전달하기 위한 강의 외에 개발자의 삶, 커리어 패스와 개발자의 로드맵 설계, 현재 겪고 있는 고민들을 공유하고 소통할 수 있는 네트워킹 데이를 별도로 운영했다. 교육생들의 설문 피드백을 보면 이론 강의도 좋았지만 다른 개발자와 소통할 수 있는 이 네트워킹 시간을 통해 많은 공감과 자신감을 얻을 수 있었다고 한다. 앞으로 어떻게 성장해야 할 것인지, 살아가야 할 것인지에 대한 방향을 설정하는데 도움을 얻었다고 한다. 지금까지 함께 소통할 선배, 동료 개발자가 부족했던 개발자들에게 작으나마 도움이 되었다는 피드백은 교육자로 살아가는 나에게도 큰 보람으로 다가왔다.
위와 같이 몇 개의 내적인 동기부여, 외적인 동기부여를 위한 장치를 만들고 교육을 운영한 결과는 내 기대 이상이었다. Next Step - 온라인 후기 글에서 볼 수 있듯이 NEXTSTEP은 몇 개의 데이터를 통해 교육생의 교육에 대한 만족도와 교육 효과를 측정하고 있다.
기존 재직자 과정 중의 하나인 클린코드를 위한 TDD with Java의 NPS(Net Promoter Score)는 65 ~ 80%, 미션 완료율은 평균 20% 내외이다.
"클린코드를 위한 TDD with Java" 과정은 오프라인으로 진행할 경우 5주 동안 4개의 미션, 온라인은 8주 동안 4개의 미션을 진행해야 한다. 회사 생활과 병행해야 하기 때문에 교육 기간 동안 4개의 미션을 완료하기가 생각보다 쉽지 않다. "우아한테크캠프 Pro"는 이 보다 미션 난이도가 높고, 9주 동안 6개의 미션을 완료해야 하는 과정이라 모든 미션을 완료해 수료하기 훨씬 더 어려운 과정이다. 그럼에도 불구하고 "우아한테크캠프 Pro"에 대한 미션 완료율은 77.5%에 달한다. 이 과정을 시작할 때 50%만 넘겨도 의미 있겠다 생각했는데 무려 77.5%다.
미션을 구현하고, 리뷰 요청을 하고 피드백을 받은 경험이 많으면 많을수록 교육에 대한 만족도가 높아진다. 그만큼 교육 과정을 통해 많이 배우고 성장했다고 생각하기 때문이다. 그래서일까? "본 과정을 다른 개발자에게 추천할 의향이 있는가?"라는 설문 결과를 통해 추출한 NPS 점수가 97%에 달한다. 지금까지 재직자 과정을 여러 번 운영해 봤지만 90%를 넘은 적은 처음이다. 그것도 가장 난이도가 높은 과정에서 말이다.
교육 결과는 좋았다. 그렇다면 이런 좋은 교육의 결과로 몇 명의 개발자가 우아한형제들 입사에 성공했을까? 최종 합격한 개발자의 수는 6명이다. 많다면 많고, 적다면 적은 수이다. 합격자의 수가 더 많았다면 우아한형제들도, 교육생들도 더 좋았겠지만 꼭 채용에 성공한 것만으로 우아한테크캠프 Pro 교육의 효과를 논하기는 힘들 것 같다.
우아한테크캠프 Pro 교육 과정에 참여하면서 9주 동안 얻은 자신감, 프로그래밍에 대한 즐거움, 소프트웨어 장인에 도전하려는 개발자들이 남았다. 이 개발자들이 좋은 개발자로 성장해 대한민국 소프트웨어 생태계에 기여하는 모습을 보는 것이 우아한테크캠프 Pro 교육이 진정 효과가 있었다는 것을 증명할 수 있을 것이다. 그런 효과를 볼 수 있는 날이 오기를 기대해 본다.
"열정적으로 코딩을 할 수 있다." 때문에 추천할 거 같습니다. 이번 2달 동안 코드리뷰를 받으면서 정말 열정적으로 코딩할 수 있는 경험이었습니다
이렇게 몰입하며 즐겁게 코딩해볼 수 있는 과정이 우리나라에 없기 때문입니다.
처음엔 본인이 알고 있던 것을 버리고 다시 새로 받아들이는 과정이 힘들 순 있지만, 힘든 만큼 모든 과정이 끝난 후 코드에 대한 관점이 바뀐 걸 느낄 수 있었습니다. 교육비는 배움에 비해 정말 적은 편이고, 2개월 동안의 짧은 과정이지만 개발 인생이 달라질 거라고 기대합니다.
자기 성장이나 좋은 코딩 습관을 들이고 싶은데 어떻게 시작해야 할지 막막할 때, 혹은 구체적인 방법을 몰라 가이드가 필요하다면 아주 적절한 교육일 것 같아요. 하나의 주제를 가지고 다양한 사람들의 다양한 시각을 접할 수 있는 부분도 좋았습니다.
확장성, 생산성, 신뢰성 높은 코드를 생성하면서 개발에 대한 자신감도 생기고, 유익함도 매우 큰 과정이다.
앉아서 가만히 듣는 수업보다 직접 미션 기반 프로젝트를 진행하면서 교육을 들어서 수업 효과가 배가 된 거 같습니다.
겉만 자바 개발자, 프로그래머가 아닌 진정한 소프트웨어 개발 전문가로서 자바를 사용하는 프로그래머로서 성장할 수 있는 좋은 교육이었습니다.
대부분의 회사들이 개발을 잘하는 방법보다는 빨리하는 것을 원하는데 그 고정관념을 좀 깨줄 수 있을 것 같다.
자신의 한계로 도전해볼 수 있는 좋은 기회라서 적극 추천하고 싶습니다. 항상 강의를 들으면서 100%를 배우진 못하지만 성장할 수 있는 계기, 생각의 틀을 깰 수 있는 계기를 만들어주는 기회라서 꼭 추천하고 싶습니다.
이렇게 많은 시간을 꽉 차게 헛되지 않은 공부에 투자할 수 있는 건 인생에서 그리 많지 않은 기회라 생각합니다. 스스로 공부할 방법을 몰랐던 개발자에게 이정표가 되어주는 과정이고, 앞으로도 스스로 공부할 수 있는 힘을 길러주는 과정이었습니다.