혁신적인 아키텍처 시리즈, 1부

이 콘텐츠는 어떠셨나요?

“이런 멋진 아이디어가 떠올랐어요!”

모든 Startup은 아이디어에서 시작됩니다. 자금, 직원, 유통 또는 기타 무수한 것들에 대해 걱정하기 전에 잠재력이 있다고 생각되는 제품이나 서비스 같은 새로운 아이디어가 떠오릅니다.

클라우드를 기반으로 아이디어를 구상하려면 클라우드 아키텍처가 필요합니다. 이 청사진은 훌륭한 아이디어를 현실로 이끄는 데 도움이 되며, 잘 구축되면 비즈니스가 성장함에 따라 함께 발전할 수 있습니다.

네 부분으로 구성된 이 Evolutionary Architectures 시리즈에서는 아이디어에 대한 탄탄한 청사진을 세우는 데 도움을 주기 위해 적절한 이름을 가진 Example Startup이라는 한 회사가 어떻게 아이디어를 실행에 옮기는지 보여줍니다. 1부에서는 고객의 관심과 시장 적합성을 테스트하기 위해 최소 기능 제품(MVP)을 구축한 방법을 살펴보겠습니다. 이 시리즈의 후반부에서는 Startup의 수명 주기를 거치면서 완전하고 확장 가능하며 안전하고 가용성이 높은 중복 솔루션을 제공하면서 설계와 의사 결정이 어떻게 변화하는지 살펴보겠습니다.

첫 MVP 제공

Startup이 처음 몇 개의 제품을 납품할 때는 일반적으로 단계적 접근 방식을 따릅니다. 자금, 시간, 자원, 팀 규모, 지식 및 경험에 따라 결정됩니다.

이 단계에서는 완벽함이 좋은 것에 방해가 되지 않도록 하고 단순하지만 기능적인 솔루션을 제공하는 것이 매우 중요합니다. 이를 위해서는 단방향 도어 및 양방향 도어 결정을 식별하고, 빠르게 실패하고 필요할 때 방향을 전환하고, 비용을 관리하고, 시장 출시 시간을 단축하는 방법을 알아야 합니다.

Example Startup에서 이 프로세스에 어떻게 접근하는지 살펴보겠습니다.

아이디어
Example Startup의 아이디어는 ‘판타지 주식 시장’을 만드는 것입니다. 그들은 판타지 스포츠 리그를 기준으로 삼고 주식 시장 투자라는 아이디어를 적용했습니다. 그들은 일 년 동안 네 번의 ‘토너먼트’를 개최하는 것을 구상하고 있습니다.

매 분기 초에 새로운 투자자 집단이 동일한 금액의 자금으로 시작합니다. 판타지 주식 시장에서는 이러한 투자자가 향후 3개월 동안 (실제 주식 시장의 기업 및 종목을 기반으로) 투자 선택을 할 수 있습니다. 분기 말에 참가자의 순위가 매겨지고 우승자가 발표됩니다.

준비
아이디어를 현실로 만들기 위해 두 창업자는 Startup을 자력으로 설립했습니다. 그들은 저축한 돈을 모으고 친구와 가족으로부터 돈을 빌렸습니다.

경험 많은 개발자인 한 창업자는 직장에서 3개월을 쉬었습니다. 이를 통해 그녀는 기술 솔루션에 집중할 수 있어 도움이 됩니다. 그러나 최초 배송 일정도 정의합니다.

이제 불과 3개월 만에 그녀와 재무 경력을 가진 공동 설립자는 MVP에 어떤 기능을 포함할지 결정하고 제품을 만들어야 합니다. 먼저 1) 사용 가능한 제품에 꼭 필요한 기능이 무엇인지, 2) 시장 적합성과 고객 관심을 측정할 수 있는 기능을 결정합니다.

그들은 다음을 결정합니다.

  • 투자자가 거래할 수 있는 실제 주식 시장 심볼/회사의 수입 프로세스
  • 일일 시장 가격 피드
  • 사용자를 위한 가입 메커니즘
  • 포트폴리오 관리 사용자 인터페이스(UI)
  • 종가 포트폴리오 계산을 위한 일일 프로세스
  • 순위를 계산하는 일일 프로세스

구축
범위를 정의한 후에는 판타지 주식 시장에 필요한 기술과 구성 요소에 대한 몇 가지 기술적 결정을 내려야 합니다. 그런 다음 MVP 출시를 위한 마일스톤이 포함된 구현 계획을 만들 것입니다.

프레임워크
Example Startup의 설립자 중 한 명은 개발자로서 사용자 인터페이스 구축을 위한 JavaScript 라이브러리인 React에 대한 경험이 있습니다. MVP 제공의 상당 부분이 UI 개발과 관련되어 있다는 점을 고려하면 AWS Amplify가 매우 적합해 보인다고 생각합니다. Amplify를 통해 팀은 재사용 가능한 구성 요소가 많이 포함된 React.js 애플리케이션을 빌드하고 호스팅하기 위한 기본 지원을 받습니다. Amplify는 백엔드에서도 다음과 같은 이유에서 도움이 될 수 있습니다. Amazon DynamoDB와 같은 다양한 데이터베이스를 관리할 수 있습니다. 처음에는 매우 유연한 옵션이며, AWS AppSync를 사용하여 프런트 엔드를 데이터 소스와 쉽게 연결하고 비즈니스 로직을 개발할 수 있습니다.

도메인
프레임워크가 정립되었으니 이제 도메인 이름을 얻을 차례입니다. Amazon Route 53는 Example Startup이 이미 사용 중이던 서비스 및 도메인 등록 프로세스와도 잘 통합되는 도메인 이름 시스템(DNS) 서비스를 구성할 수 있도록 도와줍니다.

실험 및 비용 관리
팀은 사용 사례에 맞는 AWS 서비스를 선택하기만 하면 초기 요구 사항 대부분을 충족할 수 있습니다. Example Startup은 광범위한 AWS 서비스를 통해 여러 옵션을 신속하게 실험하고 경험을 바탕으로 결정을 내릴 수 있습니다.

많은 AWS 서비스에 프리 티어가 제공되지만 Example Startup의 일부 실험은 지나치게 열성적일 수 있습니다. 첫 달 청구서가 도착했을 때 팀은 비용에 더 많은 관심을 기울여야 한다는 것을 깨닫게 됩니다. 다른 많은 경우와 마찬가지로 이를 위한 AWS 솔루션이 있습니다. 바로 무료 서비스인 AWS Budgets를 사용하기 시작합니다. 이를 통해 팀은 계획 및 비용 관리를 개선하고 기대에 부합하지 않을 수 있는 모든 사항을 편리하게 파악할 수 있는 알림을 정의할 수 있습니다.

데이터
한 달이 지난 지금, Example Startup에는 이미 많은 UI와 샘플 데이터를 사용하는 몇 가지 관련 기능이 있습니다. 다음으로, 실제 데이터로 힘든 작업을 수행하는 배치 프로세스가 필요합니다.

팀은 필요한 정보를 제공할 데이터 소스를 찾은 후 자동으로 데이터를 수집하려고 합니다. JavaScript를 프로그래밍 언어로 계속 선택하면서 운영 측면을 최대한 단순하게 만드는 솔루션으로 실행하려고 합니다.

이를 통해 AWS Lambda를 사용하게 됩니다. 팀은 서버 운영과 확장에 대해 걱정하고 싶지 않기 때문에 Schedule AWS Lambda functions using EventBridge 튜토리얼을 사용하여 서버리스 접근 방식을 취합니다.

이를 통해 초기 아키텍처 다이어그램에서 볼 수 있듯이 실행에 필요한 데이터 관련 서비스를 위한 설계가 마련되어 있습니다.

테스트
팀은 큰 발전을 이루고 있습니다. 그들의 아키텍처는 계속 성장하고 있으며, 마감 기한이 3개월이라는 점에 만족하고 있습니다.

하지만 솔루션을 테스트하는 사람들의 수가 늘어날수록 문제를 발견하게 됩니다. 팀원 중 한 명이 “활성 사용자는 몇 명이고 사용자당 평균 거래 수는 몇 개입니까?”라고 물었습니다. 하지만 그들은 정말로 의미 있는 답을 내놓지 못했습니다. DynamoDB 콘솔에서 직접 쿼리를 임시로 실행하고 다음 반복을 위한 ‘위시리스트’를 작성하여 ‘실행’하기로 합의했습니다.

출시
Example Startup이 마감일을 정하고 MVP를 출시했습니다. 머지 않아 팀은 엄청난 등록 목록을 보게 됩니다. 그들은 자신이 무언가를 하고 있다는 것을 알고 있지만 제품을 개선하고 비즈니스를 확장하려면 도움이 필요합니다.

친구의 친구가 AWS Activate를 언급합니다. AWS Activate는 Startup에 AWS Credit, AWS Support 플랜 크레딧, 아키텍처 지침을 비롯한 다양한 혜택을 제공하는 프로그램입니다.

그들은 다음 여정을 진행하는 데 필요한 도움을 받기 위해 AWS Activate에 신청합니다.

결론

몇 달 만에 Example Startup에서 많은 일이 일어났습니다. 많은 Startup이 첫 MVP를 선보이는 과정에서 Example Startup이 극복한 것과 비슷한 과제에 직면하게 됩니다.

Evolutionary Architecture 시리즈의 다음 블로그에서 이들의 여정을 이어갈 예정입니다. 회사가 성장하고 확장함에 따라 고객의 요구 사항, 과제 및 목표가 어떻게 변하는지 알아보세요.

Zoran Nakev

Zoran Nakev

Zoran은 AWS의 선임 솔루션스 아키텍트로, 주로 핀테크 Startups와 협력하며 이들이 AWS 플랫폼에서 솔루션을 구축할 수 있도록 지원합니다. 그는 자신의 경험과 기술에 대한 열정을 바탕으로 Startups가 목표를 달성할 수 있도록 지원합니다. 가족과 함께 뉴저지에 살고 있는 그는 여가 시간에 영화를 보고, 음악을 듣고, 가족 반려견과 함께 오랫동안 산책을 하는 것을 즐깁니다.

Aayzed Tanweer

Aayzed Tanweer

Aayized는 AWS의 솔루션스 아키텍트로, 핀테크 분야의 스타트업 고객과 협력하며 특히 분석 서비스에 중점을 두고 있습니다. 토론토 출신인 그는 최근 뉴욕시로 이주하여 도시 곳곳에서 식사를 하고 이곳의 독특한 구석구석을 탐험하는 것을 즐깁니다.

Justin Plock

Justin Plock

Justin은 AWS의 수석 솔루션스 아키텍트로 핀테크 Startups에 주력하고 있습니다. 그는 핀테크 창립자들과 정기적으로 만나 비즈니스가 안전하고 업계 규정을 준수하는지 확인하는 데 도움을 주고 있습니다. AWS에 입사하기 전에는 Fortune 선정 200대 보험사에서 클라우드 지원 담당 이사로, 사이버 보안 회사에서 엔지니어링 이사로 재직했습니다. 그는 Startups가 AWS에서 안전하고 효율적으로 발전할 수 있도록 돕는 데 열정을 쏟고 있습니다. 그는 아내와 두 딸과 함께 코네티컷에 살고 있습니다.

이 콘텐츠는 어떠셨나요?