정말 오랜만에 블로그에 글을 쓰게 되었습니다.
2월에 퇴사를 하고나서 3월 부터 바로 스타트업에서 웹 프론트엔드 개발자로 새 인생을 시작하였습니다.
제 인생에는 쉬는 기간이 없네요. 첫 회사도 대학 졸업하기도 전에 붙었고, 퇴사하고 일주일만에 새 회사로 ㅎㅎ...
하지만, 저는 바쁘게 빈틈없이 사는 게 좋습니다.
이직 소감
이제야 내가 있어야 할 곳으로 왔다. 라는 생각이 가장 컸던 것 같습니다. 고향에 돌아온 기분이었습니다.
우리집, 근무환경, 근무방식, 사람들, 업무... 모든 것이 바뀌었기 때문에 처음에는 쉽게 적응하기 어려웠지만,
분명한 것은 아침에 회사 가는것이 너무 행복했고 일하는 것이 너무 즐거웠습니다. 물론 그 마음은 지금도 동일합니다.
걱정스러웠던 부분은 회사에서 다루는 도메인에 대한 부족한 지식과 여전히 부족하다고 느껴지는 프론트엔드 개발 지식/경험 이었는데
결국 둘다 회사 열심히 다니면서 매일 매일 일 하다보니 자연스럽게 채워졌습니다.
첫 1달 (2022.03)
회사에 들어와서는 첫 2~3주 정도는 매일 코드를 읽거나, 프론트엔드 테스트 코드 작성을 하면서 시간을 보냈습니다.
사실 테스트 코드도 처음 해보는 거였고, 처음 맡았던 업무였기 때문에 상당히 떨렸는데 다행히 계획했던 부분까지 완성하여 시연할 수 있었습니다.
테스트 코드를 작성하려면 무조건 기존 코드를 읽어봐야 되기 때문에 자연스럽게 코드 살펴보기 좋았던 것 같네요.
프로젝트 시작 (2022.04)
회사가 기존 운영하던 서비스 외에 추가로 서비스를 만드는 단계에 있었고, 프로토타입 시연 일정이 매우 가까웠습니다.
프론트 인력이 부족하여 백엔드 개발자들이 프론트 작업도 해야하는 손이 부족한 상황이었는데 때마침 저는 테스트 코드 작성하던 업무도 끝났고 그 외에 특별히 맡은 업무가 없었기 때문에 3월 말 쯤 프로젝트에 긴급 투입되어서 자연스럽게 새 프로젝트의 프론트엔드 개발 담당이 되었습니다.
그땐 타입스크립트, React-Query, JWT Token, Socket 같은 것들을 익숙하지 않았기 때문에 솔직히 마음속으로는 겁났지만, 한편으로는 신입에게 있어서 엄청난 기회라고 생각이 되어서 최선을 다하여 작업했습니다.
해당 프로젝트는 인앱에서 웹뷰 형태로 제공되는 서비스를 만드는 것이었고, 이미 어느정도 개발이 이루어진 상태에서 UI/UX 변경 및 반응형 디자인 적용 작업을 주로 하였습니다.
Figma 를 통해 디자이너와 소통하였는데 아무래도 프로토타입 개발 단계였기 때문에 UI/UX 변경점이 매일 매일 있었고, 계속해서 고도화 되었습니다. 사실 굉장히 피곤하다고 느껴질 수도 있지만, 저는 오히려 한 번도 안해봤던 position: sticky 같은 것도 적용해보고, svg 의 속성도 다양하게 다뤄보고, 스켈레톤 UI 적용 같은것도 해보면서 연습이 많이 되어서 좋았습니다.
이 시기에는 정말 쉬는 날 없이 매일매일 일만 하면서 살았던 것 같습니다. 지금(8월)은 운동도 하고 따로 스터디도 하고 사람들도 만나면서 지속가능한 삶을 위해 노력하고 있지만, 이때부터 7월 까지는 정말로 일 아니면 잠 이었던 것 같습니다.
그런 노력들 끝에 다행히 프로토타입 1차 시연을 무사히 마쳤고, 회사에서도 새로운 투자가 들어오기 시작하면서 모든 것이 잘 되고있음을 느꼈습니다.
프로젝트 고도화 (2022.05~06)
1차 시연이 끝난 이후로 프로토타입을 고도화 하는 과정을 이어갔습니다.
UI/UX 변경은 항상 꾸준히 있었고 서비스에 필요한 나머지 API들을 연동하는 작업들이 주로 있었습니다.
나중에 조금 여유가 생겼을 땐 framer-motion 을 공부해서 애니메이션도 적용해보았구요.
작업 하면서 기억에 남는 것이라면,
특정 상황에서는 특정 페이지 화면만 보여야 하고, 다른 페이지로의 이동이 제한되어야 한다는 등의 문제가 골치 아팠습니다.
뒤로가기 해도, 새로 고침해도, 창을 껐다가 켜도, 그 페이지만 보여야 한다는 그런 소리죠.
골치 아팠던 주요 이유는 페이지 마다 주소를 할당하지 않고 (라우터 설정해주지 않고) 그냥 조건부 렌더링 해주고 있었기 때문이죠... 나중에 여러 상황이 생기다보니 조건 짜는 것도 어려웠습니다.
결국 페이지마다 주소 할당한 후에 라우팅 할때 검사해주는 로직이 추가되어야 한다고 생각하여 커스텀 라우터 컴포넌트를 만들어서 조건에 따라 페이지 제어하도록 하여 해결했습니다.
채팅창 개발 (2022.07)
6월 까지 개발하던 서비스가 웹뷰 - 대시보드로 연계되는 서비스였는데 제가 하던 웹뷰 쪽 개발이 일단락 되어서 대시보드 쪽 개발에 합류하게 되었습니다. (사실 원래는 다른 프로젝트 맡아서 할 계획이었는데 그 프로젝트가 사업적으로 중요도가 뒤에 있어서 일정이 밀렸네요..)
거기서는 채팅창 개발을 맡게 되었는데 이미 사내에서 자체적으로 채팅 서버를 구축하지 않고 sendbird 를 사용하고 있었기 때문에 저 또한 sendbird로 채팅창 개발을 하게 되었습니다. (더 정확하게는 메모장 이었는데 이름만 메모장이고 채팅창과 똑같았기 때문에 채팅창이라고 표현했습니다.) 물론 웹뷰 쪽과 연계되는 서비스이기 때문에 당연히 웹뷰 쪽에도 채팅이 있었지만, 그쪽은 다른 백엔드 개발자 분께서 담당하셨기 때문에 그때는 해보지 못했고, 이번에 완전 처음부터 끝까지 전 단계를 만들어보게 된 것이었습니다.
sendbird API 는 쓰면 쓸 수록 생각보다 많이 불편하고, 해줘야 될게 많다고 느껴졌습니다. 가장 큰 문제는 저희가 원하는대로 커스텀에 한계가 있었구요.
결국 나중에는 이런 부정적인 의견들이 모여서 sendbird API를 직접 호출하지 않고 백엔드에서 sendbird platform API로 다시 만들어둔 API를 사용하는 방식으로 변경하게 되었습니다. 즉, 채팅 서버를 만든 것이죠.
라이브 배포 (2022.07)
7월은 무척이나 힘든 달이었습니다. 개인적으로도 매우 힘든 일이 많이 있었고, 해야할 업무량도 엄청났기 때문이죠..
저는 채팅창 개발하면서, 예전부터 쭉 운영하던 웹 사이트의 UI/UX 변경 작업을 병행했습니다.
다행히 제가 하던 채팅창 개발은 1~2주 정도 만에 일단락 되었고, 웹 사이트의 라이브 배포 일정이 잡혀서 완전히 그 쪽에 집중했습니다.
늘 그렇지만, 다른 누군가가 작성한 코드를 수정한다는 것은 매우 어렵고 조심스러운 일입니다.
항상 그런 것은 아니지만, 대부분의 경우 다시 처음부터 작성하는 것이 제일 빠른 방법이더군요...
수정하다보면, 예상하지 못한 오류를 만들어낼 수도 있을거란 압박이 제일 힘들었던 것 같습니다.
그리고 자바스크립트에서 타입스크립트로 전환을 쭉 미루다가 이번 기회에 꼭 해야겠다 생각하며 준비하였는데 방금 말했듯이, 예상치 못한 오류를 만들어낼 지도 모른다는 생각이 가장 무서웠습니다.
불안한 예상은 틀린 적이 없다더니... 타입스크립트를 설치한 시점 부터서버 측 빌드 실패 오류가 발생하여 라이브 배포 당일날 까지 고통받았는데요...나중에 젠킨스의 권한 문제로 밝혀져서 해결되었습니다. 애초에 그 서버 자체에 권한들이 엄청 꼬여있는 고질적인 문제가 있었는데 거기서 파생된 문제로 보고 있습니다.
그냥 제 개인적으로는 타입스크립트 컴파일 과정에서 젠킨스가 파일 권한이 없어서 뭔가 오작동을 일으켰다 라고 추측하고 있습니다.
아무튼, 라이브 배포도 무사히 완료되었고, 8월이 되었습니다.
쉬어가는 겸 휴가내서 카페와서 오랜만에 블로그 포스팅도 하고 아주 좋네요.
'개발자 이야기' 카테고리의 다른 글
2022.09.18 개발자 이야기 (백엔드 스터디 시작, numble) (0) | 2022.09.18 |
---|---|
2022.09.11 개발자 이야기 (8월은 재정비의 달) (0) | 2022.09.11 |
2021.11.19 사는 이야기 (분노) (0) | 2021.11.19 |
2021.08.28 사는 이야기 (퇴근 후 공부하기) (0) | 2021.08.28 |
2021.08.22 사는 이야기 (2021 카카오 공채, 이직결심) (3) | 2021.08.22 |