AI가 속도를 만든 지금, 웹팀은 품질까지 어떻게 가져갈까
Head of Web Engineering 웨스
Soo • Developer Relations
- 피플 & 컬쳐
안녕하세요 채널팀의 Developer Relations 수입니다!
이번 6번째 리더십 인터뷰에서는 Core Web팀 리더 웨스와 함께 이야기를 나눠봤습니다. 코어 웹팀은 어떤 일을 하고 있는지, AI 시대에 어떤 방향을 바라보고 있는지 들어봤습니다.
Q1. 안녕하세요! 간단한 자기소개와 채널톡에 합류하게 된 계기를 알려주세요
안녕하세요. 저는 코어 웹팀 리드를 맡고 있는 웨스입니다. 채널톡을 합류한 지 3년차가 되었네요. 채널톡을 처음 알게 된 건 전 직장에서였어요. 고객 문의를 게시판으로 처리하다 보니 한계가 있어서 '실시간 채팅 플랫폼을 찾아서 적용해봐라'는 태스크를 받았거든요. 그때 젠데스크, 인터컴, 채널톡을 쭉 비교해봤는데, 국내 고객 서비스 분야에서는 채널톡이 가장 잘 나가는 서비스라고 느꼈어요. 이후에 이직을 고민할 때 자연스럽게 '국내에서 가장 잘나가는 서비스에서 한 번 일해보고 싶다'는 생각이 들었고, 그렇게 합류하게 됐습니다.
Q2. 지금까지 어떤 커리어 여정을 걸어오셨나요?
첫 직장은 금융권이었어요. C랑 C++로 프라이빗 푸시 서버를 개발하고 유지보수하는 일을 했는데, 지금과는 완전히 다른 환경이었죠. AWS는커녕 Git도 없고, 솔루션을 개발해서 직접 고객사에 들고 가서 설치해야 하는 일이었어요. 당시 회사에서 코볼로 개발하시는 분들도 계셨고, 리눅스부터 유닉스, HP-UX, Solaris까지 정말 로우 레벨을 많이 경험했습니다. 한 1년 8개월 있었는데, 일반 사용자 대상으로 하는 서비스를 만들고 싶다는 생각이 있었습니다. 그렇게 다음 회사(구름)로 이직해서 약 3년 반 동안 풀스택 개발자로 시작해 CTO, CPO까지 맡게 되었어요.
이렇게 다양한 도메인에서의 경험을 하다 보니 프론트엔드에 더 흥미를 갖게 되었습니다. 백엔드는 패턴이 잘 정립돼 있는 반면 프론트엔드는 자유도가 더 높거든요. 100명이 있으면 100가지 패턴으로 짜다 보니 복잡도가 올라가고 유지보수성이 떨어지는 거죠. 그 자유도를 잡아보고 싶다는 생각이 들어 프론트엔드에 집중하게 됐고, 자연스럽게 채널톡 웹팀으로 합류하게 됐습니다.
Q3. 채널톡에서 가장 기억에 남는 프로젝트가 있다면 소개해 주세요.
입사하자마자 맡게 된 '마케팅 일회성 메시지 수정과 조회 페이지 리팩토링' 프로젝트였어요. 당시 코드는 Redux 기반으로 상태 관리와 UI 구조가 얽혀 있어서 유지보수가 힘들겠다고 판단했어요. 그래서 이건 갈아 엎어야겠다 싶어서, 저희가 사용하는 React Query와 Zustand 같은 모던 기술 스택으로 전환하는 작업을 했어요. 결과적으로 스크립팅 시간 57% 감소, 렌더링 시간 28% 감소를 달성하면서 성능이 훨씬 좋아졌죠.
근데 성과보다 과정이 더 기억에 남아요. 규모가 큰 리팩토링이다 보니 일반적인 리뷰 방식으로는 진행하기 어렵겠다 싶었어요. 그래서 리뷰에만 의존하지 않고, 도메인 브리핑으로 맥락을 먼저 공유하고, 리뷰가 놓칠 부분은 백업 플랜으로 커버했어요. 그 백업 플랜이 두 가지 버전을 동시에 띄워두고, 문제가 생기면 이전 버전 URL로 즉시 돌아올 수 있게 준비해둔 거예요. 리팩토링 버전 배포 이후 몇 가지 마이너 이슈들만 수정하고 바로 이전 버전을 삭제하면서 마무리할 수 있었습니다. 입사하고 처음으로 큰 프로젝트를 처음부터 끝까지 주도적으로 완료했다는 것 자체가 의미가 있었어요.
코어 웹팀의 역할과 방향성
Q4. 코어 웹팀이 채널톡 엔지니어링에서 어떤 역할을 맡고 있는지 소개해 주세요.
한 문장으로 하면, Feature 팀이 비즈니스 임팩트에 집중할 수 있도록 기술적 어려움을 감춰주는 역할을 하고 있어요. 기술적 어려움이라고 하면 크게 생산성과 품질로 나뉘는데요. 생산성은 지금 AI가 많은 부분을 담당해 주고 있어요. 여기서 저희가 더 보태는 건 모듈 페더레이션(Module Federation)으로 도메인 범위를 좁혀서 AI가 그 안에서 맥락을 놓치지 않고 더 정확하게 작동할 수 있는 프론트엔드 인프라를 만드는 거예요.
그리고 하네스(harness, 개발 과정에서 품질을 자동으로 잡아주는 장치)를 구축하는 것이 핵심이에요. AI 속도가 올라가면 품질이 자연스럽게 떨어지기 때문에 속도와 품질의 균형을 맞추기 위해 하네스 구축에 집중하고 있어요.
Q5. 지금 가장 집중하고 있는 기술적 과제는 무엇인가요?
위에서 말씀 드린 하네스를 구축하는 것입니다. 사람이 리뷰하는 방식은 AI 시대에 이미 병목이 됐다고 생각해요. 그렇다면 구조 자체가 품질을 책임지게 만들어야 하는데, 특정 구조 안에서 개발하면 자연스럽게 최소한의 품질이 보장되도록 코드 표준화를 만드는 거예요. 예를 들어 특정 패턴을 따르면 타입 체크나 에러 처리가 자동으로 보장되는 식이에요.
거기에 더해서 기능이 잘못 개발됐을 때 알려주는 장치도 필요해요. AI가 코드를 아무리 빠르게 생성해도 구조에서 벗어나면 즉시 잡힐 수 있도록, CI/CD 인프라를 구축하고 있어요. 테스트 실패 감지, lint를 통한 확정적 에러 명시 같은 장치들이 결국 AI가 만든 코드를 자동으로 검증하는 역할을 하는 거죠. AI가 모든 맥락을 일일이 챙기지 않아도, 구조 자체가 안전장치가 되는 거예요.
Q6. 채널톡 코어 웹팀만의 기술적 도전이 있다면 어떤 것인가요?
저희는 상담원 클라이언트 쪽 부하가 상당해요. 일반적인 메신저나 B2C 채팅과 달리, 저희는 상담원과 고객 간 1:N 구조라서 상담원 한 명이 굉장히 많은 메시지를 동시에 받거든요. 그리고 상담 센터에서 쓰는 기기들은 스펙이 높지 않아요. 그러면서도 데스크를 일주일 내내 켜두시는 분들도 있고요. 사실상 프론트엔드가 서버처럼 동작해야 하는 환경이에요. 최소 일주일을 끊기지 않고 쓸 수 있어야 하는 성능 기준이 일반적인 서비스와는 달라요.
SDK 측면에서는 B2B2C 구조라 브라우저 지원 거부가 안 돼요. B2C라면 "파이어폭스 지원 안 합니다"가 가능하지만, 저희는 고객사가 요청하면 해줘야 하는 구조거든요. 그래서 크로스 브라우징이 정말 꼼꼼하게 되어 있어요. 최근에는 로컬 퍼스트(local-first) 전환도 챌린지 중 하나예요. 브라우저 IndexedDB를 활용해서 네트워크가 불안정한 상태에서도 동작할 수 있게 만드는 건데, 실시간으로 쏟아지는 메시지와 동기화 복잡도 때문에 채팅 플랫폼에서는 드문 시도예요.
Q7. 코어 웹팀의 장기적인 방향성은 무엇인가요?
저희 팀 비전은 "기획이 곧 제품" 이에요. 기획의 디테일과 의도가 즉시 그대로 제품에 반영되는 상태를 만드는 거예요. 그 상태를 만들려면 결국 생산성과 품질 두 가지가 받쳐줘야 하는데, 생산성은 AI가 품질은 하네스가 맡아줄 거라고 봐요.
1년 안에 품질 기준을 충족한 새 코드의 60% 이상이 AI로 짜지길 바라고 있고, 챌린지하게는 80% 이상이에요. AI가 코드를 짜는 비율이 올라갈수록 개발자는 설계처럼 AI가 아직 못하는 영역에 더 집중하게 되는 구조로 가는 거죠.
AI 시대, 개발자의 역량과 리더십
Q8. AI 코딩 도구가 일상화된 지금, 개발자로서 가장 중요하게 생각하는 가치가 있다면요?
문제 정의요. AI를 쓰면서 더 뼈저리게 느껴요. 태스크를 명확하게 정의하지 않고 그냥 "이거 해줘"라고 던지면 제대로 된 결과가 안 나오거든요. 실무도 마찬가지예요. 문제를 쪼개는 능력도 같이 가요. 큰 태스크를 AI에 그대로 주면 걔도 뭘 해야 할지 몰라요. 어떻게 잘게 쪼개느냐가 결과물의 품질을 결정하는 시대가 됐어요.
반대로 덜 중요해진 건 구현 문법 암기나 반복적인 보일러플레이트 생산 같은 것들이요. AI가 충분히 대체할 수 있으니까요. 그래서 '무엇을 풀어야 하는가'를 정의하는 사람이 더 가치 있어지는 것 같아요.
Q9. 리더로서 현재 가장 깊게 고민하고 있는 부분은 무엇인가요?
기술적으로는 달릴 사람을 먼저 생각하지 않고 도로만 깔아버리는 경향이 있어요. 구조는 만들어놨는데 정작 쓸 사람이 없거나, 타이밍이 어긋나는 상황이 생기거든요. 도로를 열심히 깔아놨는데 정작 달릴 차가 없는 상황이랄까요. 그래서 장기 체계만 보지 않고, 단기 문제도 함께 해결하는 균형을 맞추려 하고 있어요.
문화적으로는 AI 활용을 개인 생산성 차원에서 끝내지 않고 팀 전체가 함께 성장하는 흐름을 어떻게 만들지가 고민이에요. 누군가 좋은 방법을 찾으면 자연스럽게 팀 전체로 퍼지는 구조, 강제하지 않고 번지게 하려면 어떻게 해야 할지를 계속 생각하고 있어요.
Q10. 팀원들과 협업하면서 배우는 점이 있다면요? 그리고 앞으로 어떤 팀을 만들어가고 싶으신가요?
관점의 다양성인 것 같아요. 제가 어떤 주장을 내면 다들 다른 각도에서 의견을 내줘서 "이런 시각도 있구나" 싶은 순간이 많아요. 사실 그런 경험이 쌓이다 보니 제 생각이 항상 옳지 않을 수 있다는 걸 자연스럽게 배우게 됐어요. 그래서 팀 문화를 잡을 때도 최대한 모두가 의견을 낼 수 있는 구조를 만들려고 해요. 어떤 결론이 저 혼자의 생각에서 나오는 게 아니라, 제가 먼저 제안을 던지고 거기서 함께 결과를 만들어가는 팀이 되고 싶거든요.
그런 의미에서 궁극적으로는 ‘자율적인’ 팀을 만들어보고 싶어요. 제가 개입하지 않아도 팀원들이 스스로 방향을 잡고 자유롭게 움직여서 결과를 내는 팀이요. 그게 잘 되면 팀의 역량이 커진 만큼 저도 더 본질적인 문제에 집중할 수 있게 되고요.
이런 개발자라면 잘 맞습니다
Q11. 코어 웹팀과 가장 잘 맞는 엔지니어는 어떤 사람이라고 생각하시나요?
새로운 요구가 오면 '어떻게 만들지'보다 '왜 이게 필요한지'를 먼저 질문하는 분이요. 어떤 문제가 생겼을 때 바로 해결책부터 찾기보다, 근본 원인이 뭔지를 먼저 들여다보는 거죠. 그렇게 접근하다 보면 자연스럽게 구조적으로 문제를 정의하게 되고, 더 좋은 방향을 찾게 되는 것 같아요. 저희 팀도 문제를 풀 때 '왜 이게 필요한가'부터 먼저 묻거든요. 그래서 그런 사고방식을 가진 분이라면 자연스럽게 잘 맞을 것 같아요.
Q12. 채널톡 코어 웹팀에서 소속되어 일할 때 가지는 가장 큰 강점?
영향 범위요. 코어 팀이 만드는 인프라·표준은 채널톡 프론트엔드 전체에 영향을 주거든요. 내가 설계한 패턴이 여러 Feature 팀에서 돌아가는 걸 경험할 수 있어요.
그리고 깊게 파는 문화가 있어요. Feature 팀은 빠르게 만드는 압박이 있지만, 코어 팀은 "왜 이 문제가 반복되는가"를 끝까지 파고드는 게 업무라, 기술적으로 깊어지고 싶은 사람에게 잘 맞는 환경이에요.
Q13. 마지막으로 지금 함께하고 있는 동료들에게 한마디 해주세요.
"기획이 곧 제품"이 되는 상태까지 갈 길이 남았지만, 혼자 가는 게 아니라 같이 만들어가는 여정이라는 게 매일 느껴져요. 지금처럼 같이 "왜"를 묻고, 같이 깊이 파고 들 수 있으면 좋겠습니다.
