이주영
← 회고

26년 5월 회고

·12 분 읽기
회고글쓰기

들어가며

5월은 돌아보니 3가지의 일들이 기억에 남는다.

  1. 첫 의사 고객 인터뷰 — 제품팀 대표로 대표님과 함께 실제 의사(고객)를 만나 사용성을 들은 시간
  2. 미오 프로젝트 — 병원 홈페이지/어드민를 기획부터 배포까지 진행
  3. 개발팀장님 입사 — 커리어 처음으로 개발팀 리더가...?

1. 첫 의사 고객 인터뷰

오픈닥터의 고객은 의료인이다. 의료인은 보건복지부장관의 면허를 받은 의사ㆍ치과의사ㆍ한의사 그리고 간호사를 의미한다. 그래서 개발자로서 고객을 직접 만나 이야기를 듣는 일이 생각보다 쉽지 않았다. 고객에게 유용한 프로덕트를 만들기 위해선 고객을 잘 알아야 하는데, 그 기회가 흔치 않았다. 기회가 흔치 않아서 가만히 있었던 것은 아니다. 자원하여 고객 문의를 모두 대응했고 마케팅팀과 중개팀원들과 이야기하며 야금야금 의료인들이 어떤 고민을하고 어떤 불편함이 있는지 파악해왔다. 하지만 고객을 직접 만나보진 않았다. 이번이 처음이었다.

마침 오픈닥터에서 의료기기 플랫폼 기능을 신규 런칭을 위해 기획했다. 간단하게 설명해보면 개원의들이 의료기기 가격이 합리적인지 검증하기 어렵다는 문제를 해결하기 위한 기능이다. 그래서 이 기능이 실제 의사에게 정말 필요한지 검증하는 것이 핵심 과제였는데, 대표님 지인을 통해 검증받을 자리가 생겼고, 고객을 더 알고 싶었던 나는 대표님과 함께 인터뷰에 참여했다.

인터뷰에서는 다나와 UI와 기능을 실제 의사에게 보여주며 반응을 듣고, 생각하지 못했던 지점들을 짚어냈다. 돌아와서는 얻은 인사이트를 노션에 정리해 팀 전체에 공유했다.

결과적으로 이 인터뷰에서 나온 피드백이 6월 의료기기 다나와 페이지 전면 개편과 앱 추가로 이어졌다. 개발하는 콘텐츠 자체에 대한 이해도가 한 단계 올라간 것도 남는 소득이었다.

의사 고객 인터뷰

한편 지금 인터뷰할 때인가 싶었다. 더욱 개발에 전념해야하는것이 아닌가 싶었는데 최근 느끼는게 더욱 고객의 문제에 공감하여 기능을 만들어서 성과를 내보고 싶은 갈망이 있는 것 같다. 개발도 열심히 하지만 고객도 더 알고 싶다.

5월 기준 의료기기 9개를 업로드했고 세부 내용도 피드백 기반으로 프로포타입을 만들었다. 점점 고도화될 것을 기대하고 있다.

오픈닥터 의료기기 목록 페이지 살펴보기

그리고 7월에 플랫폼 매출 및 수익도 발생하게 됐다.


2. 미오 의원 홈페이지 및 어드민 구축

26년 3월경, 오픈닥터가 개원을 돕던 강남의 한 피부과(미오 의원)의 홈페이지를 외주로 맡기려 했다. 견적은 정적 페이지 200만원에 다국어 6개를 더해 총 1,100만원. 솔직히 합리적이지 않다고 느꼈다.

마침 AI의 발전을 체감하기 시작한 때였다. AI를 써서 어디까지 해낼 수 있을까 시험해보고 싶었고, 회사 돈을 실제로 아껴주는 일을 해보고 싶었다. 기존 업무도 만만치 않았지만, 그래서 오히려 손을 들고 싶었다. 제품팀 PO님에게 "제가 하겠습니다." 라고 말씀드렸다.

강남 미오 의원의 홈페이지와 어드민을 처음부터 끝까지 세우는 게 프로젝트였다. 6월 개원이 데드라인이라 3월엔 여유로워 보였는데, 그게 착각이었다. 5월에 제대로 된통당했다. 특히 두 가지가 발목을 잡았다 — 다국어 6개 × 시술·패키지 콘텐츠 물량이 예상을 한참 넘었고, 요구가 바뀔 때마다 데이터 구조를 몇 번이고 다시 갈아엎어야 했다. (둘 다 아래에서 자세히.)

제품팀 안에서 오픈닥터 웹/앱 업무와 병행하며 프론트엔드부터 백엔드, DB, 배포까지 전부 혼자 책임졌다. 누가 대신 봐주는 사람 없이 내 선택이 곧 결과가 되는 경험은 처음이었다.

결과물은 실제로 운영 중이다 → https://www.mioclinic.co.kr/ko. 결론부터 말하면, AI를 써서 외주 견적 1,100만원 이상의 가치를 만들어냈다. 무엇보다 "기획부터 배포까지 서비스 하나를 혼자 세웠다"는 감각이 남았다.

외주 견적이 특히 값을 크게 매긴 항목이 다국어 6개(한국어·영어·일본어·중국어 번체/간체·태국어)였다. 강남 피부과라 외국인 고객이 중요했기 때문이다. 이걸 사람이 일일이 옮기는 대신 구조로 풀었다. 버튼·라벨 같은 UI 문자열은 6개 언어 JSON을 원천으로 두고 구글 시트와 동기화하는 파이프라인을 만들어, 번역가가 시트에서 직접 채우면 코드로 당겨오게 했다. 반면 시술·패키지처럼 자주 바뀌는 콘텐츠는 AI로 초벌 번역한 뒤 사람이 검수해 확정하는 방식으로 처리했다. 번역 자체보다 번역이 계속 굴러가게 만드는 구조를 짜는 일에 가까웠다.

의외로 제일 어려웠던 건 코드가 아니라 의사소통이었다. 코드는 막히면 어떻게든 풀렸지만, 상대가 원하는 걸 정확히 알아내 합의하는 건 전혀 다른 문제였다. 만드는 시간보다 무엇을 만들지 합의하는 시간이 더 들 때도 있었다.

배운 것 — 데이터 설계. 특히 시술과 패키지의 관계가 계속 흔들렸다. 처음엔 패키지를 group(베스트셀러·증상별·부위별) 같은 문자열 값으로 구분했는데, 요구가 바뀔수록 이걸 별도 카테고리로 승격시키고 시술↔패키지를 다대다(M2M)로 다시 엮어야 했다. 메뉴판도 이 데이터를 원천으로 삼다 보니, 한쪽 구조를 바꾸면 다른 쪽이 깨졌다. 자주 바뀌는 도메인일수록 초기 설계가 중요하다는 걸 몸으로 알았고, 이게 6월에 백엔드·DB 기초를 제대로 공부하기로 마음먹은 직접적인 계기가 됐다.


3. 개발팀장님 입사

그동안 오픈닥터에는 개발 팀장이 없었다. 코드 리뷰도, 기술 결정의 기준도, 성장 방향을 짚어줄 사람도 없이 각자 알아서 굴러갔다. 문제가 보여도 "이게 맞나?"를 물어볼 상대가 없었고, 내 판단이 맞는지 확인할 길도 마땅치 않았다.

5월, 커리어 처음으로 개발 팀장님이 합류하셨다. 그리고 곧 대대적인 변화가 시작됐다. 배포와 기술 결정 절차가 정리됐고, 1on1로 성장 방향을 이야기하는 자리가 생겼다. 무엇보다 그동안 아무도 손대지 못한 구조적인 문제들이 하나씩 움직이기 시작했다 — 복잡하게 엉킨 DB를 갈아엎고, 기존 앱을 웹뷰(웹 UI) 기반으로 개편하고, 프로젝트를 모노레포로 묶고, 인프라를 Amplify에서 Vercel로 옮기는. 지금 돌아보면 6·7월 회고를 가득 채우게 될 일들의 출발점이 바로 여기였다.

나에게 남은 건 '방향이 생겼다'는 감각이다. 그전까지는 내 선택이 맞는지 혼자 되묻는 게 일이었는데, 이제는 기준을 함께 세우고 피드백을 받을 사람이 생겼다. 커리어 처음으로 개발 리더가 생긴 순간에 내가 기대한 건 딱 이거였다 — 잘 만드는 것에서 그치지 않고, 잘 만들고 있는지 확인받으며 자라는 것.

배운 것 — 좋은 리더 한 명이 팀의 '기준'을 만든다. 공백일 땐 없다는 것조차 잘 안 보였는데, 채워지고 나서야 그동안 리뷰·절차·방향이 통째로 비어 있었다는 걸 알았다.


마무리하며

5월은 "물어보지 않으면 모른다"를 여러 방식으로 체감한 달이었다.

6월은 업무로는 앱 마이그레이션, 개인 학습으로는 백엔드 기초일 것 같다.

  • 앱 마이그레이션 — Flutter에서 React Native로, 이전 웹 마이그레이션과는 조금 다른 방식으로
  • 백엔드 기초 학습 — 미오 경험 기반의 테이블 정규화·DB 학습, Nest.js › Express › Node 동작 원리, 모노레포 이해를 위한 패키지 매니저 동작 원리