주니어 개발자 회고 그리고 이직

kim yeeun·2024년 2월 23일
9
post-thumbnail

경력같은 신입, 신입같은 경력자

처음 바잉스퀘어라는 회사에 입사했을 때만 해도 커리어가 참 애매했다.

대학을 졸업 후, 컴퓨터 학원에서 배운 부분은 프론트엔드보다 퍼블리싱 부분을 더 깊고 넓게 배웠다. 첫 회사를 입사하고 주로 퍼블리싱 또는 간단한 CRUD를 vue.js로 구현하였다.

첫 회사에서 현 회사인 바잉스퀘어에 이직하게 된 사유는 업무 롤에 대한 부분을 확장하고 싶어서였다. (여러 가지 이유가 있지만 이하 생략한다.)

바잉스퀘어에 입사하게 되었을 때, 첫 업무는 landing-service renewal 작업이었다.
프론트엔트 개발자는 나 혼자였고, 정적인 페이지를 작업하여서 크게 어렵지 않았다.
모놀리스로 구성되어 있었다. 그리고 nest기반에 handlebar.js로 구성되어 있었다. 리뉴얼 작업이기에 일주일이라는 시간 동안 빠르게 구성하여 배포하였다.
여기서 조금 아쉬웠던 점은 새로운 기술이긴 하지만 선진 기술인 React로 해보지 못했던 부분이 아쉬움이 남았다.

이후 새로운 신규 개발 요청이 들어왔다. 모노 레포안에서 신규 기능 작업을 해야 하기에, 어려움이 많았다.
일단 기본적으로 어떻게 동작하는지 알 수 없었다. 히스토리도 또 친절한 문서도 없었다. 그리고 항간의 소문에 의하면 여러 명의 개발자가 Run 하였고, 해당 프로젝트도 그 누구도 부를 수 없는 "볼드모트"과 같이 악명이 높았다. 나는 그렇게 피를 토하며 개발을 착수하여 배포하였다.

이때, 간절하게 사수가 필요했고 또는 함께할 수 있는 동료라도 있으면 좋겠다고 생각했다.

어떻게든 돌아가게 개발하였지만, 내가 정말 잘했는지, 부족한지 몰랐고 그렇게 되기 위해서 어떤 지표가 필요한지 몰랐다.

그저 끝냈다는 성취감은 있었지만, 나에게 남는 것은 그저 정말 힘들었다는 표현뿐이었다.

나는 __한 개발자 입니다.

신규 개발 건을 끝낸 후, VP Engineer분께 사정사정하였다. 개발 기간 동안 밤낮뿐만 아닌, 플랫폼 회식이 끝난 이후에도 돌아가서 개발을 하던 모습을 보였던지, 정말 빠르게 사람을 뽑아주셨다.

5년 차 분과 팀장님을 뽑아주셨다. 말만 했을 뿐이지만, 면접 후 그분들께 맥북 잘 닦아두겠다는 말씀을 드렸다.

새로운 팀장님(리더분이라 칭하겠음)이 오셨을 때, 아직도 기억한다.
핑크색 반팔 카라티에 맥북에 붙어있는 스티커들...또 개발을 무척 사랑하고 즐기시는 거 같았다.

이후에 리더 분께서 가장 먼저 개발 문화를 개선 해주셨다.
프론트엔드 OKR인 기술 역량 강화를 도와주시기 위해서

  1. 정기적인 지식 공유 세션 또 내부 워크샵을 통한 지식 및 트렌드를 공유해 주셨고
  2. 정기적인 새로운 기술적 도전을 적용시켜주셨다.

또 사용자 경험을 향상시키기 위하여 시스템 별 UX를 통일화하였고, 웹 페이지 렌더링 1.5초 내로 완료하도록 하셨다.

각 프로젝트 별 마일스톤을 잡아주셨고 MSA 구축 그리고 "볼드모드"라 칭하던 프로젝트도 새롭게 마이그레이션 하기로 하였다.

즉, 개발자가 일하기가 좋고, 유저 사용성이 좋은 서비스가 출시되도록 조직을 이끌어 주시기 위해서 빌딩에 힘써주셨다.

그리고 주니어인 나에게 많은 가르침을 주셨다. 그리고 내가 변했다.

1. 나의 태도가 변했다.

첫 스터디 때 미션은 이펙티브 엔지니어를 읽어오는 것이었다. 이펙티브 엔지니어에서 강조하는 것은 "래버리지"이다. 나의 시간과 에너지를 "자원"이라 하면, 얼마나 "효율성"있게 구성할 것인지 야기하는 책이다.
즉, 나에게는 우선순위의 판단과 집중 부분이 강하게 다가왔다. 우리는 쉬운 일을 복잡하게 또 어렵게 푸는 사람들을 볼 수 있다. 여기서는 반대로, 복잡하고 어려운 일을 얼마나 효율성 있고 쉽게 푸느냐였다. 그리고 그 문제에 대해서 그럴만한 일인지 "가치 판단"에 대해서도 염두하고 있다고 생각했다.

이런 효율적으로 생각하는 사고를 길러주셨다.

더불어 "더닝 크루거"의 지표를 설명해 주시면서, "우매함의 언덕"이 지점을 가장 경계하는 부분을 일러주셨다.

뿐만 아니라, 내가 정말 개발자로 살아갈 것인지, 그렇다면 어떤 부분을 감수할 것인지, 또 개발이 좋은지? 이런 뿌리 깊은 부분도 더 단단해지도록 흔들어 주셨다.

2. 동료를 생각하는 개발자가 되었다.

다음 스터디 때는 clean code 작성법에 대해서 같이 공부했다. 결국 clean code를 하는 이유의 핵심은
"비즈니스 로직"이 얼마나 잘 보이게 구성하는 것이었다. 그렇게 되면 "나"외에 "동료"들도 유지 보수 하기 쉽고, 코드를 이어 작성하기 쉬워진다.

나만 알아보는 코드, 나만 아는 변수명, 불편한 파일명 등등 이런 부분들이 개선이 되었다.

Pull Request를 보낼 때도 내가 1년 뒤에 봐도 어떤 부분 기능을 개발 또는 수정했는지 알아야 하고, 세부적으로 커밋도 잘 쪼개야 유지 보수 하기 쉽다. 보는 이가 읽기 편해야한다. "가독성"과 "독립성"을 배운 것이다.

3. 코드가 깔끔해졌다.

나는 기능 수정할 때, 주석을 많이 남긴다. 그리고 안 쓰는 함수를 잘 지우지 않는 못된 습관도 있었다. console.log ("productItem","오늘은 금요일 ~")이런 똥꼬 발랄한 로그가 PR에 올라온 적도 있다..너무 신이 났나 보다..

처음 리뷰 받을 때는 기능보다 이런 불친절한 컨벤션에 대해서 지적을 많이 해주셨다.
(지금 생각해 보면 정말 귀찮으셨을 텐데.. 감사하다.)

3. 코드를 설계하고 명분 있는 코드를 작성하였다.

나에게 하루는 그냥 코딩을 하지 말라 하셨다. 컴포넌트 구조는 어떻게 가져갈 것인지, 어떻게 데이터를 페칭할 것인지, 어떤 훅을 쓸 것인지 미리 생각하고 설계한 후, 컨펌받으라고 하였다.


(오타가 불편하지만.. 너그럽게 바라봐주세요 🥹)

4. 비즈니스 가치를 생각하는 개발자가 되었다.

왜 개발을 잘 해야 하고, 왜 동료와 협업을 잘 해야 하며, 왜 유저 중심인 서비스를 만들어야 하는지 알게 되었다.
내가 만든 서비스는 먼저는 "나"와 "나의 삶" 그리고 "제품을 쓰는 분들"에게 가치를 더한다.

좋은 제품을 만들면, 일단 굉장히 뿌듯하다. 또 자랑할 수도 있다. (너는 이거 못하지?) 또 자존감이 올라간다.
그리고 좋은 제품을 만들도록 치열하게 고민하고 생각하며, 내 삶에도 큰 영향이 된다.
그 결과 좋은 제품을 쓰는 분들은 삶의 시간을 단축하기도 또 잘 보내도록 돕는다.

제품에 대한 욕심은 그저 회사 좋으라는 것이 아닌 점을 깨닫게 되었다.
늘, 열심히 일해봐짜 대감마님이 좋쥬 ~ 했던 나의 마인드 셋이 변한 것이다.

그리고 좋은 제품을 만드는 기획력 또 훌륭한 UI/UX를 디자인해 주시는 디자이너가 있다.
그리고 추상화된 비즈니스 요구를 현실 세계로 가져와 사용자한테 전달하는 역할인 개발자가 있다.

우리는 팀이고, 좋은 제품에 "적시"에 나와야 하기에, 우리의 마인드 셋, 그리고 노력들이 그 결과를 만들어 줄 것이라고 생각하게 되었다.

나의 이야기는 여기까지이다. 짧지만 많은 부분이 변화 하였다. (level up ✨)

이제 잘한 점, 아쉬운 점, 지속할 점, 개선할 점에 대해서 평가 해보겠다.

잘한 점

  1. 리더 분을 통해 많은 부분을 배웠다.
  2. 그뿐만 아니라 가르쳐 주신 부분들로 내 삶이 되도록 녹여내었다. (오전에 최신 기술 트렌드 읽기, 컨퍼런스 관심 갖기, 기술 문서 작성하기 등등등...)
  3. 바잉스퀘어라는 회사 내에서 다양한 분들과 친하게 지냈다.
    행복한 삶은 좋은 인간관계도 연관된다 생각한다. 되도록이면 재밌고 즐겁고 싶다.
  4. 스터디하면서 책에 취미를 두기 시작했다. (sns 끊었다)

아쉬운 점

  1. 기술적으로 어떤 부분을 하고 싶은지 주체적으로 생각하지 못했다.
  2. code review에 수동적이었다.
  3. 개발자 경험을 향상시키지 못했다. (DX)
  4. 사이드 프로젝트를 통해 새로운 기술을 도전하지 못했다.
  5. 회사의 정치적인 이슈로 인해, 굉장히 마음 아파하고 불안했다.
  6. 개발자로서 목표와 마일스톤이 없었다.

지속할 점

  1. 배우려는 마음을 잃지 않는다.
    개인적으로는 세상에서 제일 무서운 사람은 배우려는 사람 같다.
  2. 책 읽는 습관

개선할 점

  1. 새로운 기술이 나오면 사이드 프로젝트를 통해 기술 경험 쌓아보기
  2. 개발자 경험 향상시키기
  3. 사람들의 관계성이 휘둘리지 말고 기술 집약적으로 생각하기
  4. 개발자로서 목표와 마일스톤 수립
  5. code review 적극적으로 하기
    코드 뷰를 1순위로 생각한다.
    모르는 기능을 꼭 물어본다.
    이해가 되지 않으면 꼭 의도를 물어본다. 등

추억 슬립


자주 마시는 밀키스 💙


EMMA Name tag!!


나 혼자 하는 야근 ㅋㅋ..


점심 시간에 공부 !!


무두절에 절친과 땡땡이


e스포츠로 선정 되어야 할 피카츄 배구


스웨거 안 맞아서 고민하는 절친..


즐거웠던 스터디 !


즐거웠던 사업부 !

그리고 이직 ㅎㅎ

이제 빠빠이 !!!!!!🙇🏻‍♀️

저 이직해요 🥹💝

profile
안녕하세요 프론트엔드 엔지니어 김예은입니다.

4개의 댓글

comment-user-thumbnail
2024년 2월 23일

잘 읽었습니다 이직해서는 행복개발하세요

답글 달기
comment-user-thumbnail
2024년 6월 18일

구글링하다 들어왔는데 많은 정보 얻고 갑니다. 이십대 마지막 도전으로 개발자 취준 시작하게 되었습니다. 혹시 선배님께서는 여기 어떻게 생각하는지 한번 봐주시면 감사하겠습니다! (https://bit.ly/3VKboTU)

답글 달기
comment-user-thumbnail
2024년 6월 18일

구글링하다 들어왔는데 많은 정보 얻고 갑니다. 이십대 마지막 도전으로 개발자 취준 시작하게 되었습니다. 혹시 선배님께서는 여기 어떻게 생각하는지 한번 봐주시면 감사하겠습니다! (https://bit.ly/3VKboTU)

답글 달기
comment-user-thumbnail
2024년 6월 18일

구글링하다 들어왔는데 많은 정보 얻고 갑니다. 이십대 마지막 도전으로 개발자 취준 시작하게 되었습니다. 혹시 선배님께서는 여기 어떻게 생각하는지 한번 봐주시면 감사하겠습니다! (https://bit.ly/3VKboTU)

답글 달기