회사 소개
home
Code States
home
🧬

IT제품으로 교육경험을 개선해요, 두현/동훈님

포지션
Software Engineer
EXP
발행일
2022/06/09
코드스테이츠 부트캠프에 지원하시는 분들, 교육과정을 수강 중이신 분들은 모두 EXP팀에서 만든 IT 제품을 활용하게 됩니다. 수강생 분들이 오롯이 학습에만 집중하실 수 있도록 좋은 제품을 통해 돕고 계신 EXP팀의 개발자 두현님과 동훈님을 소개합니다!
두현님
동훈님
코드스테이츠 엔지니어링팀 구성
EXP (Educational eXperience Product, 교육경험 제품팀)
ISP (Internal System Product, 인터널시스템 제품팀)
WWP (WEWIN Product, 교육후불제 플랫폼 제품팀)

Q. 안녕하세요 두현님, 동훈님! 간단한 자기소개와 교육경험제품(EXP)에 대한 구체적인 설명을 부탁드려요.

EXP : Educational eXperience Product 의 약자
두현님
EXP팀에서 Software Engineer 로 근무하고 있는 김두현입니다. EXP는 Educational eXperience Product의 약자에요, 표현 그대로, 코드스테이츠의 ‘교육 경험’을 제공하고, ‘부스트’ 할 수 있게 하는 IT 제품 및 인프라를 의미해요. EXP팀은 ‘유어클래스’ 라는 LMS(Learning Management System) IT 제품에서 교육 기능을 담당하고 있어요.
유어클래스는 크게 3가지의 교육 경험을 전달하는 축이 있어요.
1. 교육 컨텐츠 제공 (문서, 영상, 퀴즈 등)
2. 코딩 테스트
3. 커리어 교육 및 관리 (이력서)
교육을 제공받는 교육생분들 뿐아니라, 교육을 더 효율적으로 제공 운영하기 위한 백오피스 역시 EXP 제품에 중요한 요소입니다. 또한, 유어클래스 IT 제품 뿐 아니라, 교육 경험 제공에 관한 IT 인프라 전반을 EXP 제품 영역으로 정의하고 있습니다.
동훈님
안녕하세요! EXP팀에서 Software Engineer로 근무중인 김동훈입니다. 제가 속한 EXP팀은 수강생들의 교육 경험을 극대화 하고, 수강생들이 학습에만 집중 할 수 있도록 도와주는 IT제품을 만들고 있습니다.
기본적으로는 ‘urclass’라는 LMS 웹 서비스를 통해 수강생들에게 교육과 관련된 코드스테이츠의 가치를 전달하고 있어요. 또한 코드스테이츠 내부 크루들의 수강생 관리를 돕기 위해 ‘urclass admin’의 교육 관련 부분을 담당하고 있습니다.

Q. 두 분이 팀 내에서 맡고 계신 역할이 궁금해요. 각각 어떤 일들을 해주고 계신가요?

두현님
저희는 고객에게 가치를 전달하는 하나의 단위를 스토리(Story) 라고 칭하고 있어요. 기본적으로 팀내 Software Engineer는 스토리를 기술적으로 구현하는 역할을 하고 있습니다. 스토리를 구현하기 위해서는, 팀내 Product Designer, Product Manager와의 긴밀한 협업이 필요해요. 저희는 스토리를 중심으로 고객에게 어떤 가치를 전달하는지, 왜 전달하는지, 어떻게 전달할지에 대해 끊임없이 토론하고 논의해요.
저는 백엔드 기술 영역을 중점적으로 구현하고, 관리/운영하고 있습니다. 백엔드 / 프론트엔드에 각기 중심이 되는 영역들을 나누고 있지만, 기본적으로 스토리 하나를 1명의 Software Engineer가 구현할 수 있도록 지향하고 있어요. 따라서, 백엔드 영역의 구현만이 아닌, 프론트엔드 개발도 함께 진행하고 있습니다. 백오피스 개발은 가끔 하고 있습니다.
또 위에서 언급한 유어클래스 개발을 맡고 있어요. 문제 없이 서비스가 제공 될 수 있도록, 인프라 관리 및 모니터링 관리, 개선 업무를 하고 있습니다. 또한, 코드스테이츠 교육사업부가 데이터 기반으로 움직일 수 있도록, 데이터 접근성을 높이기 위한 노력들을 하고 있어요.
동훈님
EXP팀 Software Engineer로서 제 역할은 가치를 구현하는 것이라고 생각해요. 내부 크루 및 수강생의 니즈를 PM이 파악하고, 이 니즈를 디자이너가 실체화 한다면, 저는 엔지니어로서 유저에게 전달 할 수 있도록 제품으로 구현하고 있어요. 그 중에서도 저는 유저가 직접 접하게 되는 클라이언트 구현의 역할을 주로 맡고 있어요. 아직까지는 클라이언트 구현 위주지만, 추후에는 구분 없이 하나의 스토리를 통해 하나의 가치를 구현하고 전달하는 것을 목표로 하고 있습니다. 제품 개발 이외에도 코드스테이츠 제품의 통일성을 위해 디자인 시스템 구축과 디자인 개선등의 업무도 병행 하고 있습니다.

Q. EXP팀의 개발 환경과 개발 문화에 대해 소개해주세요.

두현님
고객의 가치를 효율적이고, 효과적으로 전달하는 것이 가장 중요해요. 따라서, 우리의 개발시간(cycle time), 시작부터 전달되는 시간(lead time)들을 관찰하고, 이를 더 효율적으로 개선하기 위해서 업무 관리 툴로 Jira를 활용하고 있어요. 업무 관련 소통은 기록을 위해 지라를 우선하고 있고, 그 외 소통은 Slack을 통하고 있어요. Github을 통해 PR, Code Review를 하고 있고, Git을 통해 소프트웨어 형상관리를 하고 있습니다.
Code Review는 저희 팀의 시행착오를 줄이고 서로의 지식과 배움을 공유하기 위해서 적극적으로 하고 있습니다. 코드의 옳고 그름 보다는 Why에 대한 생각을 나누고, 어제보다 더 나은 소프트웨어가 되기 위한 이야기들을 나누고 있어요.
현재는 팀 인원이 많지 않다보니, 언어의 통일을 위해 Typescript, Node 기반으로 프론트엔드/백엔드를 구성하고 있어요. 다만, 더 좋은 동료들과 다양성, 배움을 위해 어떠한 기술에도 열려있는 상태입니다. 현재 운영중에 있는 제품의 서버는 express를 기반으로 하나, 지금까지의 배움과 효율성을 위해 nestjs 기반의 서버를 지향하고 있습니다. 인프라는 모두 AWS 기반 클라우드 상에서 운영하고 있습니다.
동훈님
지라의 스토리 단위를 기반으로 업무를 진행하고 있습니다. 하나의 스토리를 구현하기 위해서는 구성원들간 긴밀한 협업이 필요하기 때문에, 이런 협업과 소통을 위해 Slack을 사용하고, 리모트 근무 시 Remotion 이라는 툴로 미팅을 진행하고 있어요. 추후에는 지라에 모든 것을 남기는 것을 생각하고 있습니다.
기본적으로 EXP팀의 Software Engineer가 하나의 스토리를 구현하는 것이기 때문에, 업무에서 프론트엔드/백엔드가 나뉘어져 있지는 않지만, 아직까지는 제가 프론트엔드 위주로 업무를 진행하고 백엔드 개발이 필요한 부분은 두현님과의 협업을 통해 진행하고 있어요. 또 클라이언트 구현을 위해 React와 Typescript, GraphQL을 사용하고 있습니다.

Q. 두분의 하루 일과를 간단히 소개해주세요.

두현님
저는 지라 칸반보드를 확인하고 오늘의 대략적인 하루가 어떨지, 어떤 일들이 완료될 수 있을지, 그리고 어떤 업무를 공유하고 공유받아야 할지 생각하며 하루를 시작해요. 고객과 직접 소통하는 것을 좋아하는 편인데, 회사의 폭발적인 성장으로 인해 정말 많은 고객들이 있다보니, 현재는 PM과 주로 소통하면서 업무를 하고 있습니다.
운영 중인 제품이다보니, 예상치 못한 업무도 존재하는 편이에요. 좀 더 안정적으로 업무하고, 개발할 수 있는 시간을 확보하기 위해, 팀 전체가 월/주 단위 회고를 통해 더 효율적으로 임팩트를 낼 수 있도록 노력하고 있어요. 간간히 동훈님, 다른 제품팀의 개발자 분들과도 이야기를 많이 나누는 편입니다. 다들 열정적이셔서 이야기를 나눌 때 성장에 관한 자극이 많이 되는 것 같아요.
루틴을 한문장으로 나열해보면, 칸반 보드 보고, 개발하고, 코드 리뷰를 요청하고, 깃허브 내에서 대화를 하고 지라를 통해 업무를 공유하고 슬랙으로 팀원분들과 농담도 하기를 반복하면서 그렇게 하루 하루가 가는 것 같아요.
동훈님
출근 후, 구글 캘린더를 확인하여 하루의 일정을 대략 파악합니다. 이슈가 없을 때는 현재 스토리를 우선하여 개발 작업을 진행하고, 코드스테이츠 슬랙의 #prd-lms 채널을 통해 이슈가 공유되면, 상황에 따라 이슈를 대응하고 있습니다. 그 외에도 일주일에 한 번 정도 디자이너와 협업을 통해 현재 프로덕트의 디자인적 개선점을 찾아 수정하는 시간을 가지고 있습니다.
코드스테이츠에는 업무 시간에도 회사 구성원들과 자유롭게 얘기 할 수 있는 커피타임 문화가 잘 되어 있는데요. 이런 커피타임을 활용하여 다른 팀 구성원들과도 관계를 쌓으며 업무를 진행하고 있습니다.

Q. EXP팀의 프로덕트는 다른 프로덕트와 비교해서 개발자들에게 어떤 매력 포인트가 있나요?

두현님
첫째는 이전에는 생각하지 못했던 다양한 고민들을 할 수 있다는 점이에요. 교육 제공을 위한 LMS 서비스는 Public 서비스 형태라고 하기에도, Private 서비스 형태라고 하기에도 조금 어려운 것 같아요. Private 서비스에 가까우면서도 현재는 지원하는 행위, 그리고 누구든 우리의 웹페이지에 접근할 수 있다는 점에서 Public 서비스라고 할 수도 있을 것 같습니다. 저희 팀이 교육 도메인에 집중된 프로덕트를 담당하고 있지만, 현재는 중첩되어 있는 번혁의 시기이기도 합니다. 이 때문에 정말 생각지도 못한 고민들을 해야하는 것이 매력일 수 있을 것 같아요.
두번째는 제가 교육이라는 도메인에 관심이 있어 코드스테이츠에 합류했다보니, 이 도메인 중심으로 제품을 만드는 것 자체가 매력적인 것 같아요. 고객에 대해서 이야기해보면, 첫번째 고객인 학습자(수강생)분들이 단순히 우리 제품을 통해 교육 컨텐츠를 소비하거나 사용하는데 그치지 않고, 그들의 모든 학습 이력과 행동에 관심가지는 것이 일반적인 커머스에서 사용되는 마케팅, 제품 전략과는 확연히 다르다는 생각이 들어요. 이 때문에 실험적으로 해야할 일이 너무나 많고, 빠르게 해야하면서 재사용할 수 있어야 하는 지점들이 어려운 문제들로 느껴지곤 했습니다. 이러한 점이 저한테는 매력적이었던 것 같아요.
마지막으로 제품 사용자의 피드백을 많이 들을 수 있다는 것이 매력적이에요. 첫번째 고객뿐 아니라, 내부 고객(크루)들 혹은 교수자 입장에서의 제품도 매우 중요합니다. 결국 저희의 목적이 학습자(수강생) 분들의 성공이다보니, IT 제품이 이를 뒷받침할 수 있어야 하고, 단순한 어드민 앱이 아닌 교수자들의 사용성(UX) 혹은 데이터들을 다른 각도에서 보여줄 수 있어야 합니다. 저희 코드스테이츠에 워낙 열정적이고 의견들을 잘 내주시는 분들이 많은 편이라서, 개발자로서 단순히 개발하여 기능을 만드는 것이 아니라, 많은 분들의 피드백과 의견을 들을 수 있다는 점이 매력적이에요. 또한 고객측면을 넘어서서, 개발자로서 제품에 대한 의견을 많이 낼 수 있고, 그 실험들을 실제로 할 수 있다는 점도 매력적인 것 같아요
동훈님
제가 생각 했을 때 EXP팀 프로덕트의 매력포인트는 유저들에게 익숙한 서비스라는 것과 확장성이라고 생각해요. ‘LMS’라는 서비스 자체는 이미 유저들이 살면서 한번쯤 경험해본 서비스인 것 같아요. LMS라는 단어의 개념이 없더라도 대학교에서의 경험, 인터넷 강의 서비스, 학원 등에서 이미 서비스 되고 있는 다른 제품들이 시중에 많이 나와 있는 것과 유사하기 때문입니다. 이렇게 제품들이 많이 나와 있더라도 서비스를 운영하는 입장에서는 학습을 진행하고 있는 사람들의 정확한 상태 및 관련 데이터를 관리해야 보다 더 좋은 학습 경험을 제공할 수 있습니다. 유저와 서비스에 맞게 다른 제품을 제공해야 하는 말과 맥락을 같이 할 수 있을 것 같은데요. 이렇기 때문에 LMS서비스 자체는 반드시 필요한 서비스임과 동시에 분명히 같은 프로덕트지만 유저마다 다른 경험을 가질 수 있고, 서비스마다 다른 경험을 제공 할 수 있는 서비스라고 생각합니다. 이렇게 유저마다 다른 경험을 가지고 있기 때문에 괜찮았던 경험을 기반으로 저희의 프로덕트가 부족한 부분이 있다면 질적이나 양적으로 더 좋고 많은 피드백을 받을 수 있다는점이 저희 프로덕트의 매력포인트라고 생각해요.
또한 저희 프로덕트를 이용하시는 유저분들은 IT제품에 대한 관심이 있거나 관련 지식이 있으신 분들이기 때문에 보다 더 개발쪽으로 피드백을 받을 수 있다는 점도 관련된 매력포인트인것 같아요.
마지막으로 확장성에 대한 부분인데요. 부트캠프가 빠르게 성장하며 커리큘럼도 고도화되고 유저들도 많아졌습니다. 이에 따라 다양한 니즈들이 발생하고 있는데요. 이러한 니즈들로 인해 기능적으로도 더 발전할 수 있고, 저희 프로덕트의 방향성도 바뀔 수 있기에 이러한 확장성이 재밌습니다. 커져가는 프로덕트를 다루며 이슈도 분명히 있지만, 이러한 부분들을 고민하고 대응하는 것은 개발자 입장에서 매력적으로 다가오는 것 같아요.

Q. 지금까지 진행된 개발 과정에서 가장 흥미로웠던 것 또는 새롭게 배우신 것들이 무엇인가요?

두현님
가장 흥미로웠던 것은 동료 개발자만큼이나 PM, 디자이너와 함께 제품을 만든다는 점이에요. 각 직군이 함께 모여 제품을 기준으로 여러 토론을 할 수 있었던 것이 큰 경험이었다고 생각합니다.
그리고 개발 이야기를 하면, 스스로 모든 영역을 다 구현하는 것이 가장 즐거웠어요. 모든 영역은 프론트엔드, 백엔드, 인프라 영역 모두를 의미합니다. 그 과정에서 내가 모르는 것, 그리고 더 알고 싶은 점들을 찾는 과정이 저에겐 무척 즐거웠어요. 저는 백엔드 개발을 주로 하지만, 이상하게도 REST API를 만든 경험치보다 Graphql API를 만든 경험이 더 많아요. 이 곳에 와서 Graphql의 특수한 부분, 장점들을 익히고, 시도해볼 수 있었던 점이 즐거웠습니다.
동훈님
정말 모든게 새로운 것 같습니다. 그 중에서 가장 새롭게 느껴진 부분은 프로덕트에 대한 오너십인것 같아요. 이전 회사에서 제가 개발했던 것은 클라이언트가 원하는 부분을 구현하고 큰 이슈만 없다면 다시 이 코드를 들여다볼 일 자체가 없었습니다. 지금 생각해보면 분명 제가 작성했던 코드였지만 하루 빨리 제 기억에서 지우고 싶어 정말 ‘기능 구현’에만 초점을 맞췄던 것 같아요. 오직 ‘속도’에만 집중하면 됐었습니다.
반면 EXP팀에서 프로덕트를 개발할 때는 제가 짜는 코드가 어떤 결과를 가져올지 조금 더 신중하게 고민해야 했고, 작성했던 코드가 몇주 뒤 크리티컬한 이슈로 돌아오는 결과도 있었습니다. 이런 과정을 거치면서 저희팀 서비스에 오너십을 가지고 코드를 작성하는 것이 정말 중요하다는 생각이 들었습니다. ‘이 이슈를 마주치는 유저가 얼마나 될까’, ’굳이 하지 않아도 되지 않을까’ 하는 생각은 이제 제가 처리해야 하는 이슈들로 백로그에 쌓여있고, 언젠가는 반드시 처리해야 하는 이슈가 되었습니다. 또한 이런 이슈에 대응하기 위해 제가 짠 코드를 확실히 이해하고 있어야 하고, 새로운 것을 시도 할 때도 기존 코드와의 의존성이 있는지를 고려하는 과정을 통해 개발자로서의 오너십에 대해 새롭게 느낄 수 있었습니다.

Q. IT 제품은 예상치 못한 버그들이 종종 발생하곤 하는데요, 유어클래스 프로덕트도 그런 긴급 문제 상황을 마주한 적이 있나요? 어떻게 해결하셨는지 에피소드가 궁금합니다!

두현님
서버 장애가 일어나는 일은 특히나 마음이 철렁이고, 빨리 해결하고 싶은 주제인 것 같아요. 그 중 대표적인 일화로는 코딩 테스트 플랫폼 엔진 서버 장애 상황입니다. 저희는 ‘코플릿’ 이라는 코딩 테스트 플랫폼을 유어클래스 내에서 운영하고 있습니다. 코딩 테스트를 연습할 수 있도록, 누군가 작성한 코드에 대한 결과물을 확인할 수 있도록 별도 엔진을 개발했어요. 이러한 코딩 테스트 플랫폼의 사용자가 상상하지 못할 정도로 급속도로 성장하다보니, 인프라를 운영하면서 장애는 빈번하게 등장했었던 것 같아요.
또한, 시험을 보는 날의 특정 시간이 되면, 갑자기 트래픽이 증가되는 현상으로 어떻게 보면 시험일은 항상 긴급한 상황인 것 같기도 해요. 긴급한 상황은 운영 담당 크루분들에게 사내 슬랙을 통해 전파되기도 하지만, 기본적으로 AWS 클라우드 상에서 모니터링하고, 슬랙을 통해 전파됩니다. 이러한 전파 이후, 저희의 인프라는 모두 클라우드 상에서 제어하기 때문에 환경에 따른 적절할 조치를 취하고 있어요. 위와 같은 일들이 생기면서, 좀더 안정적으로 인프라 운영할 수 있도록 고민 (Auto Scaling, scheduled Scaling 등)할 수 있게 되어서 좋지만, 긴급 문제 상황은 일어나지 않는 것을 기원합니다
동훈님
저희 제품은 회원제로 운영되는데요. 로그인을 하지 않은 상태에서도 이용은 가능하지만 극히 제한되어 있는 기능만 사용 할 수 있습니다. 이런 상황에서 로그인이 되지 않는다는 이슈는 정말 급한 상황인 것 같아요. 유어클래스의 유저는 크게 예비 수강생, 현재 수강생, 수료생으로 나뉩니다. 이 중 예비 수강생(코드스테이츠 과정에 지원을 하는 단계)의 로그인이 되지 않았던 경우가 있었습니다. 제품을 개선하는 과정에서 유저의 상태를 구분하는 로직이 조금 꼬여 로그인이 되지 않았던 것인데요. 이와 같은 상황을 사내 슬랙을 통해 전달 받았고 바로 대응 했습니다. 하지만 서비스가 성장하면서 이런 일이 지속적으로 발생한다면 큰 문제가 될 것이기 때문에 이런 이슈가 제보 되기 전에 저희가 인지 할 수 있도록 개선이 필요하다고 판단했어요. 어떤 유저가 어떤 액션을 했고, 이로 인해 어떤 불편함을 겪는지 파악 할 수 있는 모니터링 시스템에 대한 필요성을 느꼈고, 이후에 sentry와 같은 모니터링 시스템 구축에 대한 고민이 있었습니다.

Q. 엔지니어링 데이가 있다고 하던데요. 엔지니어링 데이는 무엇이고 어떤 활동을 하는 자리인가요?

동훈님
코드스테이츠의 엔지니어링팀에는 저희 EXP 외에도 WWP, ISP라는 두 개의 팀이 더 있는데요. 엔지니어링 데이는 이렇게 세 팀의 구성원들이 모여서 서로의 경험과 기술을 나누는 자리입니다. 초기에는 Software Engineer 분들만 모여서 경험과 기술을 나누었는데요. 현재는 PM, 디자이너 분들도 함께 해주시면서 다른 포지션의 경험과 기술까지 공유하고 있습니다.
서로 협업을 많이 진행하지만 다른 포지션 분들이 어떤 고민을 하고있는지, 이런 것들이 나의 업무에는 어떻게 적용되는지를 알기는 어려웠는데요. 엔지니어링데이를 통해 이러한 부분들을 채워가고 있습니다. 개인적으로는 이런 것들이 결국 협업에도 도움이 될 것으로 생각하고, 같은 개발자들의 고민과 다른 포지션의 고민이 어떤식으로 해결이 될 수 있는지를 엿볼수 있어서 좋습니다. 또, 다른 팀원의 고민의 시작부터 끝까지 스스로 한번 더 고민할 수 있는 시간이기도 한 것 같습니다.

Q. EXP팀이 작년 연말에 제주도로 워크샵을 다녀오셨다고 들었어요! 워크샵에선 어떤 시간을 보내셨고 무엇을 얻어오셨나요?

동훈님
저는 현재 제주도에 거주하고 있습니다. 제주도 워크샵은 제가 입사하고 얼마 되지 않아 진행됐는데요. 저 한 명을 위해 다들 서울에서 먼 길 와주셔서 제가 EXP 팀에 적응하는데 큰 도움이 됐습니다. 팀이 빌딩되는 과정이었기 때문에 서로의 업무 성향을 파악하고, 관계를 쌓는 것에 조금 더 집중했었어요. 둘째날 한라산 등반을 통해 조금 더 원팀이 됐다고 생각합니다. 뒤쳐져 있을 때, 앞에서 기다리는 팀원들을 보며 조금 더 힘을 내기도 했고, 한두 번 봤던 팀원들이 굉장히 반가웠습니다. 개인적으로 낯을 많이 가리는 편인데 먼저 다가가는것도, 다가와 주시는것도 워크샵을 통해 조금 더 편해졌다고 생각합니다.
마냥 놀기만 하지 않고, 업무 프로세스를 정리하는 시간도 있었습니다. 아직까지도 지라라는 협업 툴이 익숙하지는 않은데요. 워크샵을 통해 지라로 업무를 어떻게 정의하고 어떤식으로 처리 할지 기본적인 개념을 가져올 수 있었습니다. 그리고 가장 궁극적인 목표인 ‘어떻게 가치를 전달할지’에 대해서 팀핏을 맞추는 과정이었다고 생각합니다. 저는 리모트 근무자이지만 워크샵 이후로 업무에서 소외된다는 느낌은 받을 수 없었고, 팀핏을 맞추는 과정에도 크게 어려움을 느끼지 못했습니다.

Q. 새로운 동료를 맞이할 때 중요하게 보시는 게 무엇인지 궁금한데요. 인터뷰에서는 주로 어떤 이야기들을 나누고 계신가요?

두현님
저는 다소 명확한 기준을 가지고 새로운 동료를 찾고 있어요. 업무적 협업에서 ‘의사소통’에 대한 고민을 많이 해보셨는지, 의사소통을 명확히 할 수 있는지를 가장 중요하게 여기는 것 같아요. 일상적인 대화로 예를 들어보면, “오늘 점심은 뭐가 좋을까요?” 라는 이야기를 할 때, “저는 오늘 무엇이 먹고 싶다" 혹은 “저는 오늘 아무거나 정말 괜찮다” 등 본인의 의사를 정확히 표현해주시는 것이 좋습니다. 이렇게 의사소통 할 때, 더 효율적으로 함께 일할 수 있다고 생각해요. (물론 점심먹을 때도 효율적일 필요는 없다고 생각해요 )
두번째로는, 앞으로의 지향점에 대해서 많이 보는 것 같아요. 현재 가지고 있는 능력과 태도보다, 앞으로 그 능력과 태도를 기반으로 어떻게 성장하고 변화할 수 있는지를 더 중요시 여기고 있습니다. 동료로서 자극받고, 성장하고 싶고 또한 저 또한 자극을 드리고 싶기 때문입니다. 그래서 지원자 분들과 인터뷰를 하기전에, 지원자 분의 정보를 최대한 많이 수집하고, 어떤 이야기를 하면 좋을지 지원자 분의 생각과 코드 등을 기반으로 준비하며 인터뷰를 진행하고 있어요. 그렇다보니 이력서나 본인의 생각이 담긴 다른 자료가 없을 경우, 인터뷰가 쉽지는 않은 것 같아요.
동훈님
저는 지원하신 분이 성장하신 스토리가 궁금해요! ‘성장’이라는 개념이 굉장히 추상적이고 사람마다 생각하는 정의가 모두 다르기 때문에 ‘성장을 어떤 것이라고 생각하시는지’, ‘언제 성장했다고 느끼시는지’ 등에 대해 이야기를 나누고 있습니다.
저는 현재 EXP팀 팀원들에게 영향을 많이 받고 있는데요, 저도 이렇게 팀원들에게 영향을 주고 팀원들의 성장을 돕는 사람이 되고 싶습니다. 그렇기 때문에 ‘어떻게 저에게 영향을 주실 수 있는지’ 혹은 ‘제가 어떤 영향을 줄 수 있을지’가 궁금한 것 같아요. ‘나를 성장시켜줘’와 같은 거만한 생각이 아닌 제가 지원하신 분의 성장에 도움이 될 수 있을지가 같은 맥락이어야 할 것 같다는 단순함입니다. 어떤 방식으로든 성장 자체에 대한 욕심이 많은 분이셨으면 좋겠고, 이 욕심을 단순히 ‘성장하는 개발자입니다.’와 같은 말보다는 본인만의 방법으로 표현해 주실 때 저는 더 궁금해지고 더 배워가는 것 같아요.
제가 생각하는 성장과 영향에 대해 조금 더 덧붙여보자면 저는 굉장히 게으르기 때문에 ‘꾸준하게 하는 것’이 저에게 있어 성장의 느낌을 주는데요, 이런 연장선으로 1일 1커밋을 최근까지 꾸역꾸역 했었습니다. 하지만 커밋을 까보면 의미없는 커밋들이 대부분이었는데요. 최근 인터뷰에서 얘기를 나눴던 분께서도 1일 1커밋을 진행하셨다가 어느 시점부터 멈추셨길래 관련해서 여쭤봤었습니다. ‘의미가 없다고 느꼈다’는 것이 그분의 대답이셨고 저에게는 영향을 주는 말이었던것 같아요. 1일 1커밋을 하기 전의 저에게는 이런 습관을 만드는것 자체가 성장포인트였지만 1일 1커밋을 통해 이미 습관을 만든 저에게는 더 이상 성장포인트가 되지 않는다는 것을 이 인터뷰 이후의 고민을 통해 느꼈습니다. 이제 다시 게을러진 저는 팀원들이 믿고 스토리를 맡길 수 있는 개발자가 되는 것이 저의 성장 포인트라고 생각하고 있습니다. 굉장히 추상적이지만 하나의 스토리를 처리하기 위해서는 스스로 기술적인 부분과 커뮤니케이션적인 부분도 성장해야 함을 알고 있습니다. 다음으로 EXP팀에 합류하시는 분을 통해 ‘팀원들이 믿고 스토리를 맡길 수 있는 개발자가 되는 것’에 관련해서 제가 생각하지 못한 부분을 느낄 수 있기를 욕심내고 있습니다.

Q. 마지막으로 미래의 엔지니어링팀 지원자 분들을 위해 한 마디 부탁드려요.

두현님
저는 함께 갈 수 있는 동료를 찾고 있어요. 함께 가려면 서로 의지하고, 이끌어갈 수 있어야 한다고 생각해요. 무엇보다 서로에게 자극이될 수 있는 동료라면 더 좋을 것 같아요. 저희 코드스테이츠의 비전과 함께, 특히 교육경험 제품팀과 함께 갈 수 있는 동료를 간절히 기다립니다!
동훈님
저희 엔지니어링팀은 고객에게 가치를 어떻게 전달할 지를 최우선으로 생각하고 있는 팀이라고 생각해요. 기술적으로는 가치를 기획, 실체화, 구현하는 과정을 거치고 이 과정에서 어떤 가치를 어떻게 전달할지 계속해서 논의하고 발전시켜나가고 있습니다. 가치전달에 관심이 많으시다면, 코드스테이츠 엔지니어링팀은 좋은 선택지가 될 수 있을 것이라고 생각해요. 저희가 기술적으로 엄청나게 뛰어나서 고객에게 최고의 기술적 가치를 전달하는 것은 아니지만, 끊임없는 고민을 통해서 무엇이 최선의 방법이고 어떻게 최선의 가치를 전달해 줄 수 있을 것인가에 대한 솔루션이 될 수 있다고 생각합니다. 개인적으로는 이 최선의 가치가 결국 나중에는 최고의 가치도 될 수 있다고 생각해요. ‘어떻게 고객에게 최선이면서 최고인 가치를 전달 할 수 있을지’ 저희와 함께 고민하고 나눌 수 있으면 좋겠습니다.
 EXP 팀의 영입 진행중인 포지션 보러가기
두현님, 동훈님과 함께 코드스테이츠에서 일하고 싶다면,
Code States Career 를 살펴봐주세요!