프론트엔드 시점에서 정리한 SSE 도입과 메시지 유실 해결 과정
AI 챗봇 SSE에서 완료 메시지가 유실된 원인을 채널 생성·삭제 시점의 경쟁 조건으로 분석했습니다. 채널 선등록과 replay 기반 구독으로 연결 순서와 무관하게 결과를 수신하도록 개선했습니다.


AI 챗봇 SSE에서 완료 메시지가 유실된 원인을 채널 생성·삭제 시점의 경쟁 조건으로 분석했습니다. 채널 선등록과 replay 기반 구독으로 연결 순서와 무관하게 결과를 수신하도록 개선했습니다.

최상위 제어 입력과 고비용 라벨 함수가 결합한 댓글 타이핑 지연을 측정해 원인을 분석했습니다. ref 기반 비제어 입력으로 전환해 리렌더와 라벨 호출을 제거하고 입력 성능을 개선했습니다.

React와 Day.js로 공수·메모 등 날짜별 정보를 담는 재사용 가능한 캘린더를 구현했습니다. 날짜 계산과 UI를 분리하고 빈칸 배열 및 CSS Grid 정렬의 중요성을 설명합니다.

React SPA에서 자주 발생하는 웹 접근성 결함과 JSX 마크업 규칙을 정리했습니다. 모달·아코디언·동적 알림의 ARIA 및 초점 제어 검증 방법을 제시합니다.

모바일 앱 QA에서 실기기로 Safe Area, 키보드, 터치, 화면 전환을 검증해야 하는 이유를 설명했습니다. 출시 전후 목적에 맞춘 이슈 기록과 재검수 운영 원칙을 제안합니다.

모달 크기는 콘텐츠 양, 사용자 행동, 탭의 비교 필요성에 따라 고정과 유동을 선택해야 합니다. 규격을 유지하되 과도한 콘텐츠는 더 큰 모달이나 페이지 분리를 고려해야 합니다.

React와 Vue의 컴포넌트 작성 방식, 반응성·상태 관리·SSR 생태계를 비교했습니다. 경량 환경의 생산성과 협업성을 고려한 Vue 선택 경험을 공유했습니다.

AI 코딩으로 테스트 작성 비용이 낮아지면서, 테스트의 역할이 구현 검증을 넘어 요구사항 정의와 완료 조건 설정까지 확장된다고 설명했습니다. 프론트엔드 TDD 적용 방식과 AI 코딩 어시스턴트와의 궁합도 함께 정리했습니다.

React와 TypeScript 기반 SpreadJS Excel 상세 화면의 초기 로딩 지연을 단계별 측정으로 분석했습니다. 모든 시트에 바인딩하던 구조를 필요한 시트만 처리하도록 바꿔 로딩 시간을 약 40~50% 줄였습니다.

Storybook으로 UI 상태를 독립적으로 재현해 개발 환경 준비에 덜 의존하도록 구성했습니다. 실제 API 연동과 화면 흐름은 기존 개발 환경에서 분리해 확인했습니다.

수만 건 Grid 화면에서 Cell 계산과 데이터 조합이 반복되며 Main Thread Blocking이 발생했습니다. 사전 집계와 계산 결과 재사용으로 반복 연산을 줄여 개선했습니다.

React Native 네이티브 SDK로 소셜 인증을 처리하고, 기존 React/Gate 로그인 흐름은 그대로 재사용하는 브리지 구조를 도입했습니다. WebView 통신은 계약과 재전송, ACK로 안정화하고 실기기 디버깅 가능성도 높였습니다.

React 공통 컴포넌트로 결제 SDK 연동과 상태 관리를 일원화한 구현 경험을 정리했습니다. 인라인·팝업을 통합하고 성공·실패 후처리와 멱등성까지 고려한 설계가 핵심입니다.

배럴 import 때문에 필요한 컴포넌트 하나가 패키지 전체를 끌고 오는 문제를 해결했습니다. 경량 서브패스 엔트리를 추가해 번들을 크게 줄이고 재사용성을 유지했습니다.

Snap 기능의 DOM 캡처를 빠르게 만들기 위해 병목을 찾고 여러 라이브러리를 직접 비교했습니다. 또한 폰트, 의사요소, 스크롤, noscript 문제를 보정해 정확도까지 개선했습니다.

Windows에서 React Native APK 빌드가 경로 길이 제한으로 실패하는 문제를 다뤘습니다. Junction과 짧은 CMake 스테이징 경로, 캐시 삭제로 해결하는 방법을 정리했습니다.

React Native Android WebView에서만 발생한 본인 인증 실패를 분석했습니다. 외부 인증 앱 URL 처리 로직을 보완해 인증 흐름을 정상화했습니다.

Android Emulator에서는 localhost가 호스트 PC가 아니라 에뮬레이터 자신을 가리켜 접속이 실패할 수 있습니다. 에뮬레이터에서는 10.0.2.2를 쓰고, 필요하면 서버 바인딩과 방화벽도 함께 확인하셨습니다.
