개인적으로 궁금하기도 했고, 기대도 했던 기업 협업을 마치고 그 생활을 회고해보고자 한다.
나는 기업 협업을 통해 IT 회사의 분위기나 개발자들의 일상이 어떤지를 직접 확인해 보고 싶었다. 누군가는 현업을 경험해 보거나 포트폴리오를 추가하는 게 목표였을지 모르지만, 상황상 시간이 한 달뿐이라는 것과 커리큘럼 상의 인턴이라는 부분 때문에 현실적으로는 쉽지 않다고 생각해 기대하진 않았다.
한 달간 출근하게 된 회사는 메타버스 플랫폼을 개발/운영하는 곳이었는데, 회사 위치나 분위기, 직원분들의 첫 느낌이 괜찮았다.
사내 멘토가 내주신 과제로 스터디와 실습을 병행했는데, 과제는 다양한 도구들을 사용해서 '공공데이터 API와 OAuth2.0을 활용한 정보 제공 서비스'를 구현하는 것이었다.
과제를 받을 때부터 생전 처음 듣는 툴이 많아서 기대 반 두려움 반이었던 것 같다. 처음 듣는 툴들은 아래와 같다.
1. Swagger
2. Terraform
3. JMeter
처음 사용해보는 툴도 많았고, 2차 프로젝트까지 해보지 못한 기술도 있어서 여러모로 어려운 점이 많았다.
그동안 fetch를 사용해 본적이 없었다. 개념과 흐름 자체를 이해하는게 어려워서 내가 원하는 공공 API를 연결하는 것도 동기들의 도움을 받아서 겨우 했다.
이대로는 안되겠다 싶어서 카카오 로그인을 혼자 도전해봤다. JWT 로그인부터 차근차근 코드를 짜보면서 소셜 로그인까지 구현해보니 fetch의 활용이라던지, 인가 코드 및 토큰의 이동까지 알게 되었다. 그래서 첫 과제 이후 추가 과제로 OAuth 2.0 구현을 받았을 때는 안도감이 생겼고, 자신감을 가질 수 있었다.
2차 프로젝트까지는 프론트엔드 동기들과의 협업을 위해 POSTMAN을 사용했었다. swagger를 스터디하면서는 이게 왜 더 좋은건지, YAML이란 불편한 언어는 또 무엇이며, 왜 쓰는지 이해하기가 쉽지 않았다. YAML은 공백(space) 하나 때문에 작동하지 않았고, 내용이 길어질수록 보고, 쓰기가 어려웠다.
3주차 마지막 날에 각자 한 파트씩 발표를 맡게 되었는데, 나는 swagger를 맡게 되었다. 발표를 준비하면서 swagger가 시각화가 잘 되어 있어 프론트엔드와의 협업에 더욱 효과적이고, 더 상세한 내용을 주고 받을 수 있다는(엔드포인트별 설명, 요청/응답 예시 등)점과 하나의 프로그램처럼 테스트해볼 수 있는 점 등이 swagger의 장점이라고 느꼈고, 발표도 매끄럽게 진행해서 개인적으로 가장 만족스러운 시간이었다.
처음에 목표로 했던 IT 회사의 분위기나 개발자들의 일상을 확인하는 것은 한 달간 제대로 했으며, 만족스러웠다. 일단 젊고, 수평적인 분위기는 전 회사와 크게 다르게 느껴져서 얼른 이런 분위기에서 일해보고 싶다는 생각을 했다.
특히, CEO의 코드리뷰와 올바른 코딩/개발자가 무엇인지에 대한 세미나를 들으면서, 말로만 듣던 'Dev Culture'가 실제로 있다는 것이 놀라우면서 이 곳에서 일하시는 개발자 분들은 정말 성장할 수 있을 것 같다는 생각에 부럽기도 했다.
물론 과제를 진행하고, 세미나를 들으면서 아직 준비할 것들이 너무너무너무너무 많다는 것은 뼈저리게 느꼈다. 다만, 주니어로서 회사를 보는 눈이 조금은 생긴 것 같고, 단순히 코드 몇 줄을 잘 쓰는 것보다 현업에서 사용하는 기술에 대해 알게 되어 큰 도움이 됐다고 생각한다.
퇴사 후 오랜 만에 회사 생활을 짧게나마 해보면서 전직하길 잘했다는 생각을 했고, 얼른 일해보고 싶다는 생각을 하게 됐다.
아직 부족하지만 한 달간의 시간 동안 느낀 것들을 토대로 이력서를 업그레이드 시키고, 좀 더 나은 회사에서 일하기 위해 또 공부하고 준비해야겠다.