커버스토리
기술 블로그

제품을 만드는 시스템을 만드는 사람

어제 직무통합 글에서 미처 풀지 못한 숙제가 하나 남았습니다. 품질이 개개인의 손끝에 기대고 있다면, 그 품질은 사람이 바뀌는 순간 무너집니다. 저희의 답은 개인기가 아니라 시스템입니다. 높은 기준을 개인의 재능이 아니라 시스템이 보장하게 만드는 것, 그것이 Platform Engineer의 일입니다.

기술 블로그

GitOps 하시면서, 배포 전에 뭐가 바뀔지 알고 계신가요

GitOps에서 ArgoCD 배포 결과를 PR에서 미리 확인하는 방법

기술 블로그

되도록 최신 버전을 사용하는게 왜 이렇게 어려울까?



폴리레포 환경에서 버전 관리 자동화를 가능하게 만든 구조적 조건과 Version Family 설계 이야기

기술 블로그

[인프라를 소프트웨어처럼 5/5] 다섯 축의 운영 총합, 그리고 AI 시대의 플랫폼팀

배포·클라우드·시간·공간·테스트, 그리고 환경까지 다 지나왔습니다. 이제 한 장의 표로 돌아와, 그 여섯 줄이 사실은 같은 원리의 반복이었다는 것과, 그 원리가 왜 AI 시대에 더 중요해지는지를 정리합니다.

기술 블로그

[인프라를 소프트웨어처럼 4/5] plan은 동작을 모른다: 인프라를 테스트·재현한다는 것

terraform plan은 무엇이 바뀌는지 보여줍니다. 동작하는지는 apply해야 압니다. 그 사이의 낭떠러지를 메운 이야기.

기술 블로그

[인프라를 소프트웨어처럼 3/5] 환경은 브랜치에서 태어난다: Environment Variant

공유 Dev 병목을 없애고, 브랜치 하나로 격리 환경을 생성하는 Environment Variant 설계

기술 블로그

[인프라를 소프트웨어처럼 2/5] 코드가 모르는 그 '환경'은 누가 만드는가

환경도 소프트웨어처럼 다루기 위해, 플랫폼팀은 선언(Declaration)을 선택했습니다.

기술 블로그

[인프라를 소프트웨어처럼 1/5] Infrastructure as Code, 그리고 그다음

flex 테크블로그 backend 연재가 "코드가 환경을 모르는 구조"에서 그려 둔 다섯 축을, 이번에는 그 환경을 실제로 만들고 굴리는 클라우드플랫폼팀의 시점에서 이어갑니다. 출발점은 한 문장입니다 — 인프라를 코드로 적는 것과 소프트웨어로 다루는 것은 다릅니다.

기술 블로그

[의존성의 방향을 따라 5/5] Evergreen이 가능했던 이유

Convention Plugin이 만든 구조적 일관성, 그리고 50개 레포를 움직이는 Evergreen 자동화의 토대

기술 블로그

[의존성의 방향을 따라 4/5] PR을 전파하는 Distributer

Wave 기반 PR 전파와 자동 머지로 대규모 버전업을 운영하는 방법

기술 블로그

[의존성의 방향을 따라 3/5] OpenRewrite와 Claude가 코드를 변환한다

50개 레포를 안전하게 버전업하는 방법: OpenRewrite AST 변환과 Claude 빌드 가드레일 아키텍처

기술 블로그

[의존성의 방향을 따라 2/5] 의존 그래프를 읽는 Planner

레포 간 의존성을 분석해 안전한 변경 순서와 전파 계획을 생성하는 방법

기술 블로그

[의존성의 방향을 따라 1/5] 버전업이 고통인 이유

50개 레포지토리의 Spring Boot 버전업, 왜 패치 하나가 조직 전체의 문제가 되는가

기술 블로그

[AI가 읽을 수 있는 코드베이스 5/5] AI 접근성 등급으로 보는 코드베이스

코드 품질만으로는 부족하다 — AI 코딩 에이전트가 이해하고 수정할 수 있는 코드베이스의 조건

기술 블로그

[AI가 읽을 수 있는 코드베이스 4/5] Acceptance 증명이 리뷰를 바꾼다

"이거 돌아가?"라는 가장 비싼 질문을 자동화하고, Code Review를 동작 검증에서 설계 검증으로 전환하는 과정

기술 블로그

[AI가 읽을 수 있는 코드베이스 3/5] Standalone App: 도메인 슬라이스 독립 실행

Hexagonal Architecture로 AI 에이전트가 검증 가능한 도메인 슬라이스를 만드는 법

기술 블로그

[AI가 읽을 수 있는 코드베이스 2/5] 빌드 피드백이 AI를 가르친다

컴파일 에러, 의존성 오류, 테스트 실패 — 빌드 피드백마다 AI에게 전달되는 정보의 질이 다르다

기술 블로그

[AI가 읽을 수 있는 코드베이스 1/5] 프롬프트보다 구조가 먼저다

프롬프트 엔지니어링보다 코드베이스 구조가 AI 활용의 하한선을 결정한다

기술 블로그

[코드가 환경을 모르는 구조 7/7] Variant와 스냅샷 캐시, 그리고 다섯 축의 총합

테스트 인프라가 프로덕션을 닮아야 하는 이유와, 이 시리즈가 남긴 것

기술 블로그

[코드가 환경을 모르는 구조 6/7] 컨테이너는 왜 폭발하는가

Testcontainers가 속도의 적이 되는 순간, 그리고 BuildService라는 해법

기술 블로그

[코드가 환경을 모르는 구조 5/7] Rewrite Host — 공간 축을 교체한다

디버그 헤더 하나로, dev 환경에서 서비스 한 개만 내 노트북으로 바꿔 끼우기

기술 블로그

[코드가 환경을 모르는 구조 4/7] 타임머신 — 시간 축을 교체한다

Clock Port와 헤더 기반 Adapter로 HR 로직의 미래를 미리 실행하기

기술 블로그

[코드가 환경을 모르는 구조 3/7] IaC에도 헥사고날이 관통한다

spec 모듈을 Port로, 클라우드 모듈을 Adapter로 — 플랫폼을 갈아 끼우는 경계의 설계

기술 블로그

[코드가 환경을 모르는 구조 2/7] 배포 코드가 환경을 모르는 구조

환경 이름을 읽지 않는 배포 — 하나의 파이프라인으로 모든 환경을 다루는 법