2023 회고

작성 날짜

2023년은 나에게 새로운 시작이었다.


개발자로서의 커리어를 시작한 이 해는, 내게 많은 변화와 성장의 기회를 가져다주었다. 새로운 기술을 배우고 여러 경험을 쌓으며, 기술적 역량뿐만 아니라 비즈니스 측면으로도 시각을 넓힐 수 있었다. 감사한 일도 많고 부족한 점도 많았던 나의 한 해를 회고로 마무리하려고 한다.


이러한 경험들을 톺아보며, 어떻게 성장했는지 그리고 앞으로 어떤 방향으로 나아가야 할지에 대한 명확한 방향성을 얻을 수 있고, 지속해서 성장하는 개발자가 될 것으로 생각한다.


💬

올해 가장 잘했다고 생각하는 건 내가 정말 가고 싶었던 회사에 들어가서 일할 수 있었던 것이다.


1월 - 취업

내가 정말 가고싶었던 회사에 지원하는데 집중했다.

지금 보면 너무 부끄러워서 이불킥 멘트는…. 가렸다….
지금 보면 너무 부끄러워서 이불킥 멘트는…. 가렸다….

팀스노우볼 채용 공고를 보고 여기에 꼭 가야겠다고 생각했고 지원서를 제출했다. 그런데 이틀이 지나도 응답이 오지 않았다. 다른 회사 두 곳에 합격을 받았고 응답을 드려야 하는 상황이라 급한 마음에 대표님의 이메일을 통해 메일을 보냈다.


그리고 현재 내 사수이신 민석님의 인스타그램 계정을 찾아(ㅋㅋㅋ..) 실례를 무릅쓰고 디엠을 보냈다.


이건 나중에 민석님께서 얘기해주신 건데, 민석님은 인스타 DM의 요청 기능을 이때 처음 아셨다고 한다. 근데 그날따라 이상하게 디엠 알람은 없었지만, 우연히 들어가니 요청을 발견하셨고 다행히 답장받을 수 있었다.


그리고 서류 합격, 1차 면접, 2차 면접 끝에 가고싶었던 회사에서 일할 수 있는 기회를 얻었다.



2월~6월 - 기술적 성장

이 기간에는 여러 컨퍼런스나 밋업을 참여하며 기술적 시야를 넓혔다.

DEVIEW 2023 - 네이버
DEVIEW 2023 - 네이버

StableDiffusition과 ChatGPT(speaker: 정지훈님) - 모두의 연구소 열린세미나
StableDiffusition과 ChatGPT(speaker: 정지훈님) - 모두의 연구소 열린세미나

‘리더의 생각’ 북콘서트(speaker: 류석문 님) - 쏘카
‘리더의 생각’ 북콘서트(speaker: 류석문 님) - 쏘카

‘테크 리더 3인이 말하는 “개발자 원칙”’(speakers: 이동욱님, 박미정님, 박성철님) - 우아한테크 세미나
‘테크 리더 3인이 말하는 “개발자 원칙”’(speakers: 이동욱님, 박미정님, 박성철님) - 우아한테크 세미나

AWSKRUG 프론트엔드 소모임
AWSKRUG 프론트엔드 소모임

8월 31일부터 미팅 노트를 기록했다.
8월 31일부터 미팅 노트를 기록했다.

팀스노우볼에서는 민석님께서 매주 목요일마다 진행해 주신 프론트엔드 회의를 통해 기술적 성장을 많이 할 수 있었다. 이 회의에서는 한 주 동안 공부한 지식을 공유하거나, 프로덕트 개발하면서 있었던 이슈, 또는 건의하고 싶은 내용을 공유했다. 민석님께서는 공부해 오신 지식을 최대한 쉽게 설명해 주셨는데, 이때 어떻게 deep dive 하는지 남들에게는 어떻게 설명하는지 등을 많이 배울 수 있었다.


팀스노우볼에 들어와 가장 감사한 일은 좋은 사수를 만난 것이다. 좀 더 얘기를 적어 보자면 흔한 라이브러리를 사용하더래도 왜 이것을 사용하는지 설명해 주신다. 내가 블로그 글을 보면서 ‘아 그렇구나’라고 넘어갈 때 민석님은 코드를 직접 까보신다(ㄷㄷ). 개발 이외에도 배울 점이 많으신 분이다. 항상 감사드린다.



7~9월 - 방황하던 시기

반복되는 작업에 지쳐 재미를 잃기 시작했고, QA에 대한 두려움도 커졌다.

이 시기에 친구가 추천해준 영화 ‘소울’
이 시기에 친구가 추천해준 영화 ‘소울’

내 코드에 대한 확신이 없었다. 그렇다고 깊게 공부하지도 않았다…


여전히 컨퍼런스와 밋업을 참여했지만, 제대로 아는 기술이 없어 다른 개발자들과의 커뮤니케이션의 어려움을 겪었다. 점점 더 대단한 사람들을 만나는데 나는 그 사이에서 잘하는 것 하나 없어서 부끄러웠다. 이때의 느꼈던 감정들을 통해 훨씬 더 성장해야겠다고 느꼈다. 스스로 학습하는 게 제일 베스트겠지만 깊이 있는 학습 방법을 배우기 위해 F-Lab 프론트엔드 멘토링을 신청했다.


그래도 이 시기에 배운 것도 있었다. 우연한 기회로 비즈니스 측면에서 다양한 경험을 할 수 있었다.



10월 - WA.GG

이전에도 하나의 프로젝트를 맡아 개발한 적이 있었지만 그때는 투자 시연을 위한 데모용이었는데, 처음으로 웹 서비스 개발을 단독으로 맡게 되었다..! 그렇기에 꼭 잘 해내고 싶었고 성과도 내고 싶었다.

리그오브레전드 게임 전적의 다양한 데이터로 유저들과 경쟁할 수 있는 웹 서비스 ‘WA.GG’
리그오브레전드 게임 전적의 다양한 데이터로 유저들과 경쟁할 수 있는 웹 서비스 ‘WA.GG’

프로젝트 환경 세팅부터 Riot Games의 RSO(Riot Sign On) 인증 시스템 등을 구현했다.


우리 서비스에서는 유저가 경쟁에서 승리하면 문화상품권을 지급했는데, 자신의 전적이 맞는지 확인하기 위해 처음엔 로그인한 클라이언트 캡쳐 이미지를 이메일로 보내는 방식으로 인증을 진행했다. 이러한 번거로운 사용자 경험을 개선하기 위해 라이엇 계정 연동 기능을 구현했는데, Riot은 유저당 3개의 계정까지 생성할 수 있었기에 WA.GG에서도 3개의 계정까지 연동할 수 있도록 했다.


라이엇 계정 연동 구현을 마친 뒤 한 가지 추가 요청이 들어왔다.

“RSO 인증 시 라이엇 로그인 세션이 남아있다면 logout 해주세요”


RSO 프로세스는 다음과 같다.

  1. WA.GG에서 라이엇 계정 연동 버튼을 누른다.
  2. https://auth.riotgames.com 에서 로그인에 성공한다.
  3. 등록된 redirect_url로 리다이렉트한다.

https://auth.riotgames.com 화면
https://auth.riotgames.com 화면

발생한 문제는 만약 이전에 로그인 상태 유지를 설정해서 https://auth.riotgames.com 에 로그인이 되어 있을 경우, 2번이 생략된다는 것이다. 이렇게 될 경우 유저가 직접 라이엇게임즈 웹사이트에 방문해 로그아웃을 하는 방법 이외에 다른 계정을 연동할 수 없게 된다.


이 문제를 해결하기 위해 라이엇 로그인 페이지에 접속했을 때, 로그인이 되어 있다면 무조건 로그아웃을 시켜야겠다고 생각했다. 그런데 공식문서에도 나와 있지 않고, 아무리 찾아도 정보가 나오지 않았다. 다른 방법을 찾아야 하나 반쯤 포기하던쯤… 옛날에 가입했던 Riot Games Third Party Developer Community 디스코드가 생각나 마지막이다 생각하고 정보를 탐색했다.


커뮤니티의 rso-dev 채널에서 나와 같은 고민을 하고 계시던 분의 질문을 발견했다! 한국분이었는데 아쉽게도 이 질문에 대한 해결 답변은 없었고, 혹시나 해결하셨을까 싶어 따로 연락을 드렸다.


그리고….. 구현하셨다는 답변과 함께 해결 방법을 공유해주셨다..!!! 드디어 WA.GG 서비스에서도 이 기능을 적용할 수 있었고 나는 작지만, 감사한 마음을 담아 WA.GG 보상으로 받았던 상품권을 드렸다. ㅋㅋㅋ


이때의 과정이 재밌었고 이렇게 개발자끼리 정보 공유를 하는 문화를 담고 싶어서 이 부분은 길게 적어보았다. 비록 WA.GG 서비스는 성과를 내지 못했지만 그래도 나에게 큰 도전이었고 내가 만드는 제품에 대한 책임감을 배웠다.(정말 애정을 많이 담아 만든… 서비스였다..😭)



11월~12월 - 고민의 단계로

기술을 사용할 때 고민하는 단계를 거칠 수 있게 됐다.


멘토링을 통해 프론트엔드 지식의 부족함을 극복하는 데 집중했다. 물론, 여전히 배워야 할 것이 많지만, 이제 나는 주니어 개발자로서의 전문성을 갖추게 되었다고 생각한다.


나의 목표는 이제 단순히 기술을 배우고 사용하는 것을 넘어 더 복잡한 문제들을 해결하고, 성과를 내는 것이다. 내년에는 이 목표를 달성하기 위해 더욱 노력하고 성장할 것이며, 더 높은 전문성을 쌓아갈 것이다.

💬

컨퍼런스를 많이 다닌다고 성장하는 건 아니지만, 여러 컨퍼런스와 소모임 등을 다니며 기술에 대한 시각이 넓어졌다.


컨퍼런스

  • 2023 DEVCON
  • INFCON 2023
  • FECONF 2023

밋업

  • 압축 AI의 역사 그리고 ChatGPT
  • [쏘카] “리더의 생각” 북 콘서트
  • [우아한테크] 제어할 수 없는 것에 의존하지 않기
  • [AWSF] NEXT.JS의 이미지 최적화는 어떻게 동작하는가
  • [AWSF] 개발자가 알아야 할 보안 이야기
  • [인프랩] Product Design Meet-up
  • Effective TypeScript
  • 개발자의 글쓰기
  • 프레임워크 없는 프론트엔드 개발
  • 타입스크립트 교과서
  • 당신의 뇌는 최적화를 원한다
  • 규칙없음
💬

한 해의 나를 되돌아보기


👎 Bad

  • 내 생각을 잘 얘기하지 못했다. → 책을 읽고 독후감을 쓰며 내 생각 말하는 연습하기
  • 기술적 성장만을 좇았다. → 회사 도메인에 더 관심갖고 공부하기
  • 내가 만든 제품에 진심이지 않았다. → 테스트 많이 해보고, 고민하기
  • QA를 두려워했다. → 극복하기
  • 솔직한 피드백을 못했다(넷플릭스 규칙없음) → 솔직한 피드백을 해야 더 탄탄한 관계가 유지될 수 있다고 생각하기에 이것도 극복하기

👍 Good

  • 내가 가고싶은 스타트업에 들어왔다.
  • 기술적으로 성장했다.
  • 이제 한국어가 적힌 벨로그보다 공식문서를 찾아서 읽는다. → 너무 당연한소리라 적기 민망했지만 그래도 스스로 칭찬한다
  • 책을 많이 읽었다. → 작년 2권 읽음... 3배 상승!! 내년엔 한 달에 1권 읽기 도전
  • 기록을 잘 했다. → 내년엔 정리도 잘 해두기
  • 멘토링을 시작했다.
  • 여러 개발 컨퍼런스, 세미나를 다니며 기술적 시야를 넓혔다.
  • 비즈니스 측면 경험을 했다.
  1. 기술 깊게 탐구하기 Deep dive
  2. 사이드 프로젝트(개인) 하나 3개월 이상 운영해보기
  3. 회사에서 성과내기