CARTA HOLDINGS의 엔지니어를 위한 사내 인턴십 프로그램인 **'Treasure 2026'**에 참여하고 왔습니다!
Treasure가 무엇인지 아주 간단하게 요약하자면, 먼저 강의를 통해 지식을 습득한 후, 팀을 이루어 하나의 프로덕트를 완성하는 15일간의 인턴십입니다.
이 글은 그 15일간의 기록이자 일종의 '이렇게 해봤다!'는 보고서 같은 것입니다. 결과적으로 앞으로 Treasure 참여를 고민하는 분들에게 참고가 되었으면 좋겠습니다.
CARTA HOLDINGS에 대해 간단히 말씀드리자면, VOYAGE GROUP이나 CCI 등이 통합하여 만들어진 디지털 마케팅/광고 기술(AdTech) 회사입니다 (더 자세한 내용은 구글 검색을 해보세요). 사포터즈의 모회사입니다.
도쿄의 토라노몬 힐즈에 위치해 있어 전망이 정말 좋습니다. 눈 아래로 도쿄의 명소들이 여러 개 보이고, 황궁을 중심으로 도쿄 전체를 둘러볼 수 있습니다.
사내에는 분위기가 좋아 보이는 'Garden'이라는 카페나 라운지 공간이 있어서 커피를 마시거나 점심 식사를 할 수 있습니다. 'Ajito'라는 곳도 있는데, 이곳을 둘러싼 책장에는 기술 서적이나 만화책들이 가득합니다. 내부는 바 같은 느낌이고, 여기서 술을 마시며 교류하는 'AJITING'이라는 문화도 있었습니다.
전체적인 흐름은 이렇습니다. 이 과정에서 저희 팀은 'CARTA의 기술력을 평가하고 이를 기술로 개선하자'라는 미션을 가지고 서비스 개발을 진행했습니다.
| 기간 | 활동 내용 |
|---|
| Day1~2 | 가이던스 및 기술 강의. 기본 앱 기능에 대한 간단한 CRUD 구현 |
| ... | |
| 첫 이틀은 기술 강의로 이루어졌습니다. CTO로부터 비즈니스와 기술에 대한 관점 이야기를 들었고, 그 후 통신을 통해 화면이 그려지기까지 실제로 어떤 일이 일어나는지를 파헤치는 강연이 있었습니다. 이후 준비된 기본 앱을 만져보게 되었습니다. | |
저희가 한 것은 대략적으로 DB부터 프론트엔드까지의 데이터 흐름을 직접 코드를 작성하며 추적하는 것이었습니다. Day 2에는 여기에 CRUD 기능을 추가했고, Claude Code를 사용하기 시작했습니다. 같은 '블로그 CRUD 구현'이라도 사람마다 프롬프트나 구현 방식이 달라서, 그것들을 보는 것이 상당히 흥미로웠습니다.
지금까지 개인 프로젝트를 할 때도 가볍게 Claude Code를 계약해서 사용해 왔지만, 저에게 맞는 활용법을 찾은 것은 이때였습니다.
- 자신이 잘하는 UI 구현 부분은 빠르게 작성하고,
- API나 DB의 사양을 간략하게 손으로 정리하여,
- AI에게 상세화시키면서 설계상 위험한 부분이 없는지 질문을 던져 설계를 확정하고,
- 실제로 코드를 구동시키는 과정입니다.
물론 유행은 지나가기 마련이고, 여러분이 보실 때는 분명 다른 프롬프트 엔지니어링 방식이 있을 테니 그쪽을 따라가는 것이 좋을 것 같습니다.
지금 이렇게 글을 쓰고 있는 저 자신도 사용법이 많이 다르지만
React와 Hono를 활용한 비교적 모던한(2026년 기준) 기술 스택이었고, SWR 같은 기술은 경험해 본 적이 많았던 것이 도움이 되었습니다.
프론트엔드: React 19 / Vite / Tailwind v4 + shadcn/ui / SWR -
백엔드: Hono (Cloudflare Workers 위) / Zod -
개발 환경: oxlint・oxfmt / Vitest / wrangler / Claude Code
개발에 들어가기 전에, 이번 주제이기도 한 '자신의 과거 결과물을 발표하고 평가자들로부터 피드백을 받는 기술력 평가회'가 있었습니다.
💬
기술력 평가회란? (AI 요약)
CARTA가 2011년부터 지속해 온, 부서를 넘나드는 엔지니어들이 서로의 기술력을 평가하는 시스템입니다. 결과물 자체뿐만 아니라 그 이면에 있는 '생각 과정 및 프로세스'까지도 기술력으로 보는 것이 특징이며, 승진 판단에도 사용된다고 합니다. 다른 팀의 지식에 접하거나, 평가자를 경험하며 시야를 넓힐 수 있다는 점이 좋다고 합니다.
→ 공식 설명
발표를 해보니 전반적으로 반성할 부분이 많았습니다. 하고 싶은 말이 너무 많아서 시간 안에 담지 못했거나, 자료를 여기저기 건너뛰며 이야기해서 내용의 과부족이 있었습니다. 여기서 얻은 '하고 싶은 말 중에서
개발 과정에서 몇 가지 이야기를 풀어봅니다. 팀 개발과 개인 개발은 방식이 달라서, 실수하거나 좋았던 점들이 있었습니다.
모브 프로(Mob Pro)는 좋지만 느린 문제
팀으로 모브 프로를 하면서 인식을 맞추며 진행하는 것은 상당히 좋았지만, 서포터님께 "1 PR당 시간이 꽤 걸리는데, 개발의 목표가 보이세요? (의역)"라는 말을 들었습니다. 정교함과 속도의 균형을 잡는 것이 어렵습니다.
중간 발표에서의 피드백
중간 발표에서 회사 직원분께 "그거 GitHub나 Slack으로 하는 게 좋지 않나요?"라는 날카로운 지적을 받았습니다. 저는 그저 "네..."라고밖에 대답할 수 없었습니다. 그때부터 '이 프로덕트만이 가진 가치'를 필사적으로 언어화하며 조금씩 다듬어졌습니다.
사용자상/원하는 기능은 무엇일까!?
개발을 하는 와중에도 '우리 팀의 인식이 맞는지?', '이 기능이 사용자에게 정말 필요한지?', 아니면 '애초에 우리가 보고 있는 사용자는 누구인지?'라는 질문에 계속 부딪혔습니다. 여기서 상당한 시간을 보냈습니다.
컨플릭트(Conflict) 처리 방식
개인 개발 때는 브랜치가 분기되는 개념 자체가 없고 한 줄로 되어 있어서 지식이 부족했습니다. 올바른 방식으로 컨플릭트를 해결하고 기능을 수정할 때는 커밋을 나누는 것 같은 기본적인 것도 현장에서 배웠습니다. (여러분, 수고를 끼쳐드렸습니다 m(_ _)m)
Git 사용법
우선, 저 스스로 이해하게 된 것은 Git과 GitHub의 활용 방법입니다. 지금까지 개인 개발로 Git을 이용해 코드 관리는 했지만, 올바른 방법을 알지 못한 채 거의 바로 팀 개발 현장에 투입되는 형태였습니다. '저런 커맨드가 있나?' 하는 상태에서 조금씩 친구처럼 (되어갔는지 모르겠습니다...)
AI 활용법
2026년 현재 빠르게 변화하는 AI 사용의 최전선에 있었습니다. 단순히 가볍게 사용하는 정도가 아니라 코드를 작성할 때 기본적으로 AI를 사용하고, skills나 pen.dev 같은 주변 도구들을 이용하며 매우 편리한 사용법을 흡수할 수 있었습니다. (정말 편리합니다. 하지만 최신 트렌드를 따라가는 것이 힘듭니다.)
본질이란 무엇인가
제한된 시간 속에서 시간을 어떻게 사용할지, 사용자가 정말 가지고 있는 과제는 무엇인지, 우리가 보고 있는 사용자상은 대체 누구인지 등등. 본질과 그렇지 않은 것을 정리하고, 본질과 어떻게 마주하는지가 중요하다는 것을 깊이 느꼈습니다.
주말은 쉬는 날이라 지방 출신으로서 도쿄 관광 시간을 가졌습니다. 기회가 생겨서 조금만요.
도쿄 타워: 전망대까지 올라갔습니다. 다만 토라노몬 힐즈에 익숙해서 높이 감각이 마비되어 감동이 다소 옅었던 것은 비밀입니다 (웃음) -
메이지 신궁 / 아사쿠사 사찰 / 칸다 명신: 두 번이나 대길(大吉)을 맞았습니다! 칸다 명신은 드라마(VIVANT)에서 본 곳이라서 기분이 고조되기도 했습니다. -
스카이트리: 역시 634m는 높네요. 소라마치도 더 보고 싶었을지도 모릅니다. -
하라주쿠・시부야・아키하바라: 아키하바라 요도바시에서 키보드를 비교하며 시간을 보냈습니다. 카와라보 팝업 스토어도 들렀습니다. -
황궁 일주: 돌아가던 날이 도쿄에 폭우 경보가 내려있어서, 비에 완전히 젖으면서 한 바퀴 돌았습니다.
15일이라는 시간이 길게 느껴지기도 했지만 순식간이었습니다. 이렇게 열중해서 마지막까지 개발한 것은 처음이라, 마지막 추격전 때는 아드레날린인지 도파민인지 엄청나게 분비되었을 겁니다 (웃음). 가장 마지막에 병합(Merge)했을 때의 그 흥분은 잊지 못할 경험이 되었습니다. 정말 Treasure는 최고였습니다!
이 글이 도움이 될지는 모르겠지만, 다음에 Treasure의 문을 두드릴 누군가에게 힘이 되었으면 좋겠습니다.