글 목록 · 2 / 6
-
오너십을 코드에 다는 법
누가 어떤 코드를 책임지는지 불분명한 상태가 팀에 어떤 문제를 만드는지, 그리고 우리가 코드 오너십을 명확히 하기 위해 실제로 한 것을 기록했다.
-
트래픽 20GB/일 제한과 같이 사는 법
저가 클라우드 인스턴스의 일일 트래픽 상한선 안에서 서비스를 안정적으로 운영하기 위해 우리 팀이 택한 접근법을 공유한다.
-
자동화의 무력화 — 사람 손이 다시 들어가는 신호
자동화가 잘 작동하는 듯 보이다가 조용히 무너지기 시작할 때, 그 신호를 어떻게 읽고 어떻게 대응해야 하는지 우리 팀의 경험을 정리했다.
-
self-hosted 와 SaaS 의 비용/시간 트레이드오프 표
운영 도구를 직접 호스팅할지 SaaS로 쓸지 결정할 때 우리가 사용하는 판단 기준과 실제 비교 경험을 정리했다.
-
Docker Compose 만으로 1년 — Kubernetes 로 가지 않은 이유
소규모 팀이 1년간 Docker Compose 만으로 운영을 유지한 경험과, Kubernetes 전환을 선택하지 않은 이유를 솔직하게 씁니다.
-
AI agent 를 운영팀이 직접 만들 수 있을까
개발팀 없이 운영팀이 자체적으로 AI 에이전트를 구축하려 했을 때 실제로 어디서 막히는지, 우리가 지원한 경험을 공유합니다.
-
한 분기 회고 — 5개월의 절반에서 합의한 것들
팀이 분기 중반에 모여 지나온 시간을 되돌아보고, 앞으로 유지할 것과 바꿀 것을 합의한 과정을 기록합니다.
-
백로그를 비우는 가장 빠른 방법
쌓인 백로그를 빠르게 줄이는 방법은 더 빠르게 처리하는 게 아니라 더 많이 버리는 것이라는 이야기입니다.
-
multimodal 데이터로 만든 운영 대시보드
텍스트 로그, 수치 지표, 이미지 캡처를 하나의 운영 대시보드에 통합하면서 겪은 설계 고민과 결과를 공유합니다.
-
fail-open vs fail-closed — 우리의 결제 시스템 선택
결제 시스템 장애 상황에서 fail-open과 fail-closed 중 무엇을 선택했는지, 그 이유와 트레이드오프를 정리합니다.
-
신규 입사자 trial 1주 — 우리의 채점표
소규모 팀이 새 팀원을 평가하는 첫 1주일 동안 실제로 무엇을 보는지, 그 기준을 솔직하게 공개합니다.
-
legacy 라는 단어를 쓰지 않는 이유
"레거시 코드"라는 표현이 실제 대화에서 어떤 오해를 만들어내는지, 우리가 대신 쓰는 표현은 무엇인지 설명합니다.
-
보고서 자동화 — 사람의 일이 사라진 자리
반복 보고서를 자동화하고 나서 남은 것은 무엇인지, 그 빈자리를 어떻게 채웠는지 돌아봤습니다.
-
회사 사이트와 블로그 — 두 톤의 분리
회사 공식 사이트와 팀 블로그는 왜 다른 톤으로 써야 하는지, 그 경계를 어떻게 설정했는지 정리했습니다.
-
사이드 프로젝트의 8할은 죽는다 — 살아남은 두 가지
시작했다가 조용히 죽어간 프로젝트들과, 살아남은 두 개 사이의 차이 — 회고해보니 공통점이 보였다.
-
Next.js 와 Astro 를 같은 회사에서 같이 쓴다
왜 프레임워크를 하나로 통일하지 않았는가 — Next.js와 Astro를 동시에 운영하는 이유와 각각의 역할을 공유한다.
-
신규 환경 1시간 셋업 스크립트의 진화
새 서버를 처음부터 셋업하는 데 걸리는 시간을 줄이기 위해 스크립트를 어떻게 발전시켜왔는지 — 처음 아이디어에서 지금의 형태까지.
-
인터뷰를 줄이고 trial 을 늘린 1년 회고
작은 팀에서 채용 방식을 인터뷰 중심에서 유료 trial 중심으로 바꿔본 1년의 경험 — 무엇이 달라졌고 무엇이 여전히 어려운지를 솔직하게 적는다.
-
n8n 과 GitHub Actions 의 분리선
자동화 도구 두 가지를 같은 팀에서 함께 쓰며 찾아낸 역할 분리 기준 — 어떤 작업을 어디에 맡길지 헷갈렸던 경험에서 나온 정리다.
-
Cloudflare Flexible vs Origin Cert — 우리는 둘 다 써봤다
Cloudflare의 SSL 두 가지 방식을 실제로 운영하며 겪은 차이점 — Flexible이 편하지만 Origin Cert가 필요한 순간이 있다.