← Thoughts

운영해 본 사람이 만드는 소프트웨어

제품운영

낮에는 현실의 시스템을 운영한다. 재고가 어긋나고, 일정이 밀리고, 예외가 규칙보다 많은 곳. 밤에는 소프트웨어를 만든다. 두 세계는 멀어 보이지만, 나는 점점 운영해 본 감각이 만드는 코드의 결을 믿게 됐다.

운영을 해보면 안다. 깔끔한 기획서는 현실에서 대부분 깨진다. 데이터는 비어 있고, 사람은 예상과 다르게 움직이고, “그럴 리 없는” 경우가 매주 일어난다. 그래서 나는 해피 패스만 도는 도구를 신뢰하지 않는다. 노트가 없어도, 네트워크가 끊겨도 끝까지 굴러가는가를 먼저 본다. graceful degradation은 기술 용어이기 전에, 현장의 태도다.

스펙과 현실 사이의 간격 — 그 간격에서 오래 일해본 사람은, 그 간격을 미리 코드에 새긴다.

또 하나. 운영은 “무엇을 안 할지”를 매일 결정하는 일이다. 모든 요청을 다 받으면 시스템은 무너진다. 그 감각이 제품에도 남았다. 기능을 더하는 것보다 덜어내는 결정이 도구의 성격을 만든다는 걸, 나는 스프레드시트가 아니라 현장에서 먼저 배웠다.

만드는 사람이자 운영하는 사람. 나는 이 두 정체성이 충돌한다고 생각하지 않는다. 오히려 한쪽이 다른 쪽을 정직하게 만든다.