<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Juntiger</title><description>뚝딱뚝딱, 끄적끄적</description><link>https://juntiger.pages.dev/</link><language>ko-KR</language><atom:link href="https://juntiger.pages.dev/rss.xml" rel="self" type="application/rss+xml"/><item><title>헬스체크는 정상인데 알림은 안전하지 않았다</title><link>https://juntiger.pages.dev/engineering/hangangjari-ops/healthcheck-push-recovery-gap/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari-ops/healthcheck-push-recovery-gap/</guid><description>DiskPressure 복구 뒤 오래된 주차 snapshot을 직전값처럼 비교해 푸시가 나갔고, 이를 freshness guard로 막은 기록</description><pubDate>Fri, 19 Jun 2026 00:00:00 GMT</pubDate></item><item><title>집에 둔 서버를 운영 환경으로 만들기까지</title><link>https://juntiger.pages.dev/blog/hangangjari-series/05-infra-launch-and-retrospective/</link><guid isPermaLink="true">https://juntiger.pages.dev/blog/hangangjari-series/05-infra-launch-and-retrospective/</guid><description>미니PC 서버에 배포, 관측, 백업 기준을 세우고 App Store 공개까지 간 기록.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>한강자리 시스템 개요</title><link>https://juntiger.pages.dev/engineering/hangangjari/00-system-overview/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/00-system-overview/</guid><description>수집, API, 캐시, 위젯이 사용자의 첫 화면을 나눠 맡는 구조</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>위젯은 앱의 축소판이 아니었다</title><link>https://juntiger.pages.dev/blog/hangangjari-series/08-widget-as-product-surface/</link><guid isPermaLink="true">https://juntiger.pages.dev/blog/hangangjari-series/08-widget-as-product-surface/</guid><description>iOS 위젯의 갱신 제약 안에서 한눈에 볼 값과 오래된 상태를 함께 남겼다.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>숫자만으로는 공공데이터를 믿기 어려웠다</title><link>https://juntiger.pages.dev/blog/hangangjari-series/07-public-data-trust/</link><guid isPermaLink="true">https://juntiger.pages.dev/blog/hangangjari-series/07-public-data-trust/</guid><description>잔여 대수와 혼잡도 옆에 출처, 갱신 시각, 모르는 상태를 함께 둔 이유.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>전국 확장보다 한강에 집중한 이유</title><link>https://juntiger.pages.dev/blog/hangangjari-series/06-why-focus-hangang/</link><guid isPermaLink="true">https://juntiger.pages.dev/blog/hangangjari-series/06-why-focus-hangang/</guid><description>더 넓은 공원 앱보다 직접 검증할 수 있는 범위와 설명 책임을 택했다.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>공공데이터를 앱에서 바로 부르지 않은 이유</title><link>https://juntiger.pages.dev/blog/hangangjari-series/04-backend-cache-and-workers/</link><guid isPermaLink="true">https://juntiger.pages.dev/blog/hangangjari-series/04-backend-cache-and-workers/</guid><description>느린 수집과 예측, 알림 준비를 서버 작업으로 옮겨 화면 응답을 가볍게 했다.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>앱을 열기 전에도 이어져야 하는 iOS 경험</title><link>https://juntiger.pages.dev/blog/hangangjari-series/03-ios-client-and-widgets/</link><guid isPermaLink="true">https://juntiger.pages.dev/blog/hangangjari-series/03-ios-client-and-widgets/</guid><description>위젯, 알림, 딥링크, 로컬 캐시가 같은 공원 상태를 보게 만든 기록.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>주차 앱에서 한강 방문 앱으로 넓힌 이유</title><link>https://juntiger.pages.dev/blog/hangangjari-series/02-product-scope-and-data-trust/</link><guid isPermaLink="true">https://juntiger.pages.dev/blog/hangangjari-series/02-product-scope-and-data-trust/</guid><description>행사, 혼잡도, 시설, 공지를 넣으며 차량 화면과 일반 화면을 나눈 판단.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>차를 사고 나서 만든 한강 주차 위젯</title><link>https://juntiger.pages.dev/blog/hangangjari-series/01-origin-and-parking-widget/</link><guid isPermaLink="true">https://juntiger.pages.dev/blog/hangangjari-series/01-origin-and-parking-widget/</guid><description>출발 전 반복하던 주차 확인을 앱 첫 화면과 위젯으로 줄인 기록.</description><pubDate>Sun, 14 Jun 2026 00:00:00 GMT</pubDate></item><item><title>미니PC 서버를 실제 서비스처럼 운영하기</title><link>https://juntiger.pages.dev/engineering/hangangjari/18-public-sre-retrospective/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/18-public-sre-retrospective/</guid><description>사용자 요청 경로, GitOps 상태, 관측, 백업을 나눠 다룬 회고</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>오래된 데이터가 보일 때 확인할 순서</title><link>https://juntiger.pages.dev/engineering/hangangjari/09-infrastructure-and-observability/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/09-infrastructure-and-observability/</guid><description>엣지, API, worker, cache, DB를 나눠 지연 원인을 좁힌 기준</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>배포를 기억이 아니라 기록으로 남기는 법</title><link>https://juntiger.pages.dev/engineering/hangangjari/08-ci-cd-and-release/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/08-ci-cd-and-release/</guid><description>테스트, 이미지, GitOps 상태, migration 순서를 반복 가능한 릴리즈 경로로 맞췄다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>FastAPI route를 얇게 둔 API 설계</title><link>https://juntiger.pages.dev/engineering/hangangjari/02-backend-api-architecture/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/02-backend-api-architecture/</guid><description>HTTP route는 요청과 응답만 맡기고 화면 조립은 use case로 옮긴 방식</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>위치 좌표를 서버로 보내지 않는 telemetry</title><link>https://juntiger.pages.dev/engineering/hangangjari/17-privacy-minimal-telemetry/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/17-privacy-minimal-telemetry/</guid><description>로그인 없는 앱에서 작동 상태만 보고, 수집하지 않을 데이터를 먼저 정했다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>공공데이터 번역 cache와 원문 보존</title><link>https://juntiger.pages.dev/engineering/hangangjari/16-localization-source-and-translation-cache/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/16-localization-source-and-translation-cache/</guid><description>UI 문구, 검수 번역, 기계 번역, 한국어 fallback을 분리했다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>푸시 outbox와 suppression audit</title><link>https://juntiger.pages.dev/engineering/hangangjari/15-push-suppression-outbox-delivery-audit/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/15-push-suppression-outbox-delivery-audit/</guid><description>보낸 알림과 보내지 않은 알림의 이유를 같은 기록으로 남겼다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>주차 예측에 confidence를 붙인 이유</title><link>https://juntiger.pages.dev/engineering/hangangjari/14-parking-forecast-baseline-confidence-backtest/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/14-parking-forecast-baseline-confidence-backtest/</guid><description>p10, p50, p90, risk, backtest로 예측을 하나의 정답처럼 보이지 않게 했다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Redis hot cache와 stale fallback</title><link>https://juntiger.pages.dev/engineering/hangangjari/13-redis-hot-stale-cache-fallback/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/13-redis-hot-stale-cache-fallback/</guid><description>빠른 응답과 마지막 성공값을 분리해 오래된 값을 최신처럼 보이지 않게 했다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>source catalog와 ingestion run</title><link>https://juntiger.pages.dev/engineering/hangangjari/12-source-catalog-and-ingestion-runs/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/12-source-catalog-and-ingestion-runs/</guid><description>수집 계획과 실행 결과를 나눠 출처별 최신성과 실패를 설명했다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>home-summary API로 첫 화면을 묶기</title><link>https://juntiger.pages.dev/engineering/hangangjari/11-home-summary-api-contract/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/11-home-summary-api-contract/</guid><description>주차, 나들이, 예측, 출처 상태를 한 응답에 담아 앱과 위젯의 첫 값을 맞췄다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>WidgetKit을 위한 snapshot 저장 구조</title><link>https://juntiger.pages.dev/engineering/hangangjari/10-widget-snapshot-architecture/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/10-widget-snapshot-architecture/</guid><description>앱 밖에서 실행되는 위젯이 마지막 표시값과 갱신 상태를 안전하게 읽게 했다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>푸시 알림을 보내기 전에 줄이는 구조</title><link>https://juntiger.pages.dev/engineering/hangangjari/07-push-notification-architecture/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/07-push-notification-architecture/</guid><description>구독 설정, 조용한 시간, 최신성, 감사 기록으로 발송 후보를 걸렀다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>예측값을 현재값처럼 말하지 않는 법</title><link>https://juntiger.pages.dev/engineering/hangangjari/06-forecast-and-data-science/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/06-forecast-and-data-science/</guid><description>forecast worker, confidence, backtest로 도착 전 판단값의 불확실성을 표시했다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>데이터 없음과 수집 실패를 구분하는 파서</title><link>https://juntiger.pages.dev/engineering/hangangjari/05-data-parsing-and-source-policy/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/05-data-parsing-and-source-policy/</guid><description>공식 출처 등급, schema drift, ingestion run으로 빈 화면의 이유를 남겼다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>API 밖에서 도는 worker와 CronJob</title><link>https://juntiger.pages.dev/engineering/hangangjari/04-workers-and-jobs/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/04-workers-and-jobs/</guid><description>수집, 예측, 푸시, 기준 데이터 동기화를 사용자 요청과 다른 생명주기로 처리했다</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>Postgres와 Redis를 나눈 기준</title><link>https://juntiger.pages.dev/engineering/hangangjari/03-cache-and-db-architecture/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/03-cache-and-db-architecture/</guid><description>이력과 감사 기록은 남기고, 다시 만들 수 있는 응답은 cache로 둔 판단</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item><item><title>SwiftUI 앱과 WidgetKit이 같은 상태를 읽는 법</title><link>https://juntiger.pages.dev/engineering/hangangjari/01-ios-client-architecture/</link><guid isPermaLink="true">https://juntiger.pages.dev/engineering/hangangjari/01-ios-client-architecture/</guid><description>SwiftData와 App Group snapshot으로 앱 밖의 화면까지 같은 값을 이어간 구조</description><pubDate>Sat, 13 Jun 2026 00:00:00 GMT</pubDate></item></channel></rss>