작업일지 Timeline
프로젝트별로 묶어서 흐름을 볼 수 있게 정리한 작업일지입니다. BSSJ 개발 기록과 블로그 운영 기록을 탭으로 구분했습니다.
프로젝트
-
GitHub Blog GitHub Blog · Kafka Consumer RateLimiter(초당 1건) 운영 적용기 작성
Kafka consumer에서 메시지를 초당 1건으로 처리했던 실제 사례를 기준으로 글을 작성했다. `limitForPeriod=1`, `limitRefreshPeriod=1s` 설정, manual ack 분기, permit 미획득 시 재시도/백오프 처리, lag/처리량/거부율 관측 포인트까지 운영 흐름 중심으로 정리했다.
-
GitHub Blog GitHub Blog · Circuit Breaker 글 보강 (fallbackMethod + Spring Cloud refresh)
Circuit Breaker 포스트를 운영 관점으로 추가 보강했다. `fallbackMethod` 기반 코드 예시를 넣고, Spring Cloud에서 설정값 변경 후 `/actuator/refresh` 또는 `/actuator/busrefresh`로 동적 반영하는 흐름, 그리고 `/actuator` 엔드포인트 역할을 명확히 정리했다.
-
GitHub Blog GitHub Blog · Resilience4j Circuit Breaker 운영 적용기 작성
외부 API 장애 전파를 끊기 위해 적용한 Circuit Breaker 실전 사례를 정리했다. Spring Cloud CircuitBreaker 호출 코드, Resilience4j 설정값, Spring Cloud Config 기반 강제 OPEN/CLOSE 제어 흐름, 운영 지표와 롤아웃 체크리스트까지 한 번에 담았다.
-
GitHub Blog GitHub Blog · SLO/SLI/Error Budget 실전 가이드 작성
모니터링 다음편으로 SLO/SLI/Error Budget 글을 작성했다. 계산 가능한 수식 예시, burn rate 알람 전략, Grafana 대시보드 구성, 시작 체크리스트까지 운영 관점으로 정리하고 공식 문서 레퍼런스를 함께 정리했다.
-
GitHub Blog GitHub Blog · 기존 기술 글 문체 통일 리라이팅
BSSJ 아키텍처, WebFlux 비동기, BlockHound 가이드를 같은 톤으로 다시 다듬었다. 기술 내용과 코드 예시는 유지하고, 기계적인 설명체를 줄여 실제 운영자가 읽는 흐름으로 문장을 통일했다.
-
GitHub Blog GitHub Blog · Grafana + Prometheus 운영 모니터링 가이드 포스팅
Spring Boot(Java 21) 기준으로 메트릭 수집, `/actuator` 내부망 보안 설정, Prometheus scrape, Grafana 대시보드/알람 설계까지 운영 관점으로 다시 정리했다. 내용은 예시 범위를 분명히 나누고, 다이어그램과 체크리스트를 보강해 실무에서 바로 참고할 수 있게 다듬었다.
-
GitHub Blog GitHub Blog · Spring WebFlux 비동기 가이드 포스팅
WebFlux 비동기 핵심 개념을 입문자도 끝까지 따라갈 수 있게 재구성한 글을 작성했다. Mono/Flux, 이벤트 루프, WebClient 병렬 호출, Backpressure를 실전 예시와 다이어그램 중심으로 정리했다.
-
GitHub Blog GitHub Blog · WebFlux BlockHound 실전 가이드 포스팅
BlockHound를 왜 쓰는지부터 테스트 적용, 실패 재현, 수정 패턴, 롤아웃 전략까지 실무 관점으로 정리한 글을 작성했다. 블로킹 탐지 흐름을 이해하기 쉽도록 다이어그램을 다수 추가했다.
-
GitHub Blog GitHub Blog · 작업일지 탭/필터 적용
작업일지 페이지를 프로젝트 탭 구조로 개편했다. BSSJ와 기타 탭으로 전환할 수 있게 만들고, 탭 클릭 시 타임라인이 즉시 필터링되도록 적용했다.
-
GitHub Blog GitHub Blog · 작업일지 전용 페이지 오픈
일반 포스트 본문에서 분리해 /worklog 전용 페이지를 만들고, 타임라인 UI로 가독성을 개선했다. 날짜 순서와 카드 구조를 통일해서 흐름을 읽기 쉽게 맞췄다.
-
GitHub Blog GitHub Blog · BSSJ 아키텍처 글/다이어그램 작성
architecture 문서를 기준으로 아키텍처 글을 다시 작성하고, 전체 구성도와 모듈 의존도 SVG 다이어그램을 추가해 이해가 쉬운 형태로 정리했다.
-
GitHub Blog GitHub Blog · 라이트 테마 가독성 개선
다크 톤을 제거하고 눈이 편한 라이트 팔레트로 전체 스타일을 재정비했다. 배경/카드/코드 블록 대비를 낮춰 장문을 읽기 좋은 상태로 조정했다.
-
GitHub Blog GitHub Blog · GitHub Pages 초기 세팅
블로그 저장소를 정비하고 Pages 배포 경로를 점검했다. 포스트 날짜/경로 이슈를 조정해 실제 공개 URL에서 글이 노출되도록 안정화했다.
-
BSSJ Task 0056 · 교회소개 페이지 CMS 연동
하드코딩된 교회소개 페이지를 CMS 관리형으로 전환하는 작업을 시작했다. 담임목사 인삿말/교회 소개/교회 연혁을 CMS 편집 + API 연동으로 묶어, 운영자가 코드 수정 없이 콘텐츠를 갱신할 수 있게 만드는 것이 핵심 목표다.
-
BSSJ Task 0048 · AWS EC2 서버 세팅 및 애플리케이션 배포
EC2 단일 인스턴스 기준으로 Web/CMS/Backend를 운영 가능한 상태까지 배포했다. 실제 서비스 운영을 위한 인프라, 배포 스크립트, 서비스 재시작 흐름이 이 단계에서 완성됐다.
-
BSSJ Task 0047 · GitHub Actions CI — PR 빌드/테스트 체크
PR 단계에서 자동 빌드/테스트가 돌도록 CI를 붙였다. 수동 확인 의존도를 줄이고 머지 품질을 시스템으로 보장하기 시작한 시점이다.
-
BSSJ Task 0046 · Web Backend 패키지 구조 도메인별 전환
레이어 중심 패키지를 도메인 중심으로 재구성했다. 파일 탐색 경로를 줄이고 도메인 응집도를 높여, 이후 유지보수 속도를 올린 리팩터링이다.
-
BSSJ Task 0044 · 성경 구절 검색 (개역개정 DB + CMS API)
성경 본문 데이터를 DB에 적재하고 검색 API를 제공해 CMS 작성 효율을 높였다. 콘텐츠 입력 과정에서 복사/붙여넣기 부담을 크게 줄인 작업이었다.
-
BSSJ Task 0040 · Web 메인 페이지 리디자인
메인 화면의 인상과 정보 전달력을 동시에 개선했다. 단순 시각 변경이 아니라 첫 방문자가 핵심 콘텐츠로 빠르게 진입하도록 흐름을 다시 잡았다.
-
BSSJ Task 0039 · CMS 이벤트 모달 관리 페이지
이벤트 모달을 CMS에서 생성/수정/삭제할 수 있게 관리 화면을 구현했다. 운영이 원하는 시점에 바로 공지/이벤트를 반영할 수 있게 된 작업이다.
-
BSSJ Task 0038 · Review Fixes (Menu/Staff/FE Navigation)
리뷰에서 지적된 Staff 조회 쿼리, 메뉴 누락 조건, FE 하드코딩 문제를 정리했다. 기능 추가보다 신뢰도를 올리는 정합성 보완 작업이었다.
-
BSSJ Task 0036 · 이벤트 모달 팝업 기능
메인 진입 시 노출되는 이벤트 모달 기능을 추가했다. 노출 기간/활성 상태 같은 운영 파라미터를 고려해 반복 사용 가능한 구조로 설계했다.
-
BSSJ Task 0035 · 쇼츠 API 구현
쇼츠 목록 API를 별도로 구현해 설교와 쇼츠의 사용 맥락을 분리했다. 콘텐츠 타입에 맞는 조회 흐름을 따로 둔 게 포인트였다.
-
BSSJ Task 0034 · 설교 API 구현
설교 목록 페이징 API를 구현해 콘텐츠가 많아져도 응답과 렌더링이 버티도록 했다. 운영에서 가장 자주 쓰이는 콘텐츠 영역 중 하나를 안정화한 작업이다.
-
BSSJ Task 0033 · Frontend API Integration
프론트에서 API 설정(BASE_URL, CHURCH_ID 등)을 표준화하고 실제 연동을 본격 적용했다. 화면 더미 데이터 중심에서 실데이터 중심으로 전환한 단계다.
-
BSSJ Task 0032 · Church ID UUID v7 Migration
교회 식별자 체계를 UUID v7로 정리해 정렬성과 확장성을 개선했다. 멀티 교회 대응을 고려한 데이터 식별 전략 정비 작업이었다.
-
BSSJ Task 0031 · Web API 통합 테스트 추가
교회 정보 API를 중심으로 통합 테스트를 작성했다. 개발 속도만 보던 단계에서 회귀 안정성까지 챙기는 구간으로 넘어간 의미가 있다.
-
BSSJ Task 0030 · Swagger API 문서화
OpenAPI/Swagger를 붙여 API 계약을 문서로 공개했다. 프론트-백 협업에서 "말로 맞추는" 비용을 줄인 실용적인 개선이었다.
-
BSSJ Task 0029 · 섬기는 사람들 API
카테고리별 스태프 조회 API를 추가해 프론트와 데이터 연결을 완료했다. 공개 페이지가 CMS 데이터와 실제로 맞물리기 시작한 단계다.
-
BSSJ Task 0025 · SubMenu content_table 필드 추가
서브메뉴가 단순 링크가 아니라 실제 콘텐츠 테이블과 연결되도록 확장했다. 메뉴 구조를 운영 데이터와 직접 연결하는 중요한 전환점이었다.
-
BSSJ Task 0024 · Database Schema 설계 및 구현
본격 API 개발 전에 스키마를 먼저 확정했다. 데이터 관계를 선제적으로 정리하면서 기능 추가 시 발생할 수 있는 구조적 충돌을 줄였다.
-
BSSJ Task 0023 · Sermons View Cleanup
설교 뷰의 불필요한 상태값과 복잡한 부분을 정리했다. 기능 추가가 아니라 유지보수성을 올리는 리팩터링 성격의 작업이었다.
-
BSSJ Task 0022 · Web API Spring Profiles 분리
local / beta / release 프로필을 분리해서 환경별 설정 충돌을 줄였다. 배포 단계가 늘어날수록 필요한 기본 정리 작업을 초기에 반영한 케이스다.
-
BSSJ Task 0021 · Backend API Bootstrap
Spring Boot 3.x + Java 21 기준으로 백엔드 기본 구조와 필수 엔드포인트를 세팅했다. 이후 API 작업의 출발점이 되는 표준 뼈대를 만든 작업이었다.
-
BSSJ Task 0020 · 메인페이지 관리 기능
메인 페이지 노출 요소를 CMS 데이터로 제어하도록 전환했다. 배너/블록 같은 핵심 영역을 코드 수정 없이 운영에서 조정할 수 있게 된 점이 컸다.
-
BSSJ Task 0019 · 섬기는 사람들 관리 기능 구현
교역자/리더십 정보를 CMS에서 직접 관리할 수 있게 CRUD 흐름을 구축했다. 소개 페이지를 운영 데이터 기반으로 전환한 핵심 작업이었다.
-
BSSJ Task 0017 · CMS 메뉴 관리 기능 구현
하드코딩 메뉴를 CMS에서 관리 가능한 구조로 바꿨다. 운영자가 개발자 도움 없이 메뉴를 변경할 수 있게 되면서 유지보수 속도가 확 올라갔다.
-
BSSJ Task 0014 · 쇼츠영상 페이지 구현
짧은 영상 콘텐츠를 빠르게 탐색할 수 있는 쇼츠 페이지를 만들었다. 검색/필터를 고려해 운영자가 계속 쌓아도 사용자 탐색 비용이 커지지 않게 설계했다.
-
BSSJ Task 0011 · 목사님 칼럼 페이지
칼럼은 읽기 경험이 핵심이라 타이포그래피와 줄 간격, 문단 리듬에 집중했다. 콘텐츠 자체가 돋보이도록 장식보다 가독성을 우선한 페이지로 정리했다.
-
BSSJ Task 0010 · 설교 페이지 개선
텍스트/이미지 배치가 어색했던 부분을 정리했다. 특히 흐름이 끊기던 레이아웃을 자연스럽게 바꿔 읽는 경험 자체를 개선했다.
-
BSSJ Task 0009 · 모바일 메뉴 버그 수정
모바일에서 메뉴 오버레이가 열리지 않는 문제를 수정했다. 작은 버그였지만 실제 사용성에 바로 영향이 가는 구간이라 우선순위를 높게 가져간 작업이었다.
-
BSSJ Task 0008 · 교회소개 페이지 통합 개편
흩어져 있던 교회소개 관련 메뉴를 사용자 관점으로 다시 묶었다. 정보 구조를 재정렬해서 방문자가 필요한 내용을 한 흐름 안에서 찾을 수 있게 개선했다.
-
BSSJ Task 0007 · Design Migration (Figma AI -> Vue)
디자인 산출물을 실제 Vue 컴포넌트로 옮기는 마이그레이션 작업을 진행했다. 결과적으로 화면은 예쁘게 보이는 수준을 넘어, 이후 재사용 가능한 코드 구조로 바뀌었다.
-
BSSJ Task 0006 · Sermons Page (설교 페이지)
설교 콘텐츠를 카드/메타 중심으로 정리해서 탐색성이 좋게 구성했다. 단순 리스트가 아니라 제목-본문-설교자 같은 핵심 정보를 빠르게 읽도록 구조를 잡았다.
-
BSSJ Task 0005 · 라이트 테마 + 콘텐츠 페이지 완성
전체 톤을 라이트 컨셉으로 맞추고 주요 콘텐츠 페이지의 시각 일관성을 맞췄다. 단순 색상 변경이 아니라 텍스트 가독성과 정보 밀도를 같이 조정한 작업이었다.
-
BSSJ Task 0013 · 메뉴 한국어화 및 주보 게시판 구현
공개 사이트의 메뉴를 한국어 중심으로 정리하고 주보 게시판을 붙였다. 실제 교회 사용 환경에 맞춘 로컬라이징 성격이 강한 작업이었다.
-
BSSJ Task 0004 · 메인 레이아웃 및 네비게이션
헤더/메뉴/레이아웃의 기본 틀을 확정했다. 이 시점에 네비게이션 흐름을 먼저 고정해둔 덕분에 이후 페이지 추가 작업이 훨씬 덜 흔들렸다.
-
BSSJ Task 0003 · Splash Intro
첫 진입 경험을 위해 스플래시 인트로를 넣었다. 과한 기술 대신 SVG/CSS 애니메이션으로 구현해서 유지보수성을 챙기고, prefers-reduced-motion까지 고려해 접근성도 같이 챙긴 작업이었다.
-
BSSJ Task 0002 · Web Frontend 프로젝트 초기화
Public Web 프론트엔드 뼈대를 Vite + Vue 3 + TypeScript로 세팅했다. 라우터와 Pinia까지 초기 연결해두면서 이후 화면 작업이 바로 들어갈 수 있는 기반을 마련했다.
-
BSSJ Task 0001 · Bootstrap
프로젝트를 시작하면서 코드보다 먼저 일하는 방식을 정했다. agents / tasks / docs / apps 구조를 고정하고, Planning -> Design -> Implementation -> Review -> QA 흐름을 문서로 명확히 잡아 팀 기준점을 만든 작업이었다.
-
BSSJ Task 0012 · 사진첩 갤러리
사진첩을 별도 섹션으로 분리해 운영 관점에서 확장 가능하게 설계했다. 카테고리/앨범 구조를 미리 잡아두면서 이후 CMS 연동 전환이 쉬워진 작업이었다.
조건에 맞는 작업일지가 없습니다.