오늘만 무능하기로 했다
토스 Frontend Accelerator 3기 후기 (feat. 카카오페이 2차 면접 후기)
2025. 10. 14.
프롤로그
블로그의 첫 글은 정말 멋진 글이었으면 했다.
우여곡절 끝에 하나를 올렸지만, 금세 부끄러워져 내렸다.
하지만 최근의 경험을 통해 깨달았다. 날것 그대로 드러내고 연결을 맺는 것. 그것이 가치를 넘어, 반드시 해야 할 일임을.
사람은 변하지 않는다고 한다. 그러나 변화의 가능성이 있다면, 그건 분명 다른 사람으로부터 온다고 생각한다. 돌이켜보니 내가 그랬다.
그래서 더 잘 변하려고 글을 쓰기로 결심했다.
이 회고는 개발자답게 비유하자면, 세상 지 혼자인 줄 알던 동기적인 프로그램이 혼자가 아님을, 세상이 비동기임을 진심으로 깨닫게 되는 이야기다.
평소처럼 두서없이 그간의 일을 늘어놓는 것부터 시작해보려 한다.
괴리
2025년 8월, 개발자 생활 2년 반 중 가장 큰 프로젝트를 마쳤다.
숙원이었던 레거시 코드 마이그레이션과 덤으로 SharedWorker를 활용하는 도전까지 해냈다.
불안을 잠재우려고 Anki 카드 400장을 만들어 기초를 다시 한번 다졌다. 수틀리면 빠꾸하려고 폴백부터 만들었다. 익힌 강의들을 되새기며, Radix Primitives를 필사하듯 코드를 썼다.
프로젝트는 성공했고 나도 성장했다. 아마도…
그런데 두 가지 괴리가 느껴졌다.
첫 번째, 회사.
프로젝트 후 회사는 조용해졌다. 다음 계획도, 공유도 없었다. CS만 처리하는 날들이었다. 나와 동료는 커뮤니티 피드백을 보며 새 기능을 만들었다.
두 번째, 나.
최근 몇 개월을 개발에 열중했고, 2년 반을 일했다. 그런데 백지 상태에서 코드 작성이 어려웠다. 과제만 보면 손이 굳었다.
앞으로 어떻게 더 좋게, 재밌게 발전시켜 나갈지 고민하는 것도 잠시, 이 간극 속에서 방황했다.
LLM형 개발자
애니메이션을 수없이 봐서, 일본어를 알아듣고 읽을 줄 안다. 근데 말은 못한다.
영화의 한 장면에 감동하지만, 그 하나의 씬을 그리는 데 참여한다면 뭘 할 수 있을지 상상조차 못한다.
어렸을 때, “쎈” 수학의 답지를 보고 숙제를 풀었다. 답지를 보고 감탄했다.
남의 코드는 읽히는데, 내 코드는 써지지 않았다.
Radix를 보며 “이렇게 하면 되겠구나” 싶었다. Tanstack Query를 보며 “이렇게 동작하는구나” 이해했다. 토스 오픈소스를 보며 “이게 베스트 프랙티스구나” 배웠다.
패턴은 적용할 수 있었다. 하지만 왜 이게 최선인지, 언제 다르게 해야 하는지 판단 기준이 없었다.
내 코드는 그럴듯해 보였다. 토스처럼, Radix처럼. 하지만 내 코드인지 확신할 수 없었다. 여러 곳에서 빌려온 문장으로 만든 작문 같았다.
전문가의 패턴을 익혀 그럴듯한 답변을 출력하는 지피티 인간(근데 지피티보다 못함).
블랙박스의 내부보다는 결과물만을 쫓았던 것이다. 생애 전체를 그렇게 살아왔다.
당연히 그 내부가 궁금하지만, 그냥 편하고 쉬운 길을 선택하며 살아온 것이다.
어렴풋이 느끼고는 있었지만, 이제는 흐린 눈으로도 그 문제의 존재가 느껴질 정도로 커져있었다.
그런 와중에 두 가지를 발견했다.
사내 지인의 추천으로 알게 된 토스 FE Accelerator 3기, 그리고 카카오페이 집중 채용 공고.
두 괴리를 동시에 해결할 수 있는 기회처럼 보였다. 회사를 바꾸고, 나도 바꾸고.
사전질문의 답을 작성하면서, 나는 내 문제를 처음으로 명확하게 언어화했다:
“숙련된 개발자들이 문제를 마주했을 때 머릿속에서 일어나는 사고의 흐름을 직접 보고 체득하고 싶습니다. 완성된 코드가 아닌, 그 코드에 이르기까지의 수많은 판단과 선택의 과정을 배우고 싶습니다.”
이게 답이라고 생각했다. 전문가의 사고 과정을 직접 보고 배우면, 내게도 ‘나만의 기준’이 생길 거라고.
라이브 한숨
서류가 통과했다. 그리고 라이브 코딩 + 면접 일정이 잡혔다.
라이브 코딩은 처음이었다. 그것도 “think aloud”—생각을 소리 내어 말하면서 코딩하는 방식이었다.
제출한 바로 다음날 면접을 봤기에 따로 준비할 시간도 없었다. 맨몸으로 코치님인 종택님을 만나뵀다.
긴장도 풀어주실 겸, 지금 이 라이브 코딩은 비포/애프터의 비포를 위한 것이니 부담을 내려놓아도 된다고 하셨다.
그러나 혼자서 인바디를 재는 것과 피티쌤 앞에서 인바디를 재는 것은 전극을 쥐는 손아귀의 힘부터가 다르다. 그것도 1시간 동안 최첨단의 인바디 기계로 측정당한다면.
화면 공유를 키자마자 상상보다 더한 현실을 마주했다.
단어보다 탄식이 길었다면 믿을 수 있을까?
“음…”
“아…”
“하…”
라이브 코딩이 아닌 라이브 한숨 쇼였다.
코드를 치면서도 “왜 이렇게 하는지” 설명할 수 없었다. 그냥… 이렇게 하면 될 것 같아서. Radix에서 봤던 패턴이니까. 토스 컨퍼런스에서 들었던 것 같아서.
정말 부끄럽게도, 자신의 괴리를 처절하게 마주하는 1시간이 그렇게 흘러갔다.
라이브 코딩이 끝나고 30분에서 1시간 정도 면접이 이어졌는데, 그건 면접이 아니라 심리 테라피였다.
종택님은 내 코드의 문제를 지적하는 대신, 전혀 다른 질문을 던졌다.
“메타인지 잘하신다고 하셨는데, 본인의 어떤 부분이 부족하다고 생각하세요?”
“음… 기본기와 기준들이 부족한 것 같아요. 그래서 공식문서도 많이 보고, 좋은 패턴들을 체화시키려고 노력하는데…”
“그런데 왜 그 간극이 안 채워지는 것 같으세요?”
”…”
그 순간, 뭔가 틀렸다는 걸 느꼈다.
종택님은 완전히 새로운 관점을 제시했다. 내게 필요한 건 외부의 ‘정답’이 아니었다. 내가 직접 부딪히고 얻은 ‘나만의 기준’, ‘나만의 패턴’이 필요했던 것이다.
“누가 이렇게 말했는데…” 가 아니라 “내 경험상 이럴 때는 이게 더 좋더라” 를 말할 수 있어야 했다.
그런 자신만의 기준은 설득의 최고 재료다. “내가 10만 번 해봤는데 이게 더 좋던데요?” — 그럼 사람들은 “아 그렇구나~” 한다.
면접 합/불을 떠나서, 이 30분이 2년 반 동안 받지 못했던 가장 날카로운 피드백이었다.
그리고 다행히, 과정에 합격했다.
최저점에서 아둥바둥하는 모습에 역설적으로 가능성을 보셨던 걸까.
페르소나
교육이 시작됐다. 핵심은 명확했다. 전문가는 인출(retrieval)과 청킹(chunking)의 대가다. 계속 내뱉어보고, 지식을 접고 접어서 모아서, 생각의 부하를 줄이는 것.
방법론도 배웠다:
- 10분 타이머로 의도적 수련하기
- 보고(관찰) - 하고(실천) - 피드백 받기
- 에너지를 아끼려는 본능을 거슬러 불편한 것 하기
동기들과 페어 프로그래밍, 몹 프로그래밍도 했다. 전문가의 패턴을 직접 보고, 내 코드에 피드백을 받았다.
그런데 뭔가 이상했다.
분명 열심히 하고 있는데, 마음 한편이 불편했다. 회고를 쓸 때도, 과제를 할 때도, 세션에 참여할 때도… 뭔가 ‘멋있게’ 보여야 한다는 강박이 있었다. “나 여기서 교육 열심히 잘 듣고 있어요”를 어필하는 느낌.
그러던 9월 11일, 카카오페이 1차 기술 면접 합격 소식을 들었다. 2차 면접이 일주일 뒤였다.
그때부터 마음이 복잡해졌다. ‘나는 정말 뭘 원하는 거지?’
교육 과정을 통해 성장하고 싶은 건지, 이직하고 싶은 건지, 아니면 둘 다인지. 면접 준비를 해야 하는데, 과제도 해야 하고, 세션도 있고… 우선순위가 뒤섞였다.
9월 15일 월요일, 나는 처음으로 솔직한 질문을 던졌다.
“다들 이 교육을 통해 무언가를 얻어가려 하는데, 내가 옆에서 면접 준비나 하고 있어도 되는 거예요?”
종택님은 웃으며 물었다. “그게 지금 대성님한테 가장 필요한 거면, 왜 안 돼요?”
그제야 깨달았다. 나는 내 딴에 이 ‘교육 프로그램을 배려’하고 있었다.
내 필요가 아니라, 이 프로그램에 맞는 ‘나’를 상정하고 그에 맞춰 행동하려 했다. 가상의 누군가에게 보여주기 위한 회고를, 목표를, 행동들을 만들어내고 있었다.
이것은 회사에서도 반복되던 나의 패턴이었다. 내 의견을 내기보다 기획과 디자인을 그대로 수용했고, 기술적 주장을 할 때도 ‘내’ 기준이 아닌 ‘외부에서 본’ 좋은 사례들을 방패처럼 내세웠다.
마음은 조금 편해졌다. 하지만 진짜 문제는 아직 수면 아래에 숨어있었다.
”혼자서” 이만큼 했다고
9월 17일 수요일, 카카오페이 2차 면접을 봤다.
면접은 크게 두 파트로 나뉘었다. 초반에는 이력서 기반의 실무적, 기술적 질문들. 후반에는 협업과 커뮤니케이션에 대한 질문들.
분위기가 확연히 달랐다.
초반: 혼자서 이런 걸 “다했다고?”
후반: “혼자서” 이런 걸 다했다고…
답변을 할수록 느꼈다. 나는 기술적으로는 할 만큼 했다. 하지만 그게 전부였다. 기획자, 디자이너, 다른 개발자들과의 협업 과정에서 내가 한 이야기가 없었다. 질문도, 의견도, 제안도.
면접 말미에 받은 피드백:
“본인의 바운더리를 벗어난 작업에 취약할 것 같아요.”
되새기면 되새길수록, 스스로 한 번도 생각해보지 못했지만 나를 본뜬 듯한 문장이었다.
뭔가 맞는 말 같은데… 왜 그런 건지는 잘 모르겠었다.
프랙탈
면접이 끝나고 바로 세션이 있었다. 시작 전에 종택님과 또 이야기를 나눴다.
“면접에서 이런 피드백을 받았어요.”
“어떻게 느껴지세요?”
”…맞는 말인 것 같아요. 근데 왜 그런지는 잘 모르겠어요.”
“대성님, 지금 교육 받으면서도 세션에서 질문이나 의견 편하게 내시나요?”
”…아뇨. 사실 머릿속으로는 생각이 있는데, 뭔가 다 정리돼야 말할 수 있을 것 같아서…”
“그게 바로 패턴이에요.”
나는 평생 “아무것도 하지 않기”를 선택해왔다.
의견을 내는 것, 도움을 청하는 것, 불완전한 생각을 표현하는 것—전부 차단되어 있었다.
그리고 이 패턴은 모든 곳에서 반복되고 있었다.
교육에서:
프로그램을 배려하고, 멋있게 보이려 했다. 내 진짜 필요가 아니라.
회사에서:
내 의견을 내지 않고, 기획과 디자인을 그대로 받아들였다. 기술적 주장도 ‘외부 기준’을 방패 삼아.
코드에서:
외부의 베스트 프랙티스만 끌어왔다. 내 기준, 내 패턴은 없었다.
인생에서:
다른 사람의 바운더리를 넘지 않으려 꾹 참았다. 모호하거나 불편한 상황이 오면, 침묵하며 안전지대로 후퇴했다.
프랙탈처럼, 똑같은 패턴이 모든 스케일에서 반복되고 있었다.
면접 피드백의 진짜 의미가 보였다.
“바운더리를 벗어난 작업에 취약하다” = 경계를 넘나들지 못한다.
나는 지금껏 내 영역을 넓히는 데만 집중했다. 더 많이 배우기, 더 잘하기. 이 교육도, 이직도 결국 그 연장선이었다. 더 좋은 코드베이스를 보고, 더 나은 패턴을 배우기 위해.
겉바속촉도 아니고, 겉은 그럴듯한데 속은 비어있었다. 한 인간이 혼자 쓸 수 있는 리소스는 한 줌에 불과한데, 가장자리만 억지로 밀고 밀어붙였다.
내가 깨닫지 못한 것:
내 “영역”을 넓히는 게 아니라, “내”가 경계를 넘나들면 되는 거였다.
프로덕트 엔지니어라는 건, 기획자, 디자이너와 건강하게 의존하고 의존당하는 거였다. 내가 다 잘할 필요는 없었다. 시스템 전체로 봤을 때, 그게 더 이득이었다.
“아무것도 하지 않으면 밑져야 본전”이라고 생각했다. 틀릴 일도, 부끄러울 일도, 상처받을 일도 없으니까.
하지만 그 선택이 쌓이면 가장 최악의 결과를 얻는다.
종택님이 물었다.
“1 vs -3 상황이 있다고 해봐요. 뭔가 시도했을 때 최악은 -3, 최선은 +1이에요. 아무것도 안 하면 0이고. 대성님은 어떻게 하시겠어요?”
“…0을 선택할 것 같아요.”
“그럼 질문을 바꿔볼게요. 오늘만 무능할래요?”
”…?”
“매일매일 0을 선택하면, 그게 쌓여서 결국 가장 큰 마이너스가 돼요. 반대로 -3이 나오더라도 다음엔 -2, -1로 나아질 수 있어요.”
짧은 대화 이후 정말 그 순간까지만 무능하기로 결심했다. 바로 이어지는 세션에서 항상 목구멍에서 걸렸던 말들을 조금씩 꺼내보았다.
개운하다
그날 이후, 뭔가 풀렸다.
후일담으로 동기들이 말해줬다. 세션에서 내가 “개운하다”라는 말을 그렇게 많이 했다고.
마음속에 떠오르는 생각이 있으면 일단 말했다. 완벽하지 않아도, 정리되지 않아도.
신기한 일이 일어났다. 뇌의 리소스가 확 풀렸다.
그동안 얼마나 많은 에너지를 ‘자기검열’에 쓰고 있었는지 깨달았다. ‘이걸 말해도 될까?’ ‘이렇게 말하면 이상하게 들리지 않을까?’ ‘더 정리해서 말해야 하는데…’ 이런 생각들이 백그라운드에서 계속 돌고 있었다.
숏츠에서 본 것 같다. 인간은 사회적 동물이라, 관계에 위협을 받으면 편도체가 어쩌고 하는 그런 내용.
그 부하가 내려가니, 진짜 중요한 것에 집중할 수 있었다.
주변에 나를 미약하게나마 연결하는 것만으로도 행복해진다는 것을 몸소 깨달았다. 내가 받은 한마디, 내가 준 한마디의 가치. 코드와 기술은 그저 내 출력의 한 채널일 뿐이었다.
내적 이불킥도 그냥 하나의 신호로 봤다. ‘내가 잘하고 있구나~ 오버하면 뭐 어때~‘
프로덕트 엔지니어
이렇게 되고 나서야, 정말로 이 교육에 임할 수 있었다.
그리고 보이기 시작했다.
퍼실리테이터로 참여한 토스 실무자들. 이 사람들이 바운더리를 넘는다는 게 무엇인지 직접 체감할 수 있었다.
“이 데이터가 잘못 왔을 때 리스크가 어느 정도예요? 전체 화면이 깨지나요, 아니면 이 영역만 안 보이나요?”
“critical하니까 확실히 격리해야죠. 반대로 이 데이터는 리스크가 낮으니까 간단히 fallback만 처리하면 되고요.”
리스크에 따라 대응 방식을 다르게 한다? 나는 그냥… 에러가 나면 전부 에러 바운더리로 잡아야지, 정도만 생각했었다.
이 사람들은 코드만 짜는 게 아니었다. 제품을 만들고 있었다. 사용자를, 리스크를, 협업을 생각하고 있었다. 자신의 바운더리를 알면서도, 필요할 때는 그 바운더리를 넘어 의견을 냈다.
나는?
나는 그냥… 주어진 기획대로 코드만 쳤다. 기획이 이상해도, 디자인이 안 맞아도, 그냥 말없이 따랐다. “제 바운더리가 아니니까.” “시키는 대로 하는 게 편하니까.”
그제야 정말로 나만의 기준들을 얻기 시작했다.
코드든 요구사항이든, 결국 무언가의 관계로 바라볼 수 있다는 것. 그 관계가 코드에 그대로 드러나는 게 선언적이라는 것. 몸이 멀어지면 마음도 멀어지듯, 가까운 것들은 가깝게, 먼 것들은 멀게. 쓰레기 봉투 씌우듯 감추는 게 아니라, 적절히 드러내면서 signature와 parameter로 명확한 새로운 의미를 만드는 것이 추상화라는 것.
그리고 무엇보다, 바운더리를 넘나들며 제품을 만드는 사람이 되고 싶다는 것.
웰컴백, 현실
이야기를 마무리할 시간이다.
3주간의 교육이 끝나고 최종 테스트. 6시간.
라이브 코딩 첫날, 1시간 동안 탄식만 하던 그때와는 완전히 달랐다. 손이 움직였다. 생각이 말로 흘렀고, 말이 코드가 됐다. 시간 내에 다 풀었다.
정말 뿌듯했다.
두 마리 토끼를 다 잡았다고 생각했다. 처음 원하던 것—전문가의 사고 과정을 배우고 나만의 기준을 만드는 것. 그리고 내가 몰랐던 것—바운더리를 넘나들며 다른 사람과 연결되는 법.
카카오페이 2차 면접. 불합격.
토스 Accelerator 이후 토스 입사 면접 기회. 없음.
회사 구조조정. 주변 사람들이 떠났다.
연휴에 걸쳐 통보들이 날아왔다. 웰컴백, 현실.
핸드폰을 내려놓았다. 천장을 봤다.
3주 동안 정말 많이 변했다고 생각했다. 마침내 뭔가 해냈다고.
근데 세상은 그냥… 원래 속도로 돌아가고 있었다.
허무했다. 좀 더 빨리 깨닫지 못한 것에 후회도 들었다. 무력했다.
여러모로 풍성한 한가위를 보냈다.
다시 일상으로 돌아왔다.
천천히 돌아보니, 정말 많은 걸 얻었다는 게 보이기 시작했다.
마지막 시간, 함께한 사람들과 나눈 롤링페이퍼.
나이가 들어도 칭찬은 좋다.
1. 나만의 패턴과 기준의 씨앗
더 이상 “Radix가 이렇게 했으니까”, “토스가 이렇게 했으니까”가 아니다. “내가 해봤는데 이게 더 좋더라”를 말할 수 있는 작은 경험들이 쌓였다.
마치 만두피 하나 뽑을 때 13g씩 뽑는 장인들처럼. 내가 한 번에 뭘 할 수 있는지 나만의 기준이 생기니, “이 반죽이면 만두 127개 정도 나오겠는데?” 하는 감이 생겼다.
2. 외부와 연결되는 법
Input만 받고 Output은 없던 비동기 인간에서, 불완전해도 계속 신호를 보내는 사람으로 변했다. “이렇게 하면 될까요?” “이 부분 고민돼요” “도와주세요”를 말할 수 있게 됐다.
3. 불완전한 나를 드러낼 용기
이 글 자체가 증거다. 예전의 나였다면? 절대 이런 부끄러운 글을 블로그에 올리지 못했을 것이다.
4. 진짜 메타인지
외부의 기준으로 나를 평가하는 게 아니라, 내 패턴을 관찰하고 개선할 수 있게 됐다. “아무것도 하지 않기”라는 내 패턴을 발견한 것처럼.
10분짜리 산소통을 메고 잠수하기를 수만 번. 이제는 길을 잃지 않을 자신이 생겼다.
산소통을 메고 심해로 다이브. 어둡지만, 계속 나아간다.
여전히 어렵다. 여전히 말하기 전에 한 번 더 생각하고, 참아버리고 싶은 욕구가 올라온다.
하지만 이제는 그 욕구를 신호로 인식할 수 있다.
‘아, 지금 또 아무것도 하지 않으려고 하는구나.’
그럼 일부러라도 뭔가를 한다. 불완전한 질문이라도, 어설픈 의견이라도. 딱 지금까지만 무능하자
10분짜리 산소통으로 심해를 탐험하며 헤엄치는 중이다. 아직 갈 길은 멀다. 어둡고, 무서운 레비아탄도 있다.
하지만 작은 불빛이라도 켜고, 한 발 한 발 나아간다.
에필로그
완벽한 첫 블로그 글을 쓰고 싶었다.
하지만 이 불완전한 글이 더 나다운 것 같다.
p.s. 토스 FE Accelerator 3기를 함께한 동기들, 퍼실리에이터분들, 그리고 종택 코치님께 감사드립니다. 여러분이 없었다면 이 글도, 이 변화도 없었을 겁니다.
p.p.s. 3년 전 대학원을 자퇴했을 때도 똑같은 문제였습니다. 그래서 “눈앞에 일에만 몰입할 수 있게”하는 서비스를 만들었었습니다. 하지만 정작 저는 그렇게 살지 못했습니다. 3년이 지나 같은 문제를 다시 마주했고 이제야 풀 수 있을 것 같습니다.