주제
- 4년간의 경험과 선택들.
- 대단한 사람이 대단히 앞서나간 이야기가 아닌, 평범한 사람이 약간 먼저 경험한 이야기.
발표자: pixelic 한정수
- 체육전공
- → 무역사업 경험, 진로변경
- → 대학 졸, 회사 취업/퇴사
- → 온라인 무역사업, 결혼
- → 국비, 개발자 취업
개발자로 취업한 과정? → 강의보셈. 오늘은 이후의 이야기.
- 블로그 보면 회고 글을 통해서 자세히 알 수 있음.
1년차: 나무가 자랄 수 없는 콘크리트 바닥
극 초기 스타트업, 백엔드 개발자
경험한 것들
- 개발자가 되었다는것만으로도 기뻤음. 원래 받던 절반의 연봉.
- 이상한 최종 과제
- 베트남 P2P 대출 시장을 조사해서 보고서 제출해라.
- 입사 전부터 이상한 느낌
- 일을 하지 않는 CTO
- 업부시간 내내 놀았음.
- CTO왈: 노는것처럼 보이겠지만 머릿속으로 아키텍처르 짜고 있는거야
- 7개월간 제품 개발 x
- 실무 경험하지 못함.
- 과제만 진행 (게시판 CRUD, AWS 조사 등)
- 4개월 후 임금 체불, 사무실 이전(사무실 공유), 실내흡연자가 있어서 매일 마스크씀.. (코로나 전)
- 7개월만에 퇴사.
- 29.9살.
- 이직할 회사 없음.
- 다음에 반드시 좋은 회사로 이직해야 겠다.
좋았던 선택들
- 학습 내용 깃허브,블로그에 정리
- 직접 코드리뷰 환경 세팅. git, github
- 이 경험을 면접관이 좋게 평가함.
- 환경이 좋지 않아도 스스로 개선하려고 노력
- 이 경험을 면접관이 좋게 평가함.
- 컴공 전공자와 cs 기초 스터디
- 개발자 커리어 세미나 참여.
- 개발자 지인이 없었음. 칙칙하지만 세미나 참여를 통해 남들의 커리어를 듣고, 나의 커리어를 어떻게 쌓을지 알게됨
- 만난 사람의 소개로 줌인터넷 사내추천.
- 코딩테스트를 포기하지 않은 것.
- 이력서 통과되면 코테를 봐야 함. 준비가 안되어있어서 테스트 일정을 조금 미룸.
- 겨우 테스트 통과.
후회되는 선택들
- 미리 코테준비 하지 않은 것.
- 국비, 첫회사동안 코테준비를 안함.
- 자료구조랑 시간복잡도만 알아도 준비가 가능하다.
- 우테캠프 2기에 지원하지 않은 것
- 급해서 취업했는데 더 빠르게 성장할 수 이썼다.
- 더 빠르게 퇴사하지 않은 것
2년차: 본격 서비스 개발자
줌인터넷, 팀원 16명
경험한 것들
- 신입 개발자 파일럿 프로젝트
- 수습기간 진행, 통과 여부 결정
- 서비스 설계부터 배포까지 직접 진행.
- 질문은 적당히. 직접 문제 해결책을 찾는 능력
- 3개월간 09시부터 24시 회사에서 개발 (00시 문닫는 시간)
- 스프링과 뷰를 모르지만 학습 개발 배포
- 노션으로 언제든 팀원들이 프로젝트 진행과정을 볼 수 있게 했음.
- 단기간 급성장
- 혼자 7개월 < 파일럿 1개월
- 첫 서비스 개발 및 배포
- IDC → AWS 이전
- IDC 개발,운영 경험
- 마이그레이션 경험
- 회사 기술블로그 글 기고
좋았던 선택들
- 이직 타이밍
- 맡았던 큰 프로젝트 끝남.
- 줌인터넷 서비스 안정 상태
- 편안보다 빠른 성장을 추구
- 업무가 편하면 마음이 불편해짐.
- 성장의지가 강한 선임 개발자분들의 이직
- 집중할 서비스 도메인을 정해야될 타이밍
- 서비스 분야(도메인) 정하고 이직
- 백엔드 개발자로서 성장하기 좋은 도메인?
- 결제 도메인
- 돈과 직결되어 안정성이 중요
- 트랜잭션 처리, 고가용성, 내결함성 등
- 결제 도메인 vs 다른 도메인의 결제 파트
- 파트에 배정받지 못할 리스크가 있다. 이를 제거하기 위해 결제도메인회사로 이직 준비.
- 가고싶은곳 토스 페이먼츠 vs 네이버 파이낸셜
- 토스 최종합이 네이버 코테합보다 빨랐음.
- 기술면접 경험이 좋아 토스 결정.
- 최대한 많은 회사에 지원하고 그 중 골라서 이직하는 것이 일반적이나, 같은 도메인 회사들에만 지원할 경우
- 경력기술서를 하나로 통일
- 기술면접 준비 더 깊게 가능 (도메인)
- 면접 질문 비슷하게 나옴 → 점점 합격 확률 높아짐
- 출퇴근길 개발읽기 운영
- 동기들과 개발 스터디
- 자극
- 넥스트스텝 TDD 클린코드 강의 수강
- 내 나이만큼 책 읽기
- 개발자가 되니까 개발책만 읽게됨.
- 다양한 분야의 책을 읽기
후회되는 선택들
- 회사 업무와 개인 공부 분리
- 개발자에게 가장 좋은 성장 재료는 회사 프로젝트이다.
- 기획자의 요구사항 처리와 장애 대응만 하고 끝냄.
- 개발 강의 수강 대신 회사 코드 품질 개선, 테스트 코드 추가했으면 회사에서 인정받고 더 빠르게 성장 가능했을 것
- 개발자에게 가장 좋은 성장 재료는 회사 프로젝트이다.
- 레거시 코드에 불만을 가진 것
- 내가 작성하는 코드들도 바로 레거시가 된다.
- 당시에는 최선의 선택이었을 수 있다.
- 불만을 갖기보다 조금이라도 더 개선하려고 노력 필요.
- 레거시코드 개선 경험은 기술면접에서 가치가 높음.
- 개발자 업무의 절반 이상은 기존 코드 개선이다.
- 어차피 해야된다면 더 적극적으로 즐거운 마음으로 하자.
3년차: 성장 vs 육아
토스 페이먼츠 코어플랫폼팀(결제 시스템 개발)
- 원한 회사, 도메인, 역할.
- 약 20명 팀원
- 코틀린
- 가상계좌 결제 서비스
경험한 것들
- 가상계좌 결제 시스템 마이그레이션
- 이전까지 본 레거시는 레거시가 아니었다.
- 토스페이먼츠 = LG U+ PG사업 인수.
- 데이콤시절부터 이어져온 20년 묵은 코드
- 코틀린 + 스프링 마이크로서비스로 개선
- 이전까지 본 레거시는 레거시가 아니었다.
- CTO님의 찐한 코드리뷰
- 시간을 많이 투자해주셨음.
- 회의실에서 1~4시간 코드리뷰
- 쉽게 경험하기 힘든 성장의 기회
- 너무 뛰어난 동료들
- 팀원들에게 배울 점들이 너무나 많다.
- 내가 이 팀에 있어도 되나?
- 개발자를 계속 해도 되나?
- 나는 저정도로 개발에 올인할 자신이 없는데
- 개발자를 그만둘까 고민
- 오전 11시 출근, 새벽 0~3시 퇴근
- 일을 많이하게 된다.
- 육아중이 아니었다면 최고의 성장 환경
- 생후 10개월된 딸과 함께할 시간 부족
- 출근 전 30분이 전부
- 와이프 홀로 독박 육아
- 5개월만에 퇴사함.
- 이유
- 딸과의 시간
- 장기간 독박육아로 지친 와이프
- 미국회사 취업 준비
- 진행하던 프로젝트 배포에 성공한 상태.
- 이유
좋았던 선택들
- 코드리뷰를 자주 요청드린 것
- 담당했던 프로젝트의 배포까지 끝내고 퇴사한 것
- 퇴사 이후 4개월 휴식기
- 개발자로 딱 3년 일함.
- 처음으로 느긋한 휴식
- 육아, 운동, 이민준비, 독서
- 푹쉬니까 다시 일하고 싶어짐.
후회되는 선택들
- 육아 난이도 망각하고 토스에 합류한 것
- 지금은 좋아지고 있고, 최고지만
- 영유아 육아중엔 권하고싶지 않음
- 개발자의 길을 포기하려 한 것
- 워낙 잘하시는 개발자분들이 많았음.
- 그틈에서 나는 개발자로서 자격이 없다는 생각 시작.
- 카페 창업, 사업 아이디어 구상
- 돌이켜보면 가면증후군. 가볍게 ㄴ넘길수 있었다.
4년차: 미국 실리콘 밸리로
pixelic, 총 7명 개발4명
- RoR, Vuejs
경험중인 것들
- full remote + 원하는 시간 장소
- 서로 일하는 시간을 공유하지 않는다.
- 비동기 커뮤니케이션
- 원하는 시간에 메시지 보내고 팀원이 일하는 시간에 답변 받음.
- 급하면 dm이나 허들을 통해 실시간 대화
- 일이 너무 느린거 아닌가? 싶은 생각이 든다면 shape up
- shape up (제품 개발 프로세스)
- basecamp라는 회사에서 소프트웨어 제품 개발 프로세스.
- pre 시리즈 a 투자 유치
- 투자 받는 과정 가까이서 볼 수 있어서 좋았다.
- y combinator 합격
- 발전 가능성 높은 초기 스타트업의 성장 투자를 돕는다.
- 6번 도전했음.
- 회사 지분을 %단위로 받으며 입사.
- 회사가 되면 내가 잘되는 것.
- 직원입장에서 유리한 RSA
- 매년/매달 정해진 %씩 받음. 꽉채우지 않아도 된다.
- 실리콘밸리에서 흔하나 한국은 드물다.
좋았던 선택들
- 6번 피벗한 팀에합류한 것.
- 팀의 유대관계나 믿음 개인역량이 뛰어난 팀이라는 방증.
- 새로운 기술 스택에 과감하게 도전한 것
- 자바스프링이 아니어도 도전하자.
- 살면서 했던 가장 좋았ㄷ너 선택들 == 손에 쥐고있던것들을 놓았던 것들
- 넒은 시야.
- 초반에 시스템 아키텍쳐 직접 그려보고 피드백 받은 것
- 이해한 부분까지 직접 그려보는 것을 추천.
- 직접 그리면 본인이 모르는 부분을 바로 파악 가능하다.
- 코드만 읽었을 때보다 빠르게 파악 가능했었음.
- 피드백을 받는 과정에서 자연스럽게 커뮤니케이션 시작
후회되는 선택들
- 아직까지는 없습니다.
후회 최소화
- 후회 최소화를 목표로 도전적인 방향을 선택하면 돌이켜 보았을 때 대부분 가장 좋은 선택이었다.