삼성생명 AI 에이전트 프로젝트: IMQA 관찰 데이터 기반 셀프힐링 멀티 에이전트 플랫폼
IMQA 개발팀장 / Service Architect: 단독 기획·설계·개발·인프라
어니컴(주), Seoul | 2026.04 - now
소개: IMQA가 수집한 크래시·에러·세션·트레이스를 AI 에이전트가 직접 읽고, 원인 분석 → 코드 수정안 → GitLab Issue/MR → 회귀 테스트 → 리뷰까지 자동 처리하는 셀프힐링 플랫폼. 삼성생명 사랑ON 앱 실 운영 데이터로 PoC를 진행하고 삼성SDS 망(폐쇄망)에 반입 배포
개발 기간: 2026.04 - 현재
개발 인력: 1인 (IMQA 개발팀 해체 이후 기획, 아키텍처, 개발, GPU 서버 설치, 인프라, 폐쇄망 반입, 성능 시험까지)
성과: TTA 소프트웨어 시험 TTA-26-02533-AG(AI Agent 기반 SR 처리 자동화) 에이전트 성능 테스트 합격
최종 목표: 장애 수정에서 멈추지 않고 관찰 데이터로 사용자 행동 커버리지를 만들어 테스트케이스를 자동 생성
모니터링 세션 하나의 위임 흐름 (Observability → Engineering → Test Engineer → Critic)
대시보드와 AI 일일 브리핑
AI 작업 요청 승인 워크플로
기록: 세션·위임 이력
MCP 서버 설정
운영 센터
대화 세션 목록
장애 모니터링: 크래시 그룹별 처리 단계
에이전트 관리
프로젝트 (IMQA ↔ GitLab 매핑)
시스템 설정
Engineering Agent 채팅: GitLab 코드 조사와 수정안
Observability Agent 채팅: IMQA MCP로 크래시 조회
아래는 시연 영상 장면입니다.
Core Orchestrator가 Observability → Engineering → Test Engineer → Critic 에이전트에 위임하는 루프. delegate 도구에 깊이 3, 턴당 6회 위임 예산을 두어 폭주 방지 (자체 평가에서 한 요청이 세션 57개, 위임 56회를 만든 사례를 계기로 도입)
에이전트 시드 16종: 코어 4종 + ProDiscovery, Sparrow 보안, GAIT, Project Situation + 입력 전문가 8종(RUM Error Cluster, Impact, Performance, Privacy Reviewer, Timeline, Executive Reporter, Mobile Crash RCA, Telemetry Evidence Curator)
LLM 어댑터: vLLM(OpenAI 호환 /v1), Claude, Ollama, OpenRouter를 한 진입점에서 교체. 컨텍스트 예산 관리, 도구 스키마 정규화, 임베딩
Playbook: 에이전트별 Markdown 핫패치 슬롯. 대시보드에서 저장하면 다음 턴부터 시스템 프롬프트에 주입, 재배포 없음
운영 모니터링: MonitoredService → MonitorRun → CrashGroup. 서비스별 매시간 CronJob, 크래시 재분류·일일 브리핑 CronJob. 심각도·긴급도는 vLLM JSON 판정, 수치는 코드가 계산
요청·승인 워크플로: draft → queued → running → awaiting_review → approved → completed. 승인 시 GitLab MR 생성 또는 패치/zip 산출
가드: write-guard, compile-gate, path-ground, monitor-guard, 모델이 텍스트로 쓴 도구 호출 복구, GAIT 서비스 토큰 화이트리스트(상수 시간 비교)
Prisma 23 모델, 테스트 파일 약 87개, 공유 링크, 활동 로그. 사용자 테이블 없이 Keycloak uid만 저장, 권한 규칙은 policy.ts 한 곳
GAIT(Gate AI Task): SR(서비스 요청) 처리 자동화
📸
GAIT 시연 영상과 실제 운영 화면
GAIT 시연 영상 (4분 56초)
SR 현황 홈: 지금 할 일과 게이트 진행
SR 개요: 단계별 처리 흐름과 게이트 승인
대시보드
새 SR 접수 (한 줄로 시작)
구현·검증 단계
문서 템플릿 관리 (DOCX/XLSX 버전)
프로젝트와 소스 미러
멀티턴 요건 인터뷰
SR 유형 설정
지식 저장소
아래는 시연 영상 장면입니다.
단계: INTAKE → INTERVIEW → ANALYSIS → DESIGN → IMPLEMENTATION → DOCUMENTATION → PACKAGED. 게이트 1~3 필수, 4 선택. 순수 함수 상태기계로 전진은 ADVANCE 하나뿐, 이력은 append-only. 테스트가 유한 상태공간 전체를 탐색해 "승인 없이 다음 단계로 가는 경로 없음"을 증명
요구사항추적: 요건 → 설계 → 코드 → 테스트를 저장된 사실만으로 BFS 연결, 수기 입력 없음
doc-render: docxtemplater 없이 DOCX/XLSX OOXML(zip, xml) 직접 생성. object-store: MinIO용 AWS SigV4 직접 구현(PUT/GET/HEAD). scm-mirror: 허용 서브커맨드만 통과, 원격 URL·네트워크 명령 거부로 원본 형상관리 쓰기 금지를 코드로 증명
검증: bun run verify = DB probe → typecheck → test → migrate diff → 추적성 커버리지 → 불변식 가드(5대 검수 관문 + egress 스캔) → Cypress. 요건 커버리지 73/84(87%)
ISO/IEC 20000-1:2018 조항 매핑 문서, Prisma 24 모델, 테스트 파일 약 180개
빌드 방식: 소유 경로가 겹치지 않는 11개 빌드 에이전트와 마일스톤 M0~M8로 AI 코딩 에이전트 주도 개발
AI Agent Portal: SSO 단일 진입점. 서비스 런처, GitLab 이슈·파이프라인/Harbor 위젯, 인프라 맵, AURA 세션 플로우 그래프, MCP 개인 토큰 발급(해시만 저장, introspect로 검증), CLI 로그인(90일 읽기 전용 PAT, loopback 콜백만 허용), PUBLIC_* 런타임 주입으로 ConfigMap만 바꿔 환경 전환
identity: 삼성생명 권한인증 DB 연계 테이블(iam)과 자체 테이블·뷰(core), Keycloak 26 User Storage SPI(Java), 로컬 사용자 마이그레이션·컷오버(plan/rehearse/apply/verify/rollback) Job, E2E 하네스. AURA·GAIT·포탈이 공용 identity-client로 조회
IMQA v3 / v4: OpenTelemetry native 프론트엔드 성능 모니터링·관찰가능성 솔루션
IMQA 개발팀장 / Service Architect: 개발 총괄
어니컴(주), Seoul | 2024.05 - now
소개: 기존 IMQA v2의 구조적 한계를 넘기 위해 OpenTelemetry 기반으로 재설계한 모바일·웹 프론트엔드 Observability 제품. SigNoz 오픈소스의 Go 수집·질의 스택을 포크·확장하고 IMQA 도메인(세션, 화면, 에러, 심볼화, 금융권 인증)을 얹음
개발 기간: 2024.05 - 현재 (v3·v4 개발 완료, 이후 고객사 배포·유지보수 및 IMQAX 확장)
개발 인력: 7명 (IMQA 개발팀장, 인프라·아키텍처 설계 전담)
적용 고객사: 삼성생명, NH농협은행, 부산은행, 금융결제원(KFTC), 서민금융진흥원, 강원랜드 등
Type-safe pipeline: Prisma 스키마 → PalJS로 Nexus CRUD 자동 생성 → schema.graphql → GraphQL Codegen으로 Apollo React 훅·리졸버 타입 생성. nexus-shield 플러그인으로 adminOnly, roleBasedAccessField 등 필드 단위 권한
데이터: ClickHouse imqa_traces/logs/metrics/metadata. ON CLUSTER DDL, Distributed 19개, AggregatingMergeTree 17개, Materialized View 약 15개, HTTP 응답시간 1m/5m/1h/1d 롤업, 30일 TTL, 마이그레이션 28개. PostgreSQL Prisma 51 모델(Company → ServiceNamespace → Service 테넌시, 대시보드·위젯, Rule/Alarm/Channel, AuditLog, FeatureFlag 등). MinIO에 소스맵·매핑 파일
심볼화: 수집 시점 실시간 디옵퍼스케이션(iOS dSYM atos, ProGuard, Allatori), atosl 바이너리를 linux x86_64/aarch64/darwin으로 번들. 요청 시점 심볼화로 서버 부하를 줄이는 신규 symbolicator 설계. 웹 소스맵은 브라우저에서 디코딩
개발 프로세스: Jira 워크플로 가이드, Conventional Commits(commitlint + husky), Changesets, 컴포넌트별 태그 트리거 멀티아치(amd64/arm64) GitHub Actions 10개, SBOM(자체·CycloneDX·Syft)과 라이선스 리포트, Playwright e2e 7개, Go 테스트 95 파일, TS 단위 테스트 57 파일
개발 스택: TypeScript(Node 22), Go 1.23~1.25(약 8만 라인), Next.js, React 19, Apollo, Prisma, MUI/Emotion/Tailwind, XState, Redux Toolkit
Turbo Repo, TypeScript, NextJS(RSC, App router, Pararel routing), Apollo Server, Paljs, Nexus GraphQL, MQTTjs, Redis 등
Notes
:::
¹: In control system, sliding mode control, or SMC, is a nonlinear control method that alters the dynamics of a nonlinear system by application of a discontinuous control signal that forces the system to "slide" along a cross-section of the system's normal behavior.
²: Precision Time Protocol(PTP)은 네트워크 간 정확한 동기화를 가능케하는 IEEE 1588 표준 시간 전송 프로토콜이다. 하드웨어에서 생성하는 타임스탬프를 사용할 때 나노초 단위의 정확도까지 보장해 준다.
³: In seismic engineering, the effective peak acceleration (EPA, the maximum ground acceleration to which a building responds) is often used, which tends to be ⅔ -- ¾ the PGA, The term 'Effective peak ground acceleration' as it applies to the area of reclamation can be defined as 'That acceleration which is most closely related to structural response and to damage potential of an earthquake'.
⁵: The frequency domain decomposition (FDD) is an output-only system identification technique popular in civil engineering, in particular in structural health monitoring. As an
output-only algorithm, it is useful when the input data is unknown. FDD is a modal analysis technique which generates a system realization using the frequency response given (multi-)output data
⁶: Finite element model updating is the process of ensuring that finite element analysis results in models that better reflect the measured data than the initial models. It is part of verification and validation of numerical models.
⁷: The field of system identification uses statistical methods to build mathematical models of dynamical systems from measured data. System identification also includes the optimal design of experiments for efficiently generating informative data for fitting such models as well as model reduction.
⁸: The linear sum of a series of component signals by Hankel matrix-based SVD, and essentially what the component signals reflect are projections of original signal on the orthonormal bases of m-dimensional and n-dimensional vector spaces. Refer to Xuezhi Zhao,
, Bangyan Ye(2009), "Similarity of signal processing effect between Hankel matrix-based SVD and wavelet transform and its mechanism analysis", Mechanical Systems and Signal Processing Volume 23, Issue 4, May 2009, Pages 1062--1075
⁹: A cepstrum is the result of taking the Inverse Fourier transform (IFT) of the logarithm of the estimated spectrum of a signal.
¹¹: Virtual Reference Station (VRS) networks use real-time kinematic (RTK) solutions to provide high-accuracy, RTK Global Navigation Satellite Systems.