본문으로 건너뛰기

첫 직장, 스타트업에서의 2년

· 약 10분
Sewon Kim
Front End Engineer @ Neurocle

뉴로클에서 일한 지 벌써 2년이 다 되어갑니다. 첫 직장, 스타트업에서의 2년을 돌아보고 앞으로의 각오를 정리해 봤어요.

입사 전

합격 메일을 받고 약 3주간의 시간이 있었습니다. 사실 그때 당시에는 AI 도메인에 대해 잘 몰랐고, 회사가 만드는 제품에 대해서도 잘 몰랐어요. 그냥 개발자로 커리어를 한시라도 빨리 시작하고 싶어서, 빨리 개발을 잘하게 되어 좋은 회사에 가고 싶다는 단순한 생각으로 입사를 결정했던 것 같습니다. 그만큼 모르는 것이 많았기에 불안함도 컸고요.

신입 개발자 생존의 기술

첫 사회생활이다 보니 대책 없이 떨기만 했고, 불안감을 줄여보고자 <신입 개발자 생존의 기술> 같은 책을 사서 입사 이후 시뮬레이션을 돌려보기도 했어요. 저런 책들은 사실 실리콘 밸리를 기준으로 하고 있는 것들이 많기도 하고, 실제로 적용 해 볼만한 것들은 많지 않았던 것 같습니다. 그냥 재미있는 책을 읽을껄... 껄껄

돌아보니 입사 전의 저는 정말 아무것도 모르는 상태였던 것 같네요.

입사 후

2년이라는 시간이 지나면서 회사에서 일하는 것, 개발자로서의 나, 조직 문화 등에 대해서 많은 것들을 배웠습니다.

다시 돌아간다면 이렇게 보내고 싶어요

스타트업은 다 그런 건지 모르겠는데 입사 후에 따로 업무가 배정된다기보다 스스로 업무를 찾아서 진행하는 방식으로 일했습니다. 그래서 입사 후 3개월 동안에는 아래와 같은 것들을 진행했습니다.

  1. 업무 환경 세팅
    • 오피스 툴 사용법 익히기
    • 개발 환경 세팅
  2. 회사 파악하기
    • 회사 히스토리, 비전 파악하기
    • 사내 그라운드 룰 익히기
  3. 동료 파악하기
    • 이름과 얼굴 외우기
    • 팀원들의 역할과 성격 파악하기
  4. 제품 사용해 보기
    • 제품 사용법 익히기
    • 제품의 장단점 정리 및 공유
    • 제품 프론트 코드 리딩하며 장단점 정리 및 공유

제가 입사할 당시만 해도 HR팀도 없었고, 온보딩 시스템이 따로 없었다 보니 대부분의 것들은 알아서 하는 수밖에 없었는데요. 회사 자료를 공개된 범위 내에서 들쑤셔보면서 궁금한 점, 개선할 점, 아이디어 등 을 노트에 정리해 두었고, 여기에서 지적한 문제점을 개선하는 것을 제 첫 공식 업무로 가져갈 수 있었습니다.

첫 커밋

당시에는 입사 후 얼마나 빨리 첫 커밋, PR을 할 수 있을 것인가에 집착했는데 사실 그건 크게 중요하지 않은 것 같아요. 오히려 프로젝트 코드 리딩을 통해서 코드 스타일을 익히고, 프로젝트를 정확히 파악하는 것이 더 중요한 것 같습니다. 만약에 다시 이때로 돌아간다면 몇 가지를 더 보완에서 더 똑똑하게 보내고 싶습니다.

  1. 회사에서 배운 것을 몽땅 문서화하기
    • 당시 회사에서는 문서화 문화가 없었는데 제가 배운 것들을 기록해 두면 스스로에게도 그리고 미래의 팀원에게도 도움이 될 것 같습니다.
    • 이때에는 회의에 참석해도 할 수 있는 말이 없지만 회의록을 작성해 공유하면 다른 분들께 도움이 될 거라고 생각합니다. 모두가 필요하지만 아무도 하지 않는 일들을 처리하며 회사에 도움을 주고 싶어요.
  2. 모두가 원하지만 아무도 하지 않는 일들을 처리하기
    • 코드 레거시 제거
    • 리팩토링(이전에 테스트코드 작성)

2년동안 배운 것들

익숙한 도메인도 아닐 뿐더러 B2B서비스이고, 서비스를 제공하는 방식도 다르다 보니 사용하는 기술들도 여타 IT서비스들과는 차이가 있었습니다. 그래서 입사 초반에는 '이 회사에서 계속 커리어를 쌓는 게 맞을까'하는 고민이 많았던 것 같아요. 하지만 특수한 환경이기에 배운 것도 많습니다. 오랜 시간 동안 유지보수해온 프로젝트를 개발하면서 배울 점도 정말 많았으니까요!

이밖에도

  1. 딥러닝 용어와 개념
  2. 비즈니스적으로 사고하는 방법
  3. 다양한 환경(ex. 인터넷이 제공되지 않는 환경)을 고려하는 방법
  4. 다국어 언어 시스템 관리 방법
  5. Redux, Redux saga를 활용한 상태관리 방법
  6. 성능 최적화 기법

등등... 하나하나 나열하기엔 어렵지만 확실히 2년 전의 저와 지금의 저는 많이 달라졌습니다. 특히 입사 3개월 차부터 면접관으로 참여하면서 '일의 의미'에 대해서 깊이 생각해 보게 되었고, 단순히 대기업 IT를 부러워하던 취준생의 세계를 깨고 나온 것 같습니다. 면접관으로 참여하면서 처음에는 질문하기에 급급했는데 이제는 그때보다 여유를 가지고 그 사람과 대화를 합니다. 가끔 면접이 재미있다고 느껴질 때도 있었어요! 회사 생활을 통해서 개발 외적으로도 배운 것들이 많네요.

업무일지1 업무일지2

사진 속 3권의 노트는 입사 첫날부터 써온 업무일지입니다. (저는 기록이라면 아날로그든 디지털이든 가리지 않고 좋아하는 것 같네요) 매일매일 내가 한 일, 할 일들을 기록하고 정기적으로 회고하면서 내가 할 수 있는 것, 할 수 없는 것, 잘하는 것, 못하는 것, 좋아하는 것, 싫어하는 것을 파악하는 것이 스스로의 성장에 큰 도움이 된 것 같아요. 개발자로서의 나를 알아 갈수록 일도 더 재미있어지기도 하고요.

함께 자라기

일하다 보면 개발 자체가 힘들기보다는 인간관계나 회사생활이 힘든 경우가 더 많은 것 같습니다. 코드를 잘 작성하는 것도 중요하지만, 팀원들과의 관계를 잘 유지하는 것도 중요하고, 그렇게 쌓은 팀원과의 신뢰가 다시 좋은 코드로 이어진다고 생각합니다. 결국 더 개발을 더 잘하기 위한 방법 중 하나가 팀원들과의 관계를 잘 유지하는 것이지요.

커뮤니케이션 역량도 2년간 많이 좋아진 것 같아요. 저는 조금 직설적으로 커뮤니케이션하는 편인데요. 동료 평가에서 이런 내용에 대한 피드백들을 들으면서 처음보다 더 점잖은 커뮤니케이션을 하게 된 것 같습니다. 직설적인 커뮤니케이션이 나쁘다고 생각하는 것은 아니고, 팀원 각자의 성향을 잘 파악하고 이를 존중하며 일하는 것이 더 중요하다고 생각합니다. 서로 다르기 때문에 오히려 좋다고 생각해요.

2년 동안 거의 매일 보며 일하는데 사이가 좋으면 회사 생활도 덩달아 즐거워지는 것 같습니다. (월요일 좋아!) 사적으로 너무 가까운 것도 좋지는 않은 것 같고, 적당히 거리를 유지하면서 시답잖은 농담을 할 수 있는 사이가 좋은 것 같아요. 팀원분들과 이야기하다 보면 정말 진심으로 웃을 때가 많습니다. 회사생활이 즐겁게 느껴지는 것은 쉽지 않은 일이라고 생각하는데 저는 인복이 많은 사람인 것 같습니다🥰

나는야 3년차 개발자!

2년 동안 1번의 메이저 업데이트, 10번의 마이너 업데이트를 경험했습니다. 지금은 또 한 번의 큰 메이저 업데이트를 준비 중이고요. 그리고 직접 2명의 프론트 팀원을 채용해 지금은 4명이서 북적북적 개발하고 있습니다. 채용 과정에서 채용 공고 업데이트와 팀 내부 면접 프로세스 개선에 참여하며 프론트 개발자로서 스스로를 돌아보는 시간도 있었고요.

3년차 (3년차에는 더 강해질까요...?)

보통 약속의 3년 차(보통 이직을 3년 차에 많이 한다)라고들 하는데요. 누구와의 약속인지는 모르겠지만 아직까지는 뉴로클에서 하고 싶은 것들이 많습니다. 제가 입사할 때 10명 규모였는데 이제 30명 규모로 성장해서 조직적인 변화도 많이 있었고, 사옥 이전으로 지금은 또 새로운 회사에서 근무하고 있는 기분이에요. 그리고 스타트업이 다 그런 것은 아니겠지만 여기에서는 제가 정해진 일보다 하고싶은 일을 할 수 있는 가능성이 더 많고, 개발 문화를 만들어나가는데 더 유연한 환경이어서 만족스럽습니다. 처음엔 제가 일하고 싶은 곳이 아니었지만 제가 일하고 싶은 환경을 스스로 만들어 나갈 수 있는 곳이라는 게 매력적이었던 것 같아요.

앞으로는 이런 것들을 좀 더 해보고 싶어요

  1. TDD 공부하고 실제로 개발에 적용해 보기
  2. 브라우저 동작에 대해 더 깊이 이해하기
  3. 디자인 패턴 등 개발 지식 더 깊이 공부하고 적용해 보기
  4. 앞만 보고 개발하지 않고, 업무 중간중간 여유 만들기
  5. 다른 의견을 더 부드럽게 다루는 방법 익히기

3년 차 회고할 때쯤에는 더 많은 것들을 배우길 바라며 마무리하겠습니다. 화이팅~!해야지~!👍🏻👍🏻👍🏻