신입의 9개월간의 회고

kshired·2023년 7월 16일
3

신입으로 입사하여, 9개월동안 겪었던 일들과 생각들을 정리해보려고합니다.

온보딩

현재 다니고 있는 회사의 서버 챕터에서는 도메인 지식 공부 및 회사에서 사용하고 있는 기술들을 알아보게하게 하기 위해서, 약 2주간의 토이 프로젝트를 만드는 경험을 하게 됩니다.

그렇게 2주동안 토이 프로젝트를 만들면서, 회사 자체 내의 정보, 보안, 비전등을 알 수있게 도와주는 세션들에도 참여를 하게 되는데 정말 정신 없는 기간입니다.

토이 프로젝트 자체는 어렵지 않지만 그 기간 동안 서버 챕터 리드분과 함께 프로젝트의 코드 리뷰를 받으면서, 어떤 코드가 좋은 코드인지 아키텍처는 어떤게 좋은지에 대해 이야기할 수 있어서 매우 만족스러운 시간이였습니다.

팀 배정

운이 좋게도 세 개의 팀 중 하나를 선택할 수 있었고, 여러 고민을 한 결과 현재 팀을 가기로 했고 지금 팀에서 만족스럽게 일을하고 있습니다.

첫 3개월

한 달 차

온보딩 2주 이후 남은 2주 동안은 팀에 들어가자마자 해결할 수 있을만한 작은 이슈들을 여러 개 받았습니다.

생각보다 쉽게 해결할 수 있는 일이였고, 팀원들의 리뷰를 통해 팀에 배정받은지 약 이틀 정도 만에 첫 머지와 배포까지 해볼 수 있었습니다.

이 외에 한 것은 팀 내의 리뷰 문화 개선을 위한 GitHub Actions 만들기 였습니다. 제가 팀에 들어가기 전까지 현재 팀은 리뷰를 하긴했지만, 그것을 필수적으로 진행하고 있지 않았습니다. 이 부분을 개선을하고자, PR이 열렸을 때 자동으로 팀 내 멤버 중의 한 명을 리뷰어로 지정할 수 있는 GitHub Actions를 개발했고 그것을 현재도 매우 잘 쓰고 있습니다.

왜 GitHub에서 기본으로 제공하는 자동 할당 기능을 사용하지 않았나 궁금해 하실 수도 있는데, 자동 할당 기능은 RR 및 부하 분산 알고리즘 기반으로 동작하는데 이것이 아닌 완전 랜덤으로 지정하는 것이 필요하여 따로 개발하게 되었습니다.

이 외에도 여러 GitHub Actions를 개발하여, 팀 내 문화 개선 및 자동화에 도움을 주려고 노력하고 있습니다.

두 달 차

팀의 도메인을 적당히 파악했을 때쯤, 프로젝트를 진행하기 시작했습니다.

9개월 동안 크고 작은 프로젝트들을 많이 진행했는데, 제일 오래걸리고 복잡도가 높은 도메인이였어서 저를 포함하여 3명의 개발자가 함께 하였고 그것을 대략 한 달 동안 개발하게 되었습니다.

레거시에서 사용하고 있던 것을 개편한 뷰에 데려오는 작업이였으며, 이 작업을 통해 여러 직군과의 협업 방식에 대한 고민을 많이 하게 되었습니다.

이 때쯤 처음으로 배포를 통해 장애를 낸 것으로 기억하는데, 내부 툴 장애라서 매우 큰 문제가 아니였기도 했고 팀의 든든한 다른 개발자분들이 잘 백업을 해주셔서 빠른 롤백을 통해서 문제가 커지는 것을 막을 수 있었습니다.

세 달 차

세 달 차가 되는 12월에는 레거시부터 개편 프로젝트를 모두 함께 수정해야하는 프로젝트를 맡게 되었습니다. 레거시 프로젝트와 개편 프로젝트의 기술 스택이 매우 달라서, 그것을 진행하는 것은 쉽지 않았지만 이를 통해 팀 내에서 맡은 전반적인 도메인을 파악할 수 있는 기회가 되어 매우 의미 있는 경험이였다고 생각합니다.

하지만, 이 프로젝트가 B2B 프로젝트다 보니 협력사의 일정 때문에 계속 미뤄져 6개월이나 뒤에 빛을 바랬다는 것은 안비밀입니다.

이렇게 우당탕탕 프로젝트를 마무리하면서, 회사의 겨울 방학이 시작되었고 대략 10일 동안 쉬고 1월에 복귀하게 되었습니다.

23년 1분기

내 일 직접 찾기

다른 회사와 다르게 프로젝트를 제외하고도, 자신의 일을 직접 찾아서 할 수 있는 능력이 필요한게 지금 다니고 있는 회사인 것 같습니다.

초반에는 이러한 일을 하는데, 매우 어려움을 겪었지만 도메인 지식을 늘려가다 보니 문제가 되는 부분을 찾을 수 있었고 ( ex. 반복적으로 들어오는 운영 이슈 ) 이러한 부분을 직접 이슈를 따서 해결하는 방식에 익숙해진 것 같습니다.

예를 들어, 어떠한 일을 진행할 때 비 개발직군이 작성하고 개발 직군이 직접 DB에 데이터를 넣는 작업이 필요했었는데 이 부분을 개발자 없이 진행할 수 있는 기능을 제공하여 팀 내에 도움을 줬던 경험이 있습니다.

프로젝트

초반 3개월 간 프로젝트를 진행할 때는, 우당탕탕 프로젝트를 진행했다면 이 때 부터는 확장성과 유지 보수성 그리고 테스트 코드에 대한 고민을 많이하게 된 것 같습니다.

사실 이러한 고민은 책을 좀 읽게 되면서 시작되었는데요.

단위 테스트라는 책을 읽으면서, 좋은 테스트는 무엇이며 테스트는 어떻게 작성하는지에 대해 고민할 수 있었고 클린 아키텍처라는 책을 읽으면서 좋은 아키텍처 도메인 코드를 잘 작성하는 방법에 대한 고민도 매우 많이 할 수 있었습니다.

물론 촉박한 일정과 배포 기간을 맞추기 위해서는 쉽지 않다는 생각이 들긴하지만, 현재 편하면 나중에 고생한다는 생각을 하면서 노력중입니다.

사이드 프로젝트

현재 저는 CS Broker라는 사이드 프로젝트를 진행하고 있는데, 소프트웨어 마에스트로 13기부터 진행하고 있는 프로젝트입니다.

팀원들이 취업이나 인턴을 시작해서 어느 정도 일정이 안정화가 되었을 때 쯤, 다시 프로젝트를 유지보수 하고 있으며 현재는 200여명의 사용자가 이 사이트를 이용하고 있습니다.

물론, 팀원들이 매우 매우 바쁘기에 새로운 기능을 추가한다거나 이런 것을 하고 있지 못하지만 꾸준히 사이드 프로젝트에 기능을 추가하거나 개선하는 등의 일을 진행하고 있습니다.

스터디

현재 참여하고 있는 AUSG이라는 동아리에서 2월부터 현재까지 책 읽기 스터디를 진행하고 있습니다.

처음에는 클린 아키텍처라는 책을 읽는 것으로 시작했는데, 팀원들과 마음이 잘 맞고 스터디에서 얻어가는 것이 많다라는 판단을 하게 되어 이 스터디를 꾸준하게 진행하기로 했습니다.

스터디원들과 현재까지 5권의 책을 읽었으며, 현재 6권째의 책을 읽고 있습니다.

스터디는 이 레포에서 확인하실 수 있습니다.

거의 매달 한 권의 책을 읽고 있는데, 책의 양이 처음에는 부담스러웠지만 꾸준히 이런식으로 읽다보니 조금 익숙해진 것 같습니다.

글또

현재 글쓰는 또라이가 세상을 바꾼다라는 모임에 참여하고 있으며, 2주에 한 편씩 글을 쓰고 있습니다.
매우 고된 일이지만, 글을 쓰면서 배웠던 것들 고민했던 것들을 남들에게 공유할 수 있어서 매우 좋았습니다.

이미 제 velog를 보면 알 수 있듯이 꾸준히 블로그를 써왔지만 빈도를 높이기 위해 참여해봤습니다.

23년 2분기

운영 안정화

사실 23년 1분기까지 계속 느꼈던 것은, 우리 팀은 너무 맥락을 많이 가지고 있고 이에 따라 운영을 하면서 생기는 크고 작은 이슈가 너무 많다였습니다.

이를 모두 인지하고 있었기에, 팀 내의 모두와의 합의하에 전사 프로젝트 그 자체에만 집중하지말고 반복적으로 들어오는 운영 이슈를 원천적으로 해결할 수 있도록 해보자라는 이야기를 나눴습니다.

이를 위해, 팀 내 개발자를 반반으로 나누어서 프로젝트 팀과 개편 팀으로 나누어서 운영 이슈들의 원천적인 문제를 순차적으로 해결해나갔습니다.

현재는 이전과는 다르게 매우 적게 들어오고 있어서, 팀이 조금 안정화 된 것 같습니다.

첫 입사 때와 비교하면 대략 1/5 정도로 줄어든 것 같습니다.

다른 직군과 협업하기

대략 9개월간 협업을 하면서 느낀 것은, 코드를 잘 짜는 것보다 더 중요한 것은 협업을 잘하는 것이라고 느꼈습니다. 이것은 같은 직군에서만 통하는 말이 아닌, 다른 직군과의 소통에서도 비롯되는데요.

제가 겪어 봤을 때.. 개발 직군이 놓칠 수 있는 것들을 비개발 직군이 캐치할 수 있고, 비개발 직군이 놓칠 수 있는 것들을 개발 직군이 캐치하는 경우가 종종 있었습니다.

이를 위해서는 기록과 질문을 잘하는 것이 중요하다는 생각이 들었고, 이 부분에 대해서 잘하고 있다는 피드백을 들어서 약간 만족스럽습니다만 언제나 노력해야하는 부분인 것 같습니다.

왜 그렇게 생각했는지, 어떤 것이 문제인지를 정확히 정리해서 공유하는 것이 매우 도움이 되는 것 같습니다.

다시 시작한 운동

체중이 매우 불어서 운동을 3주전부터 다시 시작했습니다. 열심히 해보려고합니다.

마치면서

뭔가 다른사람들의 회고와는 다르게 제 자신의 기술적 성장보다는 협업과 팀내에서 느낀 점들을 서술한 것 같습니다.

하지만 요즘 드는 생각은 기술적으로 성장하는 것보다, "협업하기 좋은 사람"이 되는 것이 더 어렵지만 더 좋은 목표라고 생각하여 그런 사람이 되려고 노력하고 있습니다.

profile
글 쓰는 개발자

1개의 댓글

comment-user-thumbnail
2023년 7월 26일

와!!!!!!!!!!!멋져요!!!!!!!!!!!!!!!!!!!!! 협업왕 김성일!!!!!!!!!!!

답글 달기