당신의 창고를 보호하세요

발행: (2026년 4월 8일 PM 12:03 GMT+9)
11 분 소요

Source: Hacker News

초고층 빌딩을 짓는 일은 거대한 작업입니다. 건축 설계도, 시청 허가, 그리고 첫 번째 강철이 주문되기 전까지 진행되는 안전 감사가 필요합니다. 수백 명이 수개월 혹은 수년에 걸쳐 협업해야 합니다. 단순히 석고보드를 붙이고 건물이 무게를 견디길 기대할 수 없습니다.

그런 다음 뒤뜰 창고가 있습니다. 설계도도, 허가도, 감사도 없습니다. 그냥 목재와 톱을 잡고 망치를 들기만 하면 됩니다. 약간은 바람이 새고, 비가 많이 오면 지붕이 새는 정도일 수 있지만, 주말 하루 만에 스스로 만들 수 있습니다.

지난 6년 동안, 엔지니어로서의 내 삶은 이 두 가지 모드 사이를 오갔습니다. 낮에는 기업 규모의 은행 시스템을 구축했고, 밤에는 창고에서 내가 하고 싶은 대로 무언가를 만들었습니다—때로는 어느 정도 성공하고, 때로는 그렇지 않은 사이드 프로젝트들 말이죠.

이것을 두 개의 별도 삶, 즉 급여를 위한 일과 즐거움을 위한 일로 구분하기 쉽습니다. 하지만 내 경력의 이 장을 되돌아보면 근본적인 깨달음을 얻었습니다. 기업 업무는 대규모로 엔지니어링하는 방법을 가르쳐 주었지만, 개인 프로젝트가 나를 엔지니어로 남게 만든 것입니다.

나는 항상 젊은 개발자들에게 사이드 프로젝트를 유지하는 것이 인터뷰 준비나 LeetCode 풀이보다 커리어에 더 큰 도움이 된다고 말해왔습니다.

규모의 물리학 배우기

초반에 눈에 띄는 것은 실제 코드를 작성하는 작업이 그리 많지 않다는 점입니다. 설계 문서, 테스트 계획, 그리고 아키텍처 리뷰가 있습니다. 실제 구축 부분은 업무의 일부분에 불과하다고 느껴질 수 있습니다.

하지만 그 주변 작업이 바로 대규모로 구축할 수 있게 해줍니다. 주요 은행이 처리하는 방대한 거래량을 다룰 때는 설계 단계를 건너뛰거나 테스트를 대충 할 수 없습니다. 이러한 단계들은 모두 앞선 사람들이 그 중요성을 몸소 겪고 배운 결과 존재합니다.

얻는 것

  • 도달하기 힘든 규모에 접근Cloud Spanner와 같이 전 세계에 분산되고 강력한 일관성을 보장하는 데이터베이스와 작업할 수 있습니다. 이는 노트북으로는 절대 시뮬레이션할 수 없습니다.
  • 방어적인 설계 사고방식 – 기능을 생각하기 전에 실패 모드에 대해 고민하게 됩니다.

트레이드‑오프

그 규모에는 경직성이라는 비용이 따릅니다. 거대한 사이트에서 혼자 일하는 상황이기 때문에, 재료를 선택하거나 기반을 실험해 볼 기회가 거의 없습니다.

청사진을 집으로 가져가기

작업실(쉐드)은 현장에서 배운 청사진을 가져와 실제로 가지고 놀 수 있는 곳이다.

초기에는 내 개인 프로젝트가 엉망이었다. 아키텍처는 사후 생각에 불과했으며—생각 자체가 없었을 수도 있다. 전형적인 작업실 행동이다. 하지만 시간이 지나면서 업무에서 익힌 패턴이 자연스럽게 스며들기 시작했다.

시스템을 설계하면서 장애를 우아하게 처리하도록 충분히 고민하면, 그 과정이 자동 파일럿이 된다. 홈랩이 가장 좋은 예다: 단일 머신에 하나의 컨테이너로 시작했지만 결국 자동 배포와 코드로 정의된 인프라를 갖춘 관리형 클러스터가 되었다.

그것은 고층 빌딩에서 배운 구조적 규율을 완전한 자유를 누릴 수 있는 공간에 적용하는 것이다. 개인 프로젝트가 더 이상 무너지지 않는다. 여전히 빠르게, 내 방식대로 구축하지만 이제는 견고하게 기반을 잡았다. 기업에서는 구조적 무결성의 규칙을 배웠고, 작업실은 실제로 내가 설계자가 될 수 있는 장소를 제공한다.

파괴의 자유

스스로를 위해 개발할 때, 나쁜 결정의 비용은 낭비된 저녁 시간에 불과합니다. 하지만 직장에서 잘못된 접근 방식을 선택하면 실제 팀과 실제 고객에게 영향을 미칩니다.

그 빠른 피드백 루프가 the shed를 매우 가치 있게 만드는 이유입니다. 여러분은 개발자이자, 리뷰어이자, 사용자—모두 동시에 역할을 수행합니다. 무언가를 부수고 다시 만들면서 그 느낌을 직접 확인할 수 있습니다.

개인 프로젝트가 중요한 이유

  • Low stakes, high learning – 실수는 제품 출시가 아니라 시간만 소모합니다.
  • Full ownership – 문제, 도구, 일정 모두 직접 결정합니다.
  • Experimentation without bureaucracy – 제안서도, 승인도 없이 호기심만으로 진행합니다.

대부분의 실험은 스타트업 아이디어로 이어지지는 않지만, 항상 무언가를 남깁니다:

  • 새로운 패턴 또는 추상화
  • 하지 말아야 할 것에 대한 교훈
  • 생태계에 대한 더 넓은 이해

실천을 통한 학습

“나는 세상이 필요해서가 아니라 그 수준에서 하드웨어가 어떻게 작동하는지 이해하고 싶어서 Go로 Game Boy Advance 에뮬레이터를 만들었다.”

  • Hands‑on exposure에 대한 낯선 도구(예: 컨테이너화, 클라우드 서비스) 실습은 학습을 가속화한다.
  • 집과 직장에서 같은 개념을 반복하면 지식을 굳히는 “reps”(반복 연습)를 만들 수 있다.
  • 몇 달 후 직장에서 같은 도구나 접근 방식이 등장하면 이미 앞서 나가게 된다.

The Feedback Loop

  1. 주말에 만지작거리기 – 순수한 호기심으로 도구나 패턴을 탐색합니다.
  2. 트레이드‑오프와 거친 부분 식별 – 문서에서 누락된 부분을 눈여겨봅니다.
  3. 직장에서 통찰 적용 – 추측 대신 정보에 기반한 결정을 내립니다.

이미 안전한 환경에서 무언가를 부숴봤기 때문에, 다음을 할 수 있습니다:

  • 도구를 객관적으로 평가합니다.
  • 프로덕션 시스템에 영향을 주기 전에 문제점을 예측합니다.
  • 구체적인 경험을 바탕으로 더 나은 솔루션을 옹호합니다.

번아웃 방지

소프트웨어 엔지니어링의 함정은 하루 일과가 당신의 전체 기술이라고 믿는 것이다.

  • Skyscraper builders가 대규모 반복적인 엔터프라이즈 프로젝트만 수행하면 결국 번아웃에 빠진다.
  • 티켓 대기열은 절대 줄어들지 않고, 스프린트는 뒤섞이며, 창의적인 불꽃이 약해진다.
  • 당신은 해야 하기 때문에 만들기를 멈추고, 비즈니스가 요청하기 때문에 만들기 시작한다.

개인 프로젝트 보호하기

  • 격렬히 보호하라 – 그것들은 호기심과 실험의 저장소이다.
  • 자신을 단순한 직원이 아니라 빌더로 정의하라.
  • 기업은 살아남는 코드를 쓰는 법을 가르치고; 작업실은 당신이 여전히 코드를 쓰고 싶게 만든다.

주요 내용

  • 사이드 프로젝트를 고위험 학습을 위한 저위험 실험실로 활용하라.
  • 개인 실험의 피드백 루프가 직업적 결정을 안내하도록 하라.
  • 호기심 기반 작업을 위한 시간과 공간을 보호함으로써 창의적 불꽃을 유지하라.
0 조회
Back to Blog

관련 글

더 보기 »

당신의 창고를 보호하세요

스카이스크래퍼에서 창고까지: 엔지니어를 살아가게 하는 원동력 스카이스크래퍼를 건설하는 일은 거대한 작업이다. architectural blueprints, council permits, …