신입 백엔드 개발자의 3개월차 회고

Ji_min·2021년 12월 5일
3

입사한지 벌써 3개월이다. 시간이 너무 빠르게 흘러가서 당황스럽다. 그동안 회사 생활하면서 뭘 했는지 돌이켜보면 여러 일을 한 것 같은데 겨우 3개월밖에 안된 건가? 하는 생각도 조금 든다.

입사 직후 한 달이 흘렀을 때부터 회고를 작성하자고 결심해놓고 일이 바빠서 저녁에는 쉬어야 하니까, 주말에는 친구들을 만나야 하니까 등의 이유로 어영부영 시간을 보내다 보니 벌써 3개월이다. 1년으로 따지면 한 분기가 지난 것이다. 그 동안 게으름 피우며 불성실했던 자신을 반성하면서, 더 늦기 전에 나를 점검해보는 시간을 가져보았다.


1. 내가 이렇게 게으른 사람이었다니

입사 전보다 입사 후 공부할 게 훨씬 더 많아졌다. 그 동안 내가 했던 일과 남겨둔 업보 목록을 정리해보면 다음과 같다.

  • web socket을 사용해 chat room 구현하기 -> 입사 직후 받은 과제는 Django Channels를 사용해 채팅앱을 만드는 거였다. 웹 소켓을 사용해본적도 없었고, node.js와 사용하는 socket.io만 접해봤었기 때문에 하나하나 문서를 찾아보면서 과제를 했다. 그러다보니 django channels가 어떻게 동작하는지를 좀 제대로 공부해보고 싶었는데, 과제를 끝내고 공부해야지 하다가 다음 할 일을 받고 결국 흐지부지되었다.
  • 그룹웨어의 /var/log/ 디렉토리에 docker log volume 만들기 -> docker를 sudo가 아닌 유저로 작동시키면서 sudo 권한의 디렉토리에 접근할 수 있는 방법을 찾기 위해 리눅스의 권한 문제를 공부하다가 결국 제대로 해결하지 못했다.
  • 그룹웨어의 휴가 결재 시스템 기능 추가 -> 해당 기능을 리팩토링하는 과정에서 기존 기능을 건드리지 않으면서 기능을 추가하려고 하다 보니 코드가 너무 복잡해졌다. 복잡성을 해소하기 위해 FBV를 CBV로 리팩토링을 시도했는데, 결과적으로 데이터 검증을 위한 폼을 2개나 사용하게 되어 복잡성이 해소되지 못했다. 장고 CBV가 제공하는 기존 기능을 최대한 활용하기 위해 장고 코드를 더 공부해야 한다.
  • 새로운 플로젝트에서 MongoDB를 장고와 사용하게 되었다. NoSQL을 사용해본적이 없어서 공부하면서 사용했다. 하지만 NoSQL에 대한 이해도가 낮아서 장고가 제공하는 ORM 등의 기능을 충분히 활용하지 못했고, NoSQL의 노스키마 방식이 주는 이점을 제대로 활용하지 못한 채 RDB를 사용했을 때보다 개발 시간이 최소 2배는 더 늘어났다. 결국 이후 PostgeSQL로 갈아탔다.

정리해보니 완벽하게 만족스럽게 마무리된 일이 없다. 전부 부족한 부분을 공부해서 정리하자고 생각만 하다가 잊혀서 업보 목록의 한 줄을 차지하게 되었다. 그 많은 저녁 시간과 주말에는 뭘 했나 되돌아보면 그냥 놀고 친구를 만나면서 시간을 보냈다. 좋은 사람들을 만나고 휴식하는 시간들도 중요했기 때문에 그 시간들에 후회는 없지만 스스로가 너무 게을렀다고 반성하게 된다. 지금까지는 그 동안 취준하느라 힘들었으니까 조금 쉬어도 된다며 자기합리화하기는 했지만 이제부터는 그런 변명도 통하지 않을 것 같다. 지금 상태 그대로면 더 이상 발전하지 못할 것 같다. 친구 만나는 시간을 좀 줄여야겠다.

2. 사내 스터디를 하고 있다

입사하고 얼마 되지 않아 같은 팀분들과 디자인 패턴 스터디를 하게 되었다. 업무 시간에 스터디를 할 수 있는 회사 분위기가 너무 좋고, 좋은 직장을 얻은 것 같아 감사하다.

소프트웨어 아키텍쳐에 관심이 있던 터라 스터디를 하면서 어떤 디자인 패턴들이 있는지, 어떻게 프로젝트의 구조를 짤 수 있는지 배우기도 많이 배웠는데, 그 밖에 주제 외적인 부분들에 대해서도 여러가지를 배울 수 있었다.

선배분들이 스터디를 준비해온 걸 보면서 가장 인상적이었던 것은, 항상 그룹웨어든 그동안 했던 다른 프로젝트든 공부한 패턴을 적용시켜보려고 한다는 점이었다. 그룹웨어의 한 부분을 해당 디자인 패턴을 활용해서 리팩토링해오신 코드를 함께 보면서 그 패턴에 대한 이해도 더 높아지고, 그룹웨어 코드에 대해서도 더 잘 파악하게 되었다. 그러면서 내가 짜온 피상적인 코드와 비교가 되어, 나도 얼마 안되지만 지금까지 파악한 그룹웨어의 어떤 부분에 그 주의 주제인 디자인 패턴을 활용할 수 있을지 매번 생각해보려고 하고 있다.

3. 아직도 자기가 신입이라는 생각에서 벗어나지 못했다

처음 들어왔을 때, 연차가 나와 가장 가까웠던 선배는 입사한지 4개월이 되었던 상태였었다. 지금 생각해보면 3개월차인 지금의 나와 회사 생활한 날들이 크게 차이가 나는 것도 아니었는데, 선배는 뭐든 잘 알려주셨다. 처음에 코드를 보고 그 규모에 겁을 먹었던 그룹웨어도 내가 궁금한 부분을 질문할 때마다 어디에 어느 부분이 있고 어떻게 동작하는지를 세세하게 다 설명해주셨다. 그때는 나도 저만큼 시간이 지나면 다 알게 되는 건가 싶었는데, 지금은 알겠다. 시간이 지나면 다 자연스럽게 알게 되는게 아니라, 그 선배가 많은 부분들을 파악하려고 노력하신 거였다. 그에 반해 나는 아직도 그 선배만큼 많은 부분들을 파악하지 못하고 있다.

3개월이면 아직 신입이라고 생각하는 사람들도 많은 것 같은데, 그런 건지 회사 생활이 처음이라서 잘 모르겠다. 다만 이렇게 계속 신입티를 못 벗고 업무의 구체적인 부분들은 선배들께 질문해야 하는 상태로 남아서는 안될 것 같다. 다음 주부터 들어가는 새로운 업무에서는 더 공부해서 더 잘하고 싶다.


최근 처음으로 그룹웨어에서 내가 참여한 부분이 프로덕션 서버에 배포되었다. 회사분들께서 업데이트 공지 페이지에 댓글을 남겨주신 걸 읽으면서 정말 기분이 좋았다. 즉각적으로 사용자의 피드백을 받아볼 수 있다는 사실이 실제 업무에 도움이 많이 되는 것 같다. 앞으로 더 좋은 기능을 만들고 싶다. 일도 더 잘 하고 싶다. 다음 3개월은 좀 더 전문적인 지식을 가지고 일을 하고 있을 거라고 생각한다.

profile
Curious Libertine

0개의 댓글