⭐ 2024년 3년차 주니어 개발자 회고록 ⭐

1. 2025년 주니어에서 미드레벨로 진화중...

 

2024년 참 어려웠던 한 해가 지나가면서 또 회고록을 작성해보려고 한다.

나름 치열하게 한 해를 보낸 것 같지만 막상 회고록을 작성하려고 보면 반성이 많이 되는 것 같아서 성장 동력이 된다.

 

사담이지만, 3년차가 되고 나니 주니어에서 미드레벨로 가는 과정을 많이 고민하게 됐다. ( 짱 긴 사담 시작 )

 

프론트 선임이 퇴사한 뒤에 혼자 프론트를 도맡아 플젝을 유지보수 및 개발해 나갔는데,

작년 말에 후임이 들어오면서 리더로서 어떻게 개발할 것이고 어떤 방향을 제시해주면서 함께 나아갈 수 있을까 고민했다.

 

1년차 때는 신입이지만 자력으로 개발해야하는 환경에서 성장하다가 신규 팀 빌딩으로 인해 선임이 처음 생겨서 협업을 배웠다.

2년차 때는 선임이 퇴사하면서 혼자 개발하다가 후임이 생긴 상황이어서 걱정도 고민도 많았다.

 

해가 넘어가면서 후임도 2년차가 되고 나도 4년차가 된 이 시점에서 돌이켜보면,

우리 팀 리더에게 후임을 성장시키는 방법에 대해 많이 조언을 구하고 하나라도 더 알려드리려고 노력을 많이 했던 것 같다.

부족한 리더지만 2년차가 되셨으니 이젠 1인분을 하실 수 있을거라 믿으면서 코드리뷰도 진행하고 챙겨주려고 고민중이다.

( 회사는 혼자 성장하는 것보다 동료들과 함께 성장해나가는 것이 옳다고 생각하는 마음가짐을 늘 상기해야한다. )

 

자연스럽게 개인의 성장도 고민을 했는데, 이 부분에 대해서는 반성할게 많다고 생각한다.

 

변명을 하자면...

새롭게 진행했던 프로젝트가 엎어지면서 홀가분 하기도 하고 속상한 마음도 컸기 때문에 보상 심리로 여행을 많이 다녔다.

살짝 회의감도 들고 개인적 한계에 부딪힌 느낌이어서, 기존에 속해있던 프로젝트 리뉴얼에 집중하느라 블로그도 소홀히했다.

 

나이를 먹으면서 내면도 함께 커야하는데 방황했던 것이 어른스럽지 못했다고 생각한다.

내년에는 더 나은 사람이 되길 바라면서 주저리 주저리 반성을 해본다.

 

2. 사내 메신저 개발 (2023.10 ~2024.08)

✔ 사용스택

Language  Javascript   Dart 
Framework  Node.js   Flutter    Socket.IO   ElasticSearch 
Tool  Visual Studio Code   Sourcetree   Fork   Postman   Compass 
DataBase  MongoDB 

 

✔ 2024 개발 내용

사내에서 직원들이 업무용으로 사용할 수 있는 메신저를 혼자 개발하다가 3, 4월 경에 후임과 함께 개발했다.

중간에 기존에 하던 프로젝트를 겸하기도 하고 Node, Flutter 를 정말 기초 중에 기초만 알았기 때문에 공부와 함께 플젝을 진행했다.

 

약 100명이 실시간으로 채팅하는 사내 메신저였지만,

Node, Socket.IO, 엘라스틱, MongoDB 모두 초보였기 때문에 삽질을 많이 하면서 개발해나갔다.

 

- 개별/단체 채팅방과 채널(공지나 팀별 채팅방) 기능

- 메신저 수신, 발신, 읽음처리 기능

- 엘라스틱으로 채팅 내역 검색 기능

- 댓글 기능

- 인트라넷 연결로 직원 휴가 및 상태 표기 기능

- 파일 첨부 기능 (나스서버에 연결하여 서버로 첨부된 파일 넘김)

 

이렇게 기본적인 기능은 개발을 완료했고 알파 버전으로 메신저 수신, 발신, 읽음 처리까지 됐을 때부터 오픈하여 서비스했다.

 

✔ 새로 배운 점

메신저 개발을 하면서 여러 가지 정보 글을 읽어봤는데,

메신저가 개발의 끝이라는 어떤 글을 보고 솔직히 두려우면서도 재밌게 개발했던 것 같다. 

 

Flutter, Node, Socket.IO, MongoDB, ElasticSearch, Docker 모두 다뤄보면서 개인적으로는 성장에 많은 도움이 됐다.

프론트만 작업하다가 백엔드 작업을 겸하면서 오류가 쏟아지고 모니터링 시 서버가 터지는 것을 직접 목격하면서... 😥

 

- Flutter

이제 플러터는 혼자서도 충분히 개발할 수 있을 것 같다는 생각이 들었다. (리액트와 비슷한 결이지만 매커니즘이 좀 다른 느낌)

하지만 커뮤니티의 크기가 아직 작고 배포된 패키지들의 한계가 명확했기 때문에,

다음에 개발 시에 Flutter 의 커뮤니티가 더 커져있길 바라면서 다음에도 Flutter 로 어플 개발을 해봐야겠다.

 

- Node.js

혼자 개발해보면서 기본적인 것들은 다 해봤다고 생각한다.

개선할 점이 분명히 있고 더 배우고 싶었지만 회사에 Node 하시는 분이 없어서 참 아쉬웠다.

코드리뷰나 피드백을 주실 수 있는 분이 계셨다면 좋았을 것 같지만 부딪혀가면서 더 배워야겠다고 생각한다.

 

- Socket.IO

내 속을 제일 썩였던 프레임워크. 아직도 이 친구가 냈던 버그의 원인을 찾지 못했다. 깃헙 공홈에도 이슈만 남았을 뿐...

분명히 더 잘 쓸 수 있는 방법이 있었을거고 설계도 3번을 엎었지만 레디스 어뎁터 외에는 방법이 없었을 것 같다.

기본적인 기능을 다룰 수 있게 되었고 여건이 됐다면 레디스 어뎁터 또한 추가해서 최적화까지 해봤을테지만... 아쉬움이 남는다...!!

 

- MongoDB

비관계형 DB 를 많이 배울 수 있었고, 관계형 DB만 써봤기 때문에 비관계형에 맞게 DB 설계도 한 번 엎어보는 경험을 했다.

기본적인 쿼리와 스키마 다루는 것을 배웠고 레플리카 세팅 하는 법을 배웠다.

몽고디비 또한 레플리케이션 적용으로 병렬 작업을 해줬어야 하는데 여건이 안돼서 못해봤다 아쉬움이 남는다...

 

 총평

사내 메신저는 유지보수 및 개발이 9월 부로 중단되었다.

새롭게 고객용 메신저를 개발하면서 사내 메신저도 리뉴얼한다는 말이 나오면서 프로젝트가 엎어졌다.

 

싱글 스레드인 Node, MongoDB가 단독 서버로는 100명 분의 소켓 처리를 버티지 못해서 서버가 많이 죽었고,

(채팅 읽음처리와 싱글스레드 서버가 단독으로 돌아가는 것이 주 원인이었다. 실시간으로 소통하고 읽음처리 되는게 부담이 컸던 듯)

서버를 늘렸다면 문제가 해결 됐을 것 같지만 여건이 되지 않아, 늘리지 않고 부담을 줄이는 고민을 많이 했는데 아쉬움이 많이 남았다.

 

이를 해결하기 위해 모든 설계를 뒤집기도 하고 일부 설계도 뒤집고...

평일이랑 주말에 열심히 공부하고 야근도 했지만 최적화까지 작업하지 못하게 되어 참 아쉬웠다.

 

하지만 더 나은 서비스를 위해서 리뉴얼하기로 했다고 하기도 했고 최선을 다했던 결과물이었기 때문에

마음 한켠에서는 홀가분한 마음도 있었다. 씁쓸하고만...

 

3. 고객용, 사내용 업무처리 게시판 프로그램 개발 (2022년 ~)

✔ 사용스택

Language  Javascript   Dart 
Framework  Node.js   Flutter 
Tool  Visual Studio Code   Sourcetree   Fork   Postman 
DataBase  MongoDB 

 

✔ 2024 개발 내용

현재 10월부터 Next.js 13버전 이하에서 작업된 프로젝트를 14버전 이상으로 리뉴얼 작업을 진행중이다.

 

Next 14버전으로 업그레이드하고 마이그레이션만 진행해도 됐겠지만,

물려있는 패키지들도 많고 서비스 기능 업데이트가 많이 진행되면서 코드가 복잡해졌기 때문에 서비스 전체 리뉴얼을 강행했다.

 

Next에 Atomic 디자인 패턴을 입혀서 모듈화 시키고, 후임 분들이 코더로서 일하실 수 있도록 리뉴얼 중이다.

또한 스토리북을 추가해서 모듈에 대한 명세화도 체계적으로 진행할 예정이다.

이외에 타입스크립트 공부를 통해 타입 세분화, 단위 테스트 도입 등을 계획하며 더 나은 서비스가 될 수 있는 방안을 모색중이다.

 

✔ 새로 배운 점

후임 분이 커밋을 올려주시면 코드 리뷰 후 반영하는 것은 어떻냐는 조언을 통해 틈틈히 피드백을 해드리고 있다.

프론트엔드 리더로서 동료들에게 어떻게 도움을 주고 이끌어나갈 수 있을지에 대한 것을 고민하며 배우고 있는 중이다.

( 단순히 코드를 읽고 리뷰하는 것 뿐이어서 더 나은 방법은 없을까 고민중이다. )

 

그리고 리뉴얼을 통해 Next 14 버전 사용법을 다시 배우고,

사용하던 패키지들 또한 업그레이드 되었기 때문에 새로운 기능들과 기존 기능을 깊이 있게 살펴보고 있다.

 

총평

Next 변경 사항을 공부하면서 주 언어인 Javascript를 더 깊이 있게 배우고 백엔드도 틈틈히 봐보려고 한다.

프로젝트를 유저 친화적으로 만들어 나갈 수 있는 고민들을 동료들과 함께 하며 내년에도 성장해나가야겠다.

 

4. 2025년에는 이렇게 보내야겠다!

 

정처기 실기 시험은 떨어졌지만, 내년에도 도전해봐야지...

알고리즘 공부도 하고 있지만 문제 풀이 시간을 단축하는 연습이 필요할 것 같다.

 

✔ 알고리즘공부 (Javascript, Python)

✔ 기초 서적 읽기 (개발 서적, 기초 용어 등...)

✔ 정보처리기사 실기 합격

✔ 개인 프로젝트 시작해보기

✔ Javascript, Typescript 를 심도 있게 공부해보기

 

내년에도 알찬 한 해를 보낼 수 있도록 멋진 어른이 되어보자!!

반응형

'⚡ 기타' 카테고리의 다른 글

⭐ 2023년 2년차 주니어 개발자 회고록 ⭐  (1) 2023.12.31