brunch

페토바이오 CTO, 2025년 상반기 결산

도메인을 전환하며 경험담 공유

by 치킨모임 배진호

안녕하세요.


페토바이오 CTO 배진호입니다.

작년 11월 휴램프로에서의 CTO의 여정이 끝나고,

지금은 페토바이오의 CTO로써 다양한 역할들을 하고 있는데요.


네..

그래도 할 건 해야죠 ㅎ

상반기 결산 진행합니다.



지난 CTO의 조건과 관련 글을 기재했고,

제 현황을 궁금해하시는 분들이 있으실 듯싶기도 한데,

상반기에 어떤 일들을 했는지, 공유해 보는 시간을 가져보겠습니다.




스타트업 씬의 어려움

최근의 어려움은 아마 많은 분들이 공감하실 거라 생각합니다.


물론, ‘많은 분들’이라는 표현이 어디까지를 의미하는지는 조심스러우나, 적어도 개발 업계에서는 분명하게 체감되고 있습니다.


AI 기술이 급격히 발전하면서, 개발이라는 역할에 대한 이해의 문턱은 낮아졌지만, 동시에 이 역할을 AI가 얼마나 대체할 수 있는가에 대한 질문이 계속되고 있습니다. 그 결과, 많은 개발자들이 자신과 AI의 ‘몸값’을 비교하며, 이 변화 속에서 자신의 위치와 가치를 재정립하는 데 에너지를 많이 소모하고 있는 상황입니다.


저 역시 예외는 아니었습니다.


특히 작년, 경영상의 이유로 어쩔 수 없이 이직을 고민하게 된 상황이 있었습니다. 투자 시장이 얼어붙었다는 기사를 많이들 보셨겠지만, 실제로 스타트업 생태계의 체감 온도는 그 이상이었습니다. 현재도 여전히 이 문제는 진행형입니다.


과거에는 CTO로서 이직을 생각할 때, 헤드헌터의 연락을 받아 다양한 회사를 만나보고, 그중 괜찮은 회사를 골라가는 '선택의 과정'이었다면, 이번에는 조금 달랐습니다.


CTO 시장 자체의 밸류가 낮아졌고, 이는 구인-구직 시장 모두가 어려워졌다는 반증이기도 합니다.

게다가 기업의 눈높이는 더욱 높아졌습니다.


예산은 줄었지만, CTO에게 기대하는 역할은 오히려 더 많아졌죠.
구체적으로는 다음과 같은 두 가지 역량이 동시에 요구되는 경향이 강해졌습니다:


조직 운영 경험 – 많은 인력을 이끌고 관리해 본 경험


기술적 실전 능력 – 단순한 기술 총괄이 아니라, 실제 코드를 작성하고 문제를 해결해 본 실무 능력


물론, AI를 적극 활용해 더 효율적인 팀 운영이 가능해진 지금, 조직 운영의 '규모'가 왜 여전히 중요한지는 개인적으로 의문이 들기도 했습니다. 하지만 시장의 요구는 명확했고, 그에 맞추기 위한 준비와 고민이 필요했습니다.


결과적으로, 이번 이직 과정은 단순히 ‘다음 직장’을 찾는 것을 넘어,
앞으로 어떤 선택을 해야 할지, 그리고 CTO라는 역할을 어떻게 꾸려가야 할지를 진지하게 돌아보게 해 준 시간이었다고 생각합니다.


바이오 제약과 관련된 다른 도메인 회사로의 전환

지난 휴램프로에서는 인사·노무 관련 SaaS 개발을 진행하며, 전자 서명 관리, 근태 관리, 세콤 연동 등 노무 행정의 실무 영역에 깊이 관여했습니다. 특히 근태 앱을 B2C 형태로 제공하며, 고정 근무뿐 아니라 교대제까지 아우르는 다양한 근무 형태를 다루어야 했기에, 단순한 기능 구현을 넘어 현장의 복잡한 업무 흐름과 제도에 대한 이해가 필수적이었습니다.


이후에는 바이오 기반 기업인 페토바이오에서 또 다른 도메인의 도전을 경험하게 되었습니다. 임상시험 시스템을 고도화하는 과정에서 CDMS(Clinical Data Management System)를 중심으로, VICH 가이드라인, SOP(Standard Operating Procedure) 등 제약 및 임상 업무에 특화된 규약들을 익히고 반영해야 했습니다. 도메인이 달라지면 개발 방식도 달라진다는 점을 직접 체감하며, 새로운 분야에 적응하고 시스템을 고도화하는 과정을 경험했습니다.


올해 상반기에는 세 가지 주요 프로젝트를 리드했습니다:

회사 홈페이지 리뉴얼

AI 기반 음성인식 SOAP 프로젝트

CDMS 고도화(eCOA 시스템)


특히 SOAP 프로젝트는 의료 현장을 위한 음성 기반 자동화 시스템으로, AI 모델을 실제 업무 프로세스에 적용해 본 매우 실질적인 경험이었습니다.
초기에는 병원 대상의 빠른 론칭이 필요했기 때문에, 제한된 인력과 자원 속에서도 기획부터 개발, 배포까지 신속하게 실행해야 했고, 결과적으로 어려움 끝에 론칭까지는 진행할 수 있었습니다.


이러한 프로젝트들을 수행하며, 자연스럽게 백엔드 개발자의 역할 범위도 확장되었습니다.


내부 시스템의 Git 이전

DevOps 환경 정비 및 자동화

빠른 배포 전략 수립


운영과 개발을 분리하는 구조 정리 등 다양한 기술 기반 작업들을 병행했고, CDMS 시스템의 기능 고도화도 함께 추진하며 기술적 깊이도 더해갔습니다.


기술 스택 측면에서도 큰 전환이 있었습니다. 기존에는 React + Java Spring을 주로 활용했지만, 이번 프로젝트에서는 Vue.js와 Kotlin(Spring) 기반의 백엔드까지 빠르게 습득하고 실전에 적용할 수 있었습니다.

더불어 라라벨 기반의 시스템도 다뤄보며, 프런트엔드, 백엔드, API 서버 등 다양한 레이어가 혼재된 복잡한 내부 구조를 분석하고 유지보수하는 능력까지 키울 수 있었습니다.


특히 AI의 도움과 함께 기존의 기술적 제약에서 벗어나, "어떤 언어로 구현되었는가"가 더 이상 장벽이 되지 않는 수준까지 도달할 수 있었던 것이 큰 변화였습니다. 기술의 깊이뿐만 아니라 시스템 전반을 바라보는 시야와 이해도, 그리고 도메인 적응력까지 넓어졌다는 점에서 개인적으로도 매우 의미 있는 시기였습니다.





페토바이오 회사 홈페이지 리뉴얼


https://petobio.com/


보여주는 것을 줄였더니, 믿음이 늘었다.

1. 사용자가 먼저 느낀 변화(Outcome)


1) 5초 안에 정체성 파악
히어로는 한 문장으로 끝냈습니다. “동물 임상시험 전문 CRO, 디지털 임상 솔루션.” 장식 대신 메시지, 미사여구 대신 **두 개의 CTA(서비스 알아보기 / 상담 요청)**만 남겼죠.

2) 탐색의 마찰 최소화
정보 구조를 서비스 → 역량/실적 → R&D/플랫폼(CDMS·DCT) → 문의로 단순화하고, 각 섹션은 3~5줄 요약 + “자세히 보기”로 구성했습니다. 스크롤 피로가 줄어들었습니다.

3) 증거가 앞서는 설득
문장보다 레퍼런스·세미나·기사·파트너십을 먼저 보이게 배치했습니다. 서비스 하단에는 실제 활동을 고정 노출해 신뢰 > 설득의 순서를 지켰습니다.


2. 그 결과를 만든 방식(Process)

A. UI 심플함 운영 규칙

한 화면 한 메시지(히어로 1문장 + 보조, CTA 최대 2개)

텍스트 우선·그래픽 보조(도해·아이콘 중심, 과한 모션 제거)

요약-확장 패턴(짧게 요약, 깊이는 분리된 상세 페이지)


B. IA 재설계 포인트

“무엇을·어떻게·왜”를 3단계 안에 전달

기사/세미나/레퍼런스와 서비스 1:1 연결

핵심 페이지 3-클릭 룰


C. 카피 톤

문장 60자, 문단 3줄 내외로 압축


3. 기술 스택과 설계(Tech)

Front: Vue

이미지 지연 로딩으로 초기 체감 속도 개선

툴팁·CTA·카드·문의 폼 등 공통 컴포넌트화

상태는 가볍게: 정적은 파일/캐시, 폼/리드만 API

문의는 메일 → Teams로 전달되는 간단한 알림 파이프라인으로 전환


Server: Spring Boot + Kotlin

문의/견적 폼 비동기 처리로 CRM·알림 연동(웹훅/이벤트)

공통 DTO/에러 포맷으로 프런트–백 에러 핸들 일관화


4. Cursor AI 활용기


초반 페이지 스캐폴딩과 공통화에는 효율적이었습니다. 다만 모바일 퍼스트 관점에서 PC/모바일을 동시 전개하다 보니 프롬프트 편차로 한쪽 레이아웃이 깨지는 문제가 반복되었고, 규칙 정비 과정에서 컴포넌트 구조가 뒤집히는 부작용도 있었습니다.
그럼에도 영문화 작업에 큰 도움을 받았고, 약 한 달 반 만에 주요 산출물을 마무리하는 데 기여했습니다. 결론적으로 AI는 초안·가속 도구로 적합하고, 규칙 확정과 품질 보증은 사람이 한다가 이번 프로젝트의 교훈입니다.




AI 기반 음성인식 SOAP 프로젝트


두 달 동안 의료 현장에서 녹음된 대화를 텍스트로 변환하고 이를SOAP(Subjective·Objective·Assessment·Plan) 형식으로 자동 정리하는 POC를 밀도 있게 수행했습니다. 핵심은 모바일·PC에서 들어오는 음성을 안정적으로 수집하여 STT로 전사하고, 그 전사 결과를 LLM 프롬프트로 구조화하여 사람이 바로 검토·활용할 수 있는 출력으로 내보내는 것이었습니다.


Windows 환경은 배포와 장치 제어를 고려해 Electron을 채택했습니다. 모바일은 현장성을 살려 “녹음 → 업로드 → 검토” 흐름이 끊기지 않도록 설계했습니다. 입력 경로는 세 가지로 구성했습니다. 스마트폰에서 바로 녹음해 업로드하는 경로, 브라우저에서 간단히 캡처해 업로드하는 경로, 그리고 Electron 앱이 마이크(필요시 시스템 오디오 루프백) 입력을 받아 로컬에 잠시 버퍼링 한 뒤 백그라운드로 전송하는 경로입니다. 연결이 끊기면 IndexedDB/파일 큐에 보관했다가 네트워크 복구 시 조용히 재업로드하도록 하여 현장 업무 흐름을 보존했습니다.


전처리 단계에서는 무음 감지(VAD)로 파일을 30~90초 단위로 세분화하여 안정적인 STT를 유도했습니다. 길이와 잡음 수준에 따라 적응형 파라미터를 적용해 오류를 줄였습니다. 구조화 단계는 프롬프트 설계가 핵심이었습니다.


만약 포맷이 깨지면 JSON 스키마로 검증 후 자동 재프롬프트 루프를 거치도록 설계했습니다. 긴 대화에서 맥락이 끊기지 않게 슬라이딩 윈도와 이전 문단 요약 컨텍스트 주입을 병행했습니다.



난관도 분명히 있었습니다. 모바일과 PC의 마이크 특성이 달라 단어 오류율(WER) 이 출렁였고, 같은 프롬프트라도 상황에 따라 출력 포맷이 흔들리는 드리프트 가 발생했습니다. 전자는 오디오 노멀라이즈 + 세그먼트 재시도로 안정화를 했습니다.


Electron 도입은 자동 업데이트, 장치 전환 감지, 트레이 상주 등을 통해 운영 편의성을 크게 높였고, 모바일은 녹음 중 메모·태그를 지원해 후속 프롬프트의 컨텍스트로 활용하도록 했습니다. 오프라인 환경에서도 기록이 유실되지 않게 동기화 흐름을 정리했습니다.


결과적으로 기획 단계에서 상정한 핵심 시나리오 대부분을 설계·시연 가능한 수준으로 구현했습니다. 일관된 SOAP JSON 출력이 확보되어 수작업 정리 시간이 줄었고, 원문–요약–구조화 결과의 병렬 비교로 현장 검토 루프가 빨라졌습니다. 동시에 모바일·Windows(Electron) 병행 파이프라인에서의 취약 구간과 재시도 조건 등 운영 리스크의 윤곽도 명확해졌습니다.




CDMS 고도화(eCOA 시스템)


CDMS를 라라벨과 뷰로 고도화하는 일은 기능을 더하는 작업이 아니라 도메인 지식을 소프트웨어 구조로 번역하는 과정입니다. 시험 설계와 절차, 규정과 표준을 제대로 이해하지 못하면 화면과 API가 아무리 단단해도 현장 신뢰를 얻기 어렵습니다. 특히 동물 대상 CRO는 종별 특성, 프로토콜 편차, 운영 관행이 겹쳐 같은 컴포넌트를 시험별로 다시 조립해야 하는 복잡성이 큽니다. 이 복잡성을 줄이기 위해 메타데이터 중심 설계와 구성 가능한 UI를 축으로 시스템을 재정비합니다.


설계 원칙

프런트엔드(뷰): 폼·질의·감사 추적·권한 등 공통 패턴을 컴포넌트 화합니다. 라우트 단위 코드 스플리팅과 상태 최소화로 초기 로딩과 상호작용 성능을 안정화합니다.

백엔드(라라벨): 프로토콜과 CRF를 메타데이터로 선언하고, 선언을 바탕으로 검증 규칙과 워크플로를 생성하는 구조로 전환합니다.

공통 기능 상향: 감사 추적, 데이터 편집 이력, eCOA 연계, 내보내기 스냅숏 등을 프레임워크 레벨의 공용 모듈로 끌어올려 재사용성을 확보합니다.

하드코딩 지양: 시험별 상이한 규칙은 템플릿과 구성값으로 조합합니다.


동물 CRO 특수성 반영

종·품종·체중·개체 식별·검사 스케줄 등 동물 특유의 속성이 데이터 모델과 화면 흐름에 자연스럽게 녹아들어야 합니다. 동일 프로토콜이라도 현장 운영의 차이를 수용할 유연성이 필요합니다. 이를 위해 시험 단위 멀티테넌시와 권한 체계를 명확히 분리하고, 빌드 파이프라인에서 시험별 구성값 주입을 안전하게 처리합니다.


데이터 품질은 사후 정제가 아니라 실시간 검증으로 지키며, 실패 메시지와 교정 흐름까지 제품의 일부로 설계합니다.



CTO 로저 계획을 세우고, 앞으로의 일들을 기획하기

상반기는 개발 리드에서 CTO로 시야를 넓힌 시간이었습니다. 예전엔 CPO와 함께 “무엇을 어떻게 만들까”에 집중했다면, 이제는 회사 전체 관점에서 “무엇이 꼭 필요하고, 언제까지, 어떻게 실행할까”를 먼저 묻습니다. 필요한 과제를 발굴하고 일정을 세웠고, 문서를 정리하며 이해관계자들과 논의를 이끌어 실행 가능한 계획으로 연결했습니다.


개발자로서의 기본 역량은 계속 단단히 다졌습니다. 동시에 AI 활용 범위를 업무 전반으로 넓혀 자동화·요약·초안 생성 등 실무 생산성을 끌어올렸고, 기술 의사결정을 경영의 눈으로 바라보는 훈련을 통해 비즈니스를 바라보는 일들에 관련된 다양한 업무들을 수행해 왔습니다.




개인적인 AI 활용(치킨모임 홈페이지 리뉴얼)

https://app.restyart.com/

모두(네이버) 서비스가 종료되면서, 커뮤니티의 지속성을 위해 치킨 모임 전용 홈페이지를 직접 운영·배포했습니다. 외부 플랫폼 의존을 줄이고, 공지·모집·회비·후기 같은 핵심 흐름을 한 곳에서 처리하도록 정보 구조를 재정비했습니다.


채널 현황: 현재 치킨 모임은 카카오톡 중심 채널을 기반으로 **3,000명+**이 오가며 확장 중입니다. 홈페이지는 신규 유입과 캠페인 랜딩, 규칙/FAQ 안내의 관문 역할을 담당합니다.


핵심 설계: 가입–알림–참여 신청 흐름을 3클릭 이내로 단순화하고, 카톡 초대/오픈채팅으로 원활한 전환이 이어지도록 설계했습니다.


운영/배포: 폼 제출은 스팸 방지와 개인정보 최소 수집을 원칙으로 하고, 카카오톡 링크와 비번 공유만을 원칙으로 배포를 진행했습니다.


요약하면, 개발자 커뮤니티의 장기적 기반 확보를 통해서, 홈페이지를 검색할 수 있도록 강화했고, 그 결과 다양한 사람들이 개발자 커뮤니티인 치킨 모임을 검색하거나 접근할 수 있도록 강화되었습니다.



CTO로써의 결산과, 모임을 운영하는 입장에서의 결산을 해보았는데요.


앞으로 어떤 일이 있을지 모르고, 챌린지가 있을 수 있습니다.


앞으로의 행보도 지켜보아 주셔요.


keyword
작가의 이전글CTO의 역할, 그리고 개발자?