
1년간의 이야기
입사 (2023년 9월)
대학교 졸업 후에 토스뱅크에 FullStack Developer(채용 전환형 인턴)로 입사했다.
설레는 마음으로 입사를 했고, 잘하고 싶은 마음도 컸다.
첫달은 내 업무가 무엇인지, 누구랑 일을 하게되는지 등 모르는 정보들을 파악하기 위해 노력했다. 내 옆, 뒤, 앞에 계신 분들에게 계속 질문을 했는데 은행 용어들이 섞인 어려운 대답에 아무것도 이해하지 못하는 경우가 대부분이었다. 듣고 이해하지 못하는 내용들은 노트에 써놓았다. 나중에 돌고돌아 이해할 수 있기를 바라면서.
대화를 통해서 몸으로 느낄 수 있었다.
- 잘하는 분들이 정말 많다는 것
- 배울 것이 정말 많다는 것
나는 Loan Tribe의 Housing Loan Squad(전세대출 스쿼드, 이하 HL)에서 LUMOS를 개발하게 되었다. 토스뱅크 앱에서 전세 대출을 신청하면 LUMOS를 통해 그 이후 심사부터 대출 실행까지의 모든 과정이 일어난다. LUMOS의 사용자는 HL 팀원들과 여신운영팀이고 전세대출 운영플랫폼의 FE와 BE를 만드는 것이 나의 업무이다.
내 업무를 파악하고 코드를 조금 읽어본게 전부였지만 왠지모르게 여기서 일하는게 재밌고 앞으로가 기대된다는 생각이 들었다.

PROVE IT (2023년 10,11월)
내가 여기서 계속 일하려면(채용 전환) 어떻게 해야할까? 회사에 내가 필요한 존재임을 증명해야한다.
그렇다면 내가 보여줄 수 있는게 뭐가 있을까? 물론 실력과 커뮤니케이션 능력이 좋다면 그냥 퍼포먼스로 보여주면된다. 당연히 이게 베스트이다. 하지만 나에게는 해당되진 않았다.
나는 내가 보여줄 수 있는 것은 업무에 대한 태도
, 실행력
, 스피드
이 세가지라고 생각했다.
업무에 대한 태도는 해결해야하는 업무의 문제 정의부터 문제 해결까지 전체적으로 적용되는 컨셉이라고 생각한다. 업무를 받았을 때, 먼저 문제 정의를 해야한다. 문제를 정의하지 않으면 해결할 수 없거나, 지금 자신이 해결하려고하는 문제를 잊어버리곤 한다. 문제를 정의하는 과정에서 맡은 업무가 막막해 보일 수 있다. 이때 필요한 것이 실행력이라고 생각한다. 안해본 것은 해보면되고, 모르는 것은 물어보면 된다. 반면에 문제 정의가 되고 머리속에 그림이 그려진다면 빠르게 실행하자. 나에게 고객은 여신운영팀이었고 빠른 개발과 배포는 고객들의 시간을 아끼는 것이다.
인턴 기간동안 내가 보여줄 수 있는 임팩트(Focus on Impact)는 위 세가지 원칙을 꾸준하게 지키는 것이었고 다행히 면접 기회가 주어져, 두번의 추가적인 면접을 거쳐 정규직으로 전환되었다.

2023년 12월, 2024년 1월
전세 대출이라는 도메인 아래에서 개발을 하며 문제 정의부터 문제를 해결하는 과정에서 커뮤니케이션을 정말 많이했다. 아니 커뮤니케이션을 많이 할 수 밖에 없었다. A라는 용어가 있으면 이 용어의 정의를 읽어봐도 이해가 안되는 경우가 많았기 때문에 변수 A에 대한 판단조건을 작성할 때 PO, PM 분들과 이야기한 후에 로직을 작성했다.
또한 해결하려는 문제가 FE에서만 국한된것이 아닌 BE, 스크래핑과 관련된 경우가 많았기에 백엔드 코드도 조금씩 익숙해지기 시작했다. 언어와 프레임워크가 다르긴 했지만(Kotlin, Spring) 서버의 전체적인 구조나 코드를 작성하는 방식은 언어만 다를뿐 유사했다. 하지만 Kafka, Redis, DB등 공부하지 않았던 부분들과 마주할 수 밖에 없었고 이쪽에 대한 이해도는 낮았기에 서비스 코드를 작성할 때 어려움이 있었다. 나는 이런 부분들에 있어서 스스로 고민을 많이했다. FullStack 개발을 할 수는 있지만, 깊이는 없었다. 대학교 때부터 프론트엔드 기술들에 관심이 많았고, 서비스를 만들기 위해 백엔드가 꼭 필요했기에 둘 다 개발을 했다. 프론트엔드를 깊게 다뤄보고 싶었다. 입사 때부터 고민은 있었지만 이 시기에 고민이 더 깊어졌다.
고민과는 별개로, 이 시기에 다양한 프로젝트를 병렬로 진행했던 기억이 난다.기억에 남는 프로젝트는 여신운영팀의 업무 효율을 크게 개선한 알림 서비스 구축이었다. Server Sent Event를 활용하여 알림 시스템을 만들었고, 이를 통해 여신운영팀의 업무 시간이 얼마나 단축되었는지 수치로 입증했다.
기획부터 개발 그리고 수치로 증명까지 해내는 임팩트 사이클들을 경험하면서 스스로 임팩트를 만드는 사이클을 그릴 수 있게 되었다.
- 문제 정의: 핵심 빼고 다 덜어낸다. 린(Lean)하게 출발하자.
- 핵심만 만든다: 기능이 동작하는 것을 보며 뿌듯함을 느낀다.
- 사족을 붙인다: 덜어낸것을 다시 붙인다.
- Diff를 보여주자: 내가만든 기능의 임팩트를 보여주자.
Go Lean

프론트엔드 엔지니어가 하고싶어요 2024년 2,3월
입사할 때 부터 했던 고민이 정점을 찍었다. 대학교 때 목표로 생각한 프론트엔드 엔지니어가 하고싶었다.
나는 프론트, 백엔드, DevOps등 분야를 가리지 않고 내가 겪고 있는 문제를 해결하는데 집중하는 엔지니어다. 문제를 해결하는데 필요한 기술이라면 가리지 않고 배웠다. 다만, 좋아하는 분야는 프론트엔드였다.
진로 고민을 팀원분들에게 말씀드리기 시작하면서 감사하게도 많은 조언을 받을 수 있었다. 회사에 남아서 좋은 퍼포먼스를 계속 보여서 전환의 기회를 노리는게 어떻겠냐는 의견이 많았다. 하지만 당시 내 생각의 좁은 시야에서는 그 조언이 들리지는 않았다.
내가 시도할 수 있는 것은 두가지였다. 회사에서 직무 전환하기, 퇴사하고 프론트엔지니어가 되기. 회사에서는 직무 전환은 어려웠고 나의 선택은 퇴사였다.
회사 생활을 하면서 본받고 싶은 개발자분들을 많이 만났고 같은 공간에 있는 것만으로도 동기부여가 됬다. 그리고 전체적인 코드베이스에 대한 이해도가 많이 올라와서 지속적으로 좋은 퍼포먼스를 낼 수 있었다고 생각하기 때문에 퇴사를 한다는 선택을 수만번 아니 수천만번 고민했다.
개인적인 목표 그리고 감정이 작용이 안한 순수한 이성적 판단은 아니지만, 내 선택에 대한 책임을 질 각오 그리고 스스로에 대한 확신을 가지고 선택을 내렸다.
Goodbye 2024년 4월
2024년 4월 1일 최종 퇴사를 했다. 최고의 동료분들과 함께 일을 하면서 많은 것을 배웠다.

2024년 5,6,7월
퇴사를 하고 프론트엔드 직무로 지원을 했다. 과제 전형은 내가 본 기업들이 다 비슷했다. 하나의 서비스를 바닐라 자바스크립트 또는 리액트로 구현하는 것이었다. 도메인만 다르고 구현하는 것은 다 비슷했기 때문에 나중에는 사용되는 코드가 많이 겹쳤고, 점점 합격률도 올라갔다.
과제 전형에서 중요한 것은 뭘까? 내 생각에는 요구사항(+숨겨진 요구사항)의 정확한 구현이다. 현업에서 혼자 기획서를 읽고 애플리케이션을 구현한다고 생각하고 임하자. 기획서에는 개발에서 중요한 조건들이 빠져있을 수 있다. 이런 조건들은 개발자가 스스로 케어할 수 있어야한다. 채점하는 사람도 유저이기 때문에 애플리케이션을 사용해 볼 것이다. 그런데 좀 다른 점은 뛰어난 유저라는 것이다. 그렇기 때문에 직접 모든 기능의 동작을 테스트로 증명해놓으면 매우 좋다. 내가 채점자라면 동작하는 기능들을 체크하기 가장 편한 방식은 E2E 테스트를 확인하는 것이라고 생각한다. 개발하는 동안 어떤 케이스까지 고려해가면서 코드를 작성했는지 테스트 케이스에 다 드러난다. 요구사항과 테스트가 완벽한가? 그러면 코드의 구조, 예를 들어 '뷰와 비즈니스 로직의 분리'와 같은 리팩토링을 하면된다. 이 때 테스트가 있기 때문에 때문에 리팩토링을 할 때 안정감을 얻을 수 있다.
한 면접에서 토스뱅크에서 무엇을 배웠는지 물어봤다. 이런 질문을 받을것이라는 예상은 못했지만 바로 생각나는 답변이 있었다.
개발을 대하는 태도를 배웠습니다
토스뱅크에서 내가 만난분들에게서 느낀 프로의식, 개발을 대하는 태도는 앞으로 개발자로 살아가면서 꾸준하게 지키고자한다.
카카오 엔터테인먼트 Frontend Engineer 2024년 8,9월
사전과제, 1차면접, 2차면접을 거쳐 카카오 엔터테인먼트에 입사했다.
Step Forward
- 지난 1년간 나는 어떻게하면 더 잘할 수 있을까라는 고민을 많이했다. 많은 서비스들을 만들며 반복되는 구현을 많이했다. 앞으로는 반복되는 구현과 이미 알고 있는 업무를 대할 때 어떻게하면 시간을 절약할 수 있을까에 대한 고민을 많이할 것이다. 즉, 업무에서 시간을 절약하는 방법을 찾기위해 시간을 투자하려고 한다.
- 프론트엔드 엔지니어링에 베이스를 두고 큰 그림을 볼 수 있는 소프트웨어 엔지니어가 되고자하는 목표를 가지고 있다. 최근에 관심을 가지고 공부하고 있는 키워드는 Cloud Native, LLM, Rust이다. 서비스를 글로벌 스케일로 배포하기 위해 클라우드 환경에서 서버를 관리 및 확장하는 것, LLM을 활용하여 압도적인 생산성을 만들 수 있는 워크플로우를 구축하는 것이 목표이다.