
외주로 서비스를 개발할 때 AWS (Amazon Web Services), Firebase (DB: 데이터 저장소) 같은 클라우드 서비스의 세팅은 개발 환경 구축의 첫 단계입니다. 클라우드 서비스는 물리적인 서버를 구매하거나 설치할 필요 없이 온라인으로 필요한 만큼 서버와 데이터베이스를 사용할 수 있는 방식입니다. 외주 개발 시 이런 클라우드 환경을 누가 준비하고 설정하는지, 계정은 누구 명의로 만드는지, 비용은 어떻게 관리하는지 이해하면 프로젝트를 더 안정적으로 진행할 수 있습니다.
클라우드 서비스의 특성
AWS, Firebase는 서비스이고 사용자는 서비스 환경과 과금의 규모에 맞추어 환경 세팅을 해야 합니다. 클라우드 서비스는 전통적인 서버와 소프트웨어 서비스와 달리 클릭만으로 이용할 준비를 마치게 됩니다.
과거에는 서버를 운영하려면 물리적인 서버 장비를 구매하고, IDC 센터에 입주시키고, 운영체제와 소프트웨어를 설치하는 복잡한 과정이 필요했습니다. 하지만 클라우드 서비스는 웹사이트에서 몇 번의 클릭만으로 서버를 생성하고, 데이터베이스를 준비하고, 스토리지를 확보할 수 있습니다.
클라우드 서비스로는 AWS 외 Google Cloud Platform(GCP), Microsoft Azure, Firebase 외 Supabase, AWS Amplify, Appwrite 등이 있습니다. 가장 많이 사용하고 유리한 클라우드 서비스를 외주사의 설명을 듣고 선택하면 됩니다.
모든 결정에는 외주사가 그것을 선택한 설명을 듣고 이해해야 합니다. 가능하면 선택의 이유를 문서로 받는 것이 좋습니다. 들은 것 중에 잘 알지 못하는 것, 익숙하지 않은 것은 잊어버리게 되고 나중에 개발자를 채용할 때에도 전달하기 좋습니다.
개발자의 기본 역량
개발자가 작업을 위해 가장 먼저 시작하는 것이 서버와 소프트웨어, DB의 준비이므로 어렵지 않게 설정할 수 있습니다. 클라우드 환경 설정은 현대 개발자에게는 기본적인 역량입니다.
AWS EC2 인스턴스를 생성하거나, Firebase 프로젝트를 만들거나, 데이터베이스를 설정하는 것은 개발자라면 누구나 할 수 있는 작업입니다.
외주사의 세팅 역할
외주 개발 프로젝트에서는 일반적으로 외주사가 클라우드 환경을 세팅합니다. 개발에 필요한 서버를 준비하고, 데이터베이스를 구축하고, 필요한 서비스를 연결하는 것은 개발 작업의 일부이기 때문입니다.
외주사는 프로젝트에 적합한 클라우드 서비스를 선택하고, 개발 환경과 운영 환경을 구분하여 설정하며, 보안 설정을 하고, 백업을 구성합니다. 이런 작업은 외주 비용에 포함되어 있거나, 클라우드 사용료는 별도로 청구될 수 있습니다.
계정 소유권의 중요성
클라우드 서비스 계정은 반드시 발주자 명의로 만들어야 합니다. 외주사가 자신의 계정으로 클라우드 환경을 구축하고 이전해 주지 않으면 나중에 문제가 발생할 수 있습니다.
외주사의 계정으로 서비스가 운영되면 외주사가 계정을 차단하거나, 비용 결제를 중단하거나, 계정을 삭제하면 서비스가 즉시 중단됩니다. 또한 클라우드 사용 내역과 비용을 발주자가 직접 확인할 수 없어 불투명한 상황이 됩니다.
올바른 계정 설정 방법
프로젝트 시작 시 발주자의 정보를 받아 외주사가 AWS나 Firebase 계정을 만들고, 외주사에게는 필요한 권한만 부여하는 방식이 가장 안전합니다. 외주사는 개발에 필요한 권한만 받고, 결제 정보나 계정 삭제 같은 민감한 권한은 처음부터 발주자의 것으로 합니다.
이렇게 하면 모든 클라우드 리소스가 처음부터 발주자 소유이고, 비용도 발주자의 카드로 직접 결제되며, 외주사와의 계약이 종료되어도 서비스는 영향을 받지 않습니다.
초기 세팅의 범위
초기 클라우드 세팅에는 여러 작업이 포함됩니다. 서버 인스턴스 생성, 데이터베이스 설정, 스토리지 구성, 네트워크 및 보안 그룹 설정, SSL 인증서 설치, 도메인 연결, 백업 정책 설정, 모니터링 도구 구성 등입니다.
이런 초기 세팅은 외주사가 담당하지만, 발주자도 어떤 서비스가 사용되는지, 어떤 설정이 되어있는지 알아두는 것이 좋습니다.
서비스 규모에 따른 최적화
서비스 규모가 커지면서 최적화를 위한 세밀한 세팅과 비용 최적화를 위한 설계가 필요하기도 합니다. 초기에는 간단한 설정으로 시작하지만, 사용자가 늘어나고 데이터가 쌓이면 성능과 비용 측면에서 개선이 필요합니다.
예를 들어 트래픽이 많아지면 로드 밸런서를 추가하거나, 데이터베이스를 읽기 전용 복제본으로 분산하거나, CDN을 적용하여 속도를 개선하거나, 사용하지 않는 리소스를 정리하여 비용을 절감할 수 있습니다.
비용 관리와 모니터링
클라우드 서비스는 사용한 만큼 비용을 지불하는 구조이므로, 비용 관리가 중요합니다. 발주자 계정으로 설정하면 AWS Cost Explorer나 Firebase 사용량 대시보드를 통해 실시간으로 비용을 모니터링할 수 있습니다.
예상보다 비용이 많이 나오는 경우 어떤 서비스가 비용을 발생시키는지 확인하고, 불필요한 리소스를 정리하거나, 더 저렴한 옵션으로 변경할 수 있습니다. 비용 알림을 설정하여 일정 금액을 초과하면 이메일로 통보받도록 하는 것도 좋습니다.
보안 설정의 중요성
클라우드 환경 설정 시 보안은 매우 중요합니다. 외주사가 세팅할 때 보안 그룹을 너무 느슨하게 열어두거나, 데이터베이스를 외부에 노출시키거나, 관리자 비밀번호를 약하게 설정하면 해킹 위험이 있습니다.
외주사에게 보안 설정 내역을 문서로 받고, 필요하면 서비스 오픈 전 보안 전문가에게 검토를 의뢰하세요. AWS의 보안 체크리스트나 Firebase의 보안 규칙을 참고하여 기본적인 보안이 제대로 되어있는지 확인할 수 있습니다.
백업과 복구 계획
클라우드 환경 설정 시 백업 정책도 함께 구성되어야 합니다. 데이터베이스 자동 백업, 서버 스냅샷, 중요 파일의 정기 백업 등이 설정되어 있어야 문제 발생 시 빠르게 복구할 수 있습니다.
백업이 실제로 작동하는지, 백업 파일로 복구가 가능한지 테스트해보는 것도 중요합니다. 백업은 되어있지만 복구 방법을 모르거나, 백업 파일이 손상되어 사용할 수 없는 경우도 있기 때문입니다.
서비스 인수 시 확인사항
프로젝트 완료 시 클라우드 환경도 함께 인수받아야 합니다. 어떤 클라우드 서비스가 사용되고 있는지, 각 서비스의 용도는 무엇인지, 월 예상 비용은 얼마인지, 보안 설정은 어떻게 되어있는지, 백업은 어떻게 관리되는지 문서로 받으세요.
또한 외주사가 만든 IAM 계정이나 액세스 키는 삭제하거나 비활성화하여 외주사가 더 이상 클라우드 환경에 접근할 수 없도록 해야 합니다. 보안 그룹, 방화벽 규칙 등도 검토하여 불필요하게 열려있는 포트가 없는지 확인하세요.
'창업자, 스타트업의 외주 제작 질문 100 > 8. 개발 및 기술적 이해' 카테고리의 다른 글
| 외주 개발 시 서버는 누가 관리하나요? (0) | 2025.11.15 |
|---|---|
| 외주 개발 후 소스코드를 받는 게 가능한가요? (0) | 2025.11.15 |
| 앱스토어 등록은 누가 하나요? (0) | 2025.11.15 |
| 데이터베이스 구조도 받아야 하나요? (0) | 2025.11.15 |
| 관리자 페이지(admin)은 기본 포함인가요? (0) | 2025.11.15 |