팀스파르타 개발 인턴십 후기

author_profile장현석

안녕하세요. 저는 최근 팀스파르타 개발팀에서 7개월간의 인턴십을 마무리한 장현석입니다. 인턴 개발자로 근무한 경험과 느낀 바를 솔직하게 공유하고자 이 후기를 작성하게 되었습니다.

1. 인턴 지원동기 및 과정

먼저 제 소개를 드리자면, 저는 현재 뉴욕 대학교 아부다비 (New York University Abu Dhabi) 에서 Computer Science를 전공하고 있는 대학생입니다. 소프트웨어 엔지니어링에 관심이 많아 틈틈이 자바스크립트를 독학해왔었지만, 어느 순간부터 제 성장의 한계를 느꼈습니다. 피드백 없이 작성한 제 코드가 최선인지 판단이 안 서 자신감이 없었고, 제가 배운 내용이 실무와 얼마나 밀접한지도 항상 의문이었습니다.

그러던 4월 초, 저는 우연히 팀스파르타 인턴 개발자 채용 공고를 보게 되었는데요. 인턴십을 통해 실제 서비스의 개발 프로세스를 경험하면, 제가 평소에 느꼈던 답답함과 궁금증을 해결할 수 있을 거란 생각이 들었습니다. 그리고 때마침 시차도 안 맞는 비대면 수업에 지쳐 휴학을 하던 중이어서, 학업 병행에 대한 걱정 없이 바로 지원 할 수 있었습니다.

이후 저는 팀스파르타 개발자 분들과 2차례 인터뷰를 하게 되었습니다. 사실 인터뷰 자리는 처음이어서 당시 긴장을 많이 했고, 특히나 많이 버벅(?)거린 기억이 납니다. 하지만 다행히 그때까지 자바스크립트, 특히 React를 공부해본 경험과, 기술적으로 더 성장하고 싶은 제 의지를 긍정적으로 평가해주셔서 이후 합격 연락을 받을 수 있었습니다.

2. 팀스파르타에서의 업무들

팀스파르타의 프론트엔드는 React 기반, 그리고 백엔드는 Python Flask 기반으로 기술 스택이 구성되어 있습니다. 저는 그동안 프론트엔드와 백엔드를 가리지 않고, 정말 다양한 범위의 개발을 경험 할 수 있었는데요.

많은 개발을 했었지만, 그중에서도 굵직굵직했던 작업 위주로만 설명해 드리자면, 일단 입사 직후에는 온보딩 태스크로 B2B 페이지를 만들게 되었습니다. 그리고 점차 코드베이스에 어느 정도 익숙해지면서 스파르타코딩클럽 수강환경에 힘을 보탰습니다. 마이페이지 UI 개선, 코딩 레이스 페이지, 코딩스파랜드 관련 개발 등을 이 시기에 했었는데, 당시 궁극적인 목표였던 수강생 완주율이 크게 개선되자 매우 뿌듯했던 기억이 납니다.

8월부터는 부트캠프 항해99의 개발 및 운영을 담당했습니다. 레거시가 많았던 백엔드의 리팩토링을 시작으로, 체크인 페이지 타이머 기능 도입 및 관리, 그리고 채용 플랫폼을 개발했습니다. 제 마지막 프로젝트는 기존 프론트엔드를 Next.js 로 전환하는 작업이었는데요. TypeScript, Recoil, Cypress 등 그 전까지 개발팀에 도입되지 않았던 기술들을 공부해보고 과감하게 사용할 수 있어서, 제일 도전적이면서도 즐거웠던, 그리고 제일 몰입 했던 태스크가 아니었나 싶습니다.

해당 업무들을 지난 7개월 동안 하면서 제일 많이 얻었던 건, 바로 프로덕션 환경의 경험치였습니다. 기획한 아이디어들을 최대한 빠르게 기술적으로 적용 하고, 그 적용된 결과들을 고객 관점에서 바로 피드백을 받고 다시 반영하는 건, 어디서든 쉽사리 경험 할 수 없는, 오직 스타트업 이기에 가능했던 값진 경험이라고 생각합니다.

사실 인턴 개발자에게 혼자 업무를 배정하는 건, 회사 입장에서 큰 리스크 입니다. 업무와 함께 제게 주어지는 기대감과 책임감의 무게를 잘 알기에, 그 만큼 주어진 개발 사항 하나하나에 최선을 다해 임했고, 또 그만큼 많이 배우고 성장할 수 있었던 거 같습니다.

3. 개발팀 문화

직무에 대한 만족도는 당연하게도 조직 문화에 따라 크게 달라집니다. 저는 정말 훌륭한 개발팀에 소속되어 그동안 즐겁게 일을 할 수 있었는데요. 이번에는 제가 정말 좋다고 느꼈던 개발팀의 문화에 대해 소개해 드리고자 합니다.

동반 성장을 위한 스터디

일단 팀스파르타의 개발팀은 회사와 개발자의 동반 성장을 추구한다는 점이 매우 만족스러웠습니다. 개발을 하다보면, 우물 안 개구리가 된 거 같은 기분이 들 때가 간혹 있습니다. 제 코드보다 더 깔끔하고 합리적으로 기능을 구현하는, “Best Practice” 가 있을 거란 짐작을 자주 하게 됩니다. 다행히 제가 속해 있던 개발팀은, 팀원 전부 스스로의 기술적 역량을 높이고 싶은 욕심이 강한 분들이었는데요. 코드에 대한 얕은 이해도를 가지고, 기능 구현에 안주하는 개발자가 되지 않도록, 저희는 개발 서적 스터디를 진행하게 되었습니다.

시작은 매주 목요일, 개발팀 주간 회의에 각자 맡은 <클린 코드> 내용을 요약하여 발제하는 거였습니다. 이 책을 통해 좋은 코드를 짜기 위한 여러 가지 방법론을 접하다 보니, 기존 코드에 대한 조용한 자기반성과 함께 배운 점을 조금씩 적용해나가는 재미를 느꼈습니다. 그전까지 제 코드를 어떻게 개선할지 몰라 느꼈던 답답함을 어느 정도 해소하는 것은 덤이었구요.

이후 개발팀이 MSA 전환을 준비하면서 스터디는 더욱 체계적으로 발전했습니다. 이름하여 ‘수요지식회’로, 매주 수요일 점심은 <파이썬으로 살펴보는 아키텍쳐 패턴> 이라는 저서를 공부하는 시간이었는데요. <클린 코드> 스터디와 마찬가지로 매주 한 명이 맡은 부분을 발제하고, 그 내용에 대해 토의하는 형식이었는데, 개인적으로 이전까지 미지의 영역이었던 아키텍쳐 패턴을 접할 수 있어서 흥미로웠습니다. 또한 업무 특성상 각자 모니터만 보고 코딩하기 바쁜 개발팀이, 다 같이 식사를 하고 이런저런 주제에 대해 담소를 나누는 시간을 가지면서 팀워크를 다질 수 있었다고 생각합니다. 그리고 무엇보다 개발팀원 개개인의 기술적 성장을 회사가 지원한다는 점을 확인할 수 있어서 개인적으로 좋았습니다.

투명한 공유와 소통

팀스파르타는 각 엔지니어가 하나의 피처 개발을 담당하는 경우가 많았습니다. 각자 맡은 업무가 다른 만큼, 개발팀의 전반적인 콘텍스트를 잃지 않으려면 동료들을 지속적으로 팔로우업 하는 게 중요했는데요. 원활한 커뮤니케이션을 위해 개발팀이 도입한 소통방식들은 제게 무척이나 인상적이었습니다.

우선 개발팀은 매일 **데일리 스크럼 (Daily Scrum)**으로 하루를 시작합니다. 출근 후 본격적인 개발을 하기 전, 슬랙 채널에 각자 맡은 태스크의 진행 상황과 금일 할 일을 작성하고, 다 같이 모여서 재차 구두로 전달하는 형식이었는데요. 비록 짧게 진행되지만, 각자 업무 현황 파악과 함께 서로 질문과 조언을 주고받기도 해서, 하루를 여는데 알맞은 워밍업이었다고 생각합니다.

매주 목요일 오후에 진행되는 개발팀 주간 미팅 역시 좋은 소통의 창구였습니다. 팀스파르타는 “빠르게, 와우하게, 진정성있게” 일하기를 추구하기에, 주간 미팅에는 각 방식에 입각하여 각자 잘했던 점과 아쉬웠던 점을 복기하게 됩니다. 단순한 업무 공유에 그치는 게 아니라, 이러한 셀프 피드백을 통해 각 팀원의 기술적인 고민과 의견을 알 수 있었고, 한 팀으로서 더욱 성장하는 방안들을 같이 고찰할 수 있었습니다. 또한 피드백이라 하면 개선해야 하는 부분들을 위주로 전달해야 된다는 인식이 있었는데, 개발팀 미팅에서는 자신에게 칭찬하는 부분을 따로 할애한다는 점이 흥미로웠습니다. 처음에는 매우 어색했지만, 개발을 하면서 스스로에게 뿌듯했던 경험을 되돌아 보게 되고, 점차 제 자신에게 자신감을 불어넣어 주는 장치였다고 생각합니다.

마지막으로 개발팀원은 매달 한 번씩, 팀장님과 단둘이 1:1 미팅을 가지게 됩니다. 이 시간의 가장 큰 주제는 회사에 대한 저의 피드백이었습니다. 간혹 업무에 관한 고민이나 개인적인 바램들이 생기면 솔직하게 털어놓을 수 있는 시간이었는데요. 제 피드백을 단순한 푸념으로 흘려보내는 게 아니라, 진지하게 회사의 개선 사안으로 받아들이시고 해결방안을 모색하시는 모습을 보며, 비록 인턴이지만 조직원으로서 저를 존중해주신다는 느낌을 받을 수 있었습니다. 더불어 1:1 미팅은 일종의 멘토링 시간이기도 했습니다. 제가 앞으로 더 성장하기 위해 어떤 노력을 하면 좋을지, 혹은 어떤 프로젝트를 하면 좋을지 조언을 해주시고, 서로 의견을 나누기도 했습니다. 이처럼 지속적인 헬스 체크와 피드백 공유를 통해, 제가 온전히 업무에 집중할 수 있도록 많이 신경 써주셨습니다.

4. 마무리

4월에 입사 했을 때, 회사 생활이 처음이라 많이 얼어붙어 있었고, 사실 기대 보다 걱정이 더 앞섰습니다. 하지만 지금 되돌아보니, 지난 7개월이란 시간은 놀라울 정도로 빠르게 지나갔다는 느낌이 듭니다. 학업으로 돌아가야 하는게 아쉬울 정도로, 그만큼 팀스파르타에서의 생활은 즐거웠습니다.

주니어 개발자가 빠르게 성장할 수 있는 개발문화를 갖춘 회사라, 인턴십 동안 React, Flask, AWS 등 기술적으로 많은 것을 배울 수 있었습니다. 하지만 무엇보다도 팀스파르타에서 가장 크게 얻어가는 것은 개발에 대한 흥미입니다. 제가 직접 개발한 기능이 사용자들에게 도움이 되는 걸 보면, 엄청난 뿌듯함을 느끼곤 했는데요. 그 성취감을 위해, 어느 순간부터 출퇴근 하는 신분당선에서 모르는 부분들을 구글링하는 등, 평소에도 개발 사항들을 어떻게 잘 구현할지 고민하는 제 모습을 발견할 수 있었습니다.

솔직히 인턴십 도중 힘든 순간이 아예 없진 않았습니다. 가끔 개발자로서 제 부족함을 체감한 날이면, 쫓기듯 하루를 바쁘게 살았는데도, 성장이 정체될 거란 불안감에 쉽사리 잠에 청하기 어려웠던 적이 있었습니다. 특히 항해99를 맡게 되었을 때, 큰 부담감으로 다가왔던 기억이 납니다. 그럼에도 그런 슬럼프를 빨리 극복할 수 있었던 건, 결국 좋은 동료들 덕분이라고 생각이 드는데요. 제가 실수를 해도, 매번 책망보다는 격려를 해주는 분들이 주변에 있어, 자신감을 잃지 않고 열심히 달릴 수 있었습니다. 개발자로서의 첫 출발을, 팀스파르타라는 따뜻한 곳에서 따뜻한 분들과 함께 했다는 점이, 제게는 여러모로 큰 행운 이었던 거 같습니다.

Copyright ©2022 TEAMSPARTA. All rights reserved.