빠른 인프라: 유럽에서 인터콤 구축에서 배운 5가지 교훈

게시 됨: 2022-05-06

12월에 우리는 Intercom의 가장 큰 인프라 프로젝트 중 하나의 결과인 유럽 데이터 호스팅을 발표했습니다. 인프라를 구축하는 동안 배운 교훈은 Intercom을 전 세계적으로 계속 확장함에 따라 매우 중요합니다. 2022년 4월 현재 호주에서도 Intercom을 호스팅하고 있습니다.

지금까지 Intercom은 AWS의 단일 리전에서 호스팅되는 다중 테넌트 애플리케이션이었습니다. 그러나 우리는 오랫동안 유럽 데이터 호스팅에 대해 고객 및 잠재 고객과 이야기해 왔습니다. 우리는 무엇을 제공 해야 하고 해결해야 하는 문제인 인터콤을 알고 있었지만 데이터는 유럽에서 저장 및 처리되었습니다.

우리가 알고 있었던 것과 알지 못했던 것

우리는 많은 " 알려진 알려진"으로 시작했습니다. 다중 지역 소프트웨어 배포와 같이 해결해야 하는 문제를 알고 있었습니다. 우리는 일부 " 알려진 미지수" 도 확인했습니다. 새 지역을 청구 시스템에 통합하는 것과 같이 해결해야 하지만 아직 방법을 몰랐던 문제. 우리는 또한 발견되기를 기다리고 있는 많은 "알 수 없는 미지"가 있다는 것을 확신했습니다. 이러한 알 수 없는 정보로 인해 프로젝트에 소요되는 시간이나 헌신해야 하는 사람의 수를 예측하기가 어려웠습니다. 다른 프로젝트나 과거에 수행한 작업과 비교하기에는 범위가 너무 넓고 성공의 경로가 명확하지 않습니다.

우리가 일찍부터 한 일은 이전에 이런 종류의 프로젝트를 수행한 유사한 회사의 팀과 이야기하는 것이었습니다. 대부분의 경우 이러한 프로젝트는 이 회사에서 수행한 가장 큰 프로젝트 중 하나로 밝혀졌으며 대부분의 엔지니어링 팀이 완료하는 데 6개월 이상이 걸렸습니다.

"팬데믹 상황에서 R&D 팀의 속도를 늦추는 것을 꺼려해서 Intercom에서 일하는 방식을 반영하여 프로젝트 계획을 세웠습니다."

일부 회사는 그 과정에서 아키텍처를 재구상하기까지 했습니다. 우리는 그 규모를 변경하고 R&D 팀의 속도를 늦추는 것을 꺼려했습니다(팬데믹의 한가운데!). 그래서 우리는 Intercom에서 일하는 방식을 반영하여 프로젝트 계획을 세웠습니다.

이는 프로젝트의 규모에도 불구하고 빠르게 움직인다는 것을 의미했습니다. 장기적으로 최적화하면서 빠르게 움직이고 "빠른 배송, 일찍 배송, 자주 배송" 원칙을 사용하면 제품을 출시할 뿐만 아니라 궁극적으로 계획보다 빨리 고객에게 배송할 수 있습니다. 을 위한.

레슨 #1: 구축을 시작하십시오 – 빠르게

빠르게 움직이려는 우리의 헌신은 우리의 첫 번째 교훈과 이 프로젝트의 시작을 실제로 여는 결정 으로 이어졌습니다. 최근 Intercom on Product 팟캐스트 에서 공동 창립자인 Des는 오래된 제다이 종곡선 밈과 이것이 스타트업의 속도에 얼마나 자주 적용되는지에 대해 이야기했습니다. 대부분의 스타트업은 "추가 프로세스 설치" 단계를 거쳐 마침내 최대한 빨리 움직여야 한다는 사실을 깨닫게 됩니다. 속도와 허슬 을 사용 하면 이러한 "알 수 없는 미지"를 파악하고 문제에 직면했을 때 해결책을 찾는 데 도움이 될 것이었습니다.

그래서 우리의 전 CTO이자 공동 설립자인 Ciaran Lee는 우리가 시작하기로 결정했습니다. 우리는 프로젝트를 전담하는 소규모 임시 팀과 함께 구축을 시작하여 정말, 정말 빠르게 진행할 예정이었습니다.

"실패를 허용하면 프로젝트에 대한 접근 방식이 바뀌었습니다."

우리의 접근 방식이 효과가 없다면 미래에 효과가 있을 수 있는 것을 계획할 수 있는 귀중한 교훈을 얻게 될 것입니다. 최상의 시나리오에서 우리는 고객의 손에 그것을 전달하는 방법을 알아낼 수 있을 만큼 충분히 잘 작동하는 무언가를 빠르게 구축할 것입니다. 실패를 허용함으로써 프로젝트에 대한 접근 방식이 바뀌었고 앞으로 나아갈 수 있었습니다. 처음부터 문제를 예상하고 성공을 보장하기 위해 앞을 내다보는 대신 문제가 발생할 때까지 구축을 시작한 다음 해결책을 찾았습니다.

우리가 나중에 완전한 구현을 위한 빌딩 블록으로 사용할 수 있는 프로토타입을 만드는 것이 아니라는 점에 유의하는 것도 중요합니다. 그 결과 우리가 유지한 추진력은 결국 프로젝트의 성공에 결정적인 역할을 했습니다.

교훈 2: 원칙에 충실하라

일단 구축을 시작하면 엔지니어링 원칙 이 계속해서 빠르게 진행하는 데 도움이 되었습니다. 아키텍처를 재창조하는 것을 포함하여 유럽에서 인터콤을 구축할 수 있는 방법은 많았지만 " 기술적으로 보수적이어야 한다"는 원칙 에 따라 기존 프로덕션 환경을 구축하는 데 사용한 것과 동일한 접근 방식을 선택했습니다.

“복사하여 붙여넣기만 하는 것이 아니라 축소하고 단순화했습니다.”

우리는 유럽 구축에 새로운 소프트웨어, 서비스 또는 접근 방식을 도입하지 않았습니다. 동시에 우리는 미국 인프라의 요소를 가져와 훨씬 더 쉽게 작업할 수 있는 방식으로 새로운 환경에서 재사용함으로써 아키텍처를 대폭 간소화했습니다. 단순히 복사하여 붙여넣는 것이 아니라 " 간단하게 유지 " 원칙에 따라 축소 및 단순화했습니다.

수업 #3: 필요할 때 규칙을 구부리십시오.

우리는 계획 프로세스와 팀 구조에 대해 많은 유연성을 허용하여 이 프로젝트에 인력을 투입하고 시작하고 모든 사람에게 우리가 하고 있는 일에 대해 계속 알릴 수 있도록 하는 동시에 "규칙"을 구부려야 했습니다. 기존 팀의 숙련된 엔지니어를 포함하여 임시 프로젝트 팀을 구성하여 프로젝트 작업을 시작했습니다.

물론 이 결정에는 결과가 따랐습니다. 프로젝트 구성원은 매일 여러 차례 스탠드업을 해야 했습니다. 다른 프로젝트는 우선 순위를 낮춰야 했습니다. 이것은 모든 프로젝트에 대한 기본 접근 방식이 될 수는 없지만 달성해야 하는 것이 무엇인지 알고 즉시 시작하고 싶었을 때 진행을 위해 프로세스를 정중하게 생략하는 것이 합리적이었습니다.

레슨 #4: 작업을 가능한 한 로컬로 유지

이것은 프로젝트를 빠르게 진행하기 위해 내린 가장 중요한 결정일 수 있습니다. 프로젝트의 일부로 인터콤의 모든 부분을 만지긴 했지만, 우리는 여러 팀에 걸쳐 작업을 수행하지 않고 대신 임시 프로젝트 팀에 가능한 한 많은 작업을 로컬로 유지하기로 결정했습니다. 더 넓은 계획 프로세스를 피할 뿐만 아니라 R&D 팀에 유럽으로의 기능 배포를 용이하게 해달라고 요청할 필요가 없었습니다. 우리는 기본 접근 방식으로 작업을 수행하여 수많은 회의, 문서 및 Slack 메시지를 피했습니다.

"우리는 문제에 대한 소유권을 가정하고 문제를 해결할 수 있는 권한을 부여했습니다."

우리는 문제의 소유권을 가정하고 프로젝트 유럽에서 작업하지 않는 팀의 중단을 최소화하여 Intercom에 대한 전체 비용을 최소화하여 문제를 해결할 수 있는 권한을 부여했습니다. 여러 경우에 우리는 전문 지식을 가진 사람들에게 도움을 요청해야 했고 일부 팀에 몇 가지 놀라움을 주었습니다. 그러나 전반적으로 이것은 매우 성공적인 접근 방식이었습니다.

수업 #5: 일정을 유연하게 유지

인프라를 구축하고 Intercom Europe의 운영을 확인한 후 프로젝트의 다른 단계로 이동하여 Intercom의 여러 팀과 협력하여 고객 대면 출시를 조정했습니다.

출시를 방해하는 요소는 대부분 자체 내부 프로세스와 출시에 중요하지 않은 몇 가지 고객 대면 통합이었습니다. 그래서 우리는 WhatsApp 기능 없이 출시 하고 우리가 진행하면서 이러한 격차를 채울 수 있는지 자문했습니다. 무엇이 우리를 정말로 막고 있었습니까?

"타임라인을 보고 남은 작업을 평가하여 출시를 12월로 앞당길 수 있다고 생각했습니다."

우리의 프로젝트 계획은 1월에 시작되었지만 타임라인을 보고 남은 작업을 평가하여 12월로 미룰 수 있다고 생각했습니다. 고객 지원, 영업, 분석, 마케팅, 법률, R&D 등의 도움이 필요했지만 모두가 함께 힘을 모아 빠르게 움직였습니다.

영업 팀이 플랫폼을 사용하여 고객과 거래를 마무리하여 Intercom에 실제 수익을 가져올 때 표시되는 Slack 채널이 있습니다. 이 마지막 단계에서 채택을 위한 투쟁의 결과는 이 채널에서 명확해집니다. 이는 우리가 여기까지 오기 위해 들인 모든 작업의 ​​가치를 합산합니다. 기존 일정을 따르면 훨씬 쉬웠을 텐데, 스스로를 밀어붙여서 계획보다 한 달 일찍 고객의 손에 들어갈 수 있었습니다.

우리의 학습은 우리가 계속 더 빨리 나아가는 데 도움이 될 것입니다.

이것은 작업하기에 매우 흥미로운 프로젝트였습니다. 저는 우리가 수행한 작업과 Intercom 전체의 팀에 대한 프로젝트의 영향을 최소화한 것이 자랑스럽습니다. 아직 진행 중인 작업이 많이 있지만 경험에서 얻은 교훈은 호주 호스팅을 구축하고 다른 관할 지역의 인프라를 계속 개발하면서 매우 중요했습니다.

Intercom을 통한 유럽 데이터 호스팅에 대해 자세히 알아보기