기술 스택 = 개발 언어 + 도구
안녕하세요, 나쵸코드입니다.
지난 글에서는 이벤터스가 주최한 ‘정부지원사업 합격자와 시드 투자 스타트업을 위한 비즈니스 성장 A-Z’ 세미나에서 발표한 내용 중,
<웹 vs 앱? 외주 vs 직접? : 초기 스타트업 개발 전략(1)>을 통해 우리 제품을 웹과 앱 중 무엇으로 먼저 만들지, 그리고 외주 개발과 자체 개발 중 어떤 방식이 우리 제품에 적합한지에 대해 이야기했습니다.
이번 글에서는 그다음 단계로, 실제 개발팀을 꾸려 제품 개발을 진행하려는 스타트업 대표님과 PM이 꼭 알아두셔야 할 핵심 개념들을 정리해보려합니다.
1️⃣ 개발팀을 구성하려면, ‘기술 스택’부터 이해하자.
스타트업에서 개발팀을 꾸리기 전에, 우리 서비스가 어떤 기술 스택(Tech Stack)으로 만들어질지 먼저 고민해보는 게 좋습니다.
이건 단순히 개발자에게 맡길 문제가 아닙니다. 대표나 PM이 기술 스택의 기본 개념을 이해하고 있어야 개발자와 훨씬 원활하게 소통할 수 있고, 서비스 방향이나 유지보수 계획은 세우는 데에도 큰 도움이 됩니다.
아래 그림만 잘 이해하셔도 앞으로 개발자와 이야기할 때 훨씬 수월해질 거에요.
개발 구조 이해하기
먼저 개발은 크게 두 영역으로 나눌 수 있습니다.
1. 백엔드(Backend)
데이터를 저장하거나 계산하는 등 사용자 눈에는 보이지 않지만, 서비스의 핵심 로직을 담당하는 영역입니다.
예를 들어 회원가입, 결제 처리, 알림 전송, 통계 계산 등이 모두 여기에 해당합니다.
2. 프론트엔드(Frontend)
사용자에게 실제로 보이는 화면을 만드는 부분입니다.
즉 사용자와의 접점, ‘서비스의 얼굴’이라고 할 수 있습니다.
그리고 서비스를 어떤 플랫폼에서 제공할지에 따라 프론트엔드가 다시 나뉩니다.
2-1. 웹 프론트엔드
브라우저에서 보이는 웹 화면을 만듭니다.
2-2 앱 프론트엔드
안드로이드와 iOS 앱 화면을 만듭니다.
웹만 할 것인지, 앱까지 함께 할 것인지에 따라 필요한 개발 인원과 비용, 일정은 크게 달라질 수 있습니다.
기술 스택은 개발 언어 + 도구의 조합
💡
기술 스택은 개발 언어와 도구(프레임워크, 라이브러리 등)의 조합을 말합니다. 이때 백엔드와 프론트엔드에서는 서비스의 특성과 목적에 따라 다양한 언어와 도구를 조합할 수 있죠.
예시)
백엔드: Python(언어) + Django(도구)
프론트엔드 : JavaScript(언어) + React(도구)
요리와 비유해서 이해해봅시다.
개발 언어는 한식·중식·일식처럼 큰 의미에서 요리 분야입니다. 도구(프레임워크)는 한식안에 비빔밥·갈비탕·불고기 같은 개별 메뉴에 해당하죠.
따라서 같은 언어를 쓴다고 해서 무조건 협업이 쉬운 것은 아닙니다. 같은 한식이라도 비빔밥을 만드는 사람과 갈비탕을 만드는 사람의 방식이 꽤 다르듯, 도구(프레임워크)까지 다르면 손발을 맞추는 데 시간이 걸리기도 하죠.
언어까지 완전히 다르다면, 한식 요리사가 갑자기 중식을 만드는 것과 같이 훨씬 더 어렵습니다. 개발자가 기존에 사용하는 개발 언어를 유지하면서 도구(프레임워크)를 바꾸는 것은 비교적 수월하지만, 완전히 새로운 언어로 넘어가는 것은 진입 장벽이 훨씬 더 높습니다.
그래서 왜 중요할까요?
대표님과 PM이 이 구조를 이해하고 있어야 우리 서비스에 가장 적합한 기술 스택을 선택할 수 있고, 그 기술에 익숙한 개발자를 채용하거나, 협업 파트너를 찾을 때도 시행착오를 줄일 수 있습니다.
기술 스택은 단순히 ‘코드를 어떻게 짤까’의 문제가 아닙니다. 서비스 개선 속도, 유지보수, 개발 비용까지 좌우하는 중요한 사업 전략입니다.
2️⃣ 서비스를 개발할 때 필요한 최소한의 개발자 숫자는?
개발팀의 가장 기본적인 구성은 백엔드 개발자 1명 + 프론트엔드 개발자 1명입니다. 하지만 우리 서비스에 필요한 프론트엔드가 웹 인지, 앱인지에 따라 필요한 인원은 크게 달라집니다.
예를 들어,
1. 웹 서비스만 운영한다면?
백엔드 (1) + 웹 프론트엔드 (1) = 총 2명
2. 웹과 앱을 동시에 운영해야 한다면?
백엔드 (1) + 웹 프론트 (1) + 앱 프론트 (1) = 총 3명
3. iOS와 Android 앱을 각각 개발한다면?
iOS 개발자 (1) + Android 개발자 (1) + 백엔드 (1) + 웹 프론트 (1) =
총 4명 이상이 필요
스타트업처럼 리소스가 제한된 환경에서는 이 개발 인원 차이는 비용과 일정에 엄청난 영향을 미치게 됩니다.
그래서 앱을 도입하는 순간 개발 리소스가 3배, 4배 이상으로 늘어나 초기에는 웹 중심으로 시작하는 것이 가장 효율적이라는 이야기가 많이 나옵니다.
3️⃣ 풀스택 개발자를 뽑으면 안되나요?
한 명의 개발자가 백엔드, 프론트엔드, 앱까지 모두 다루는 경우를 풀스택 개발자라고 합니다.
하지만 이렇게 다양한 영역을 혼자서 감당하려면 많은 경험과 학습이 필요하기 때문에 스타트업 입장에서 이러한 인재를 찾기는 쉽지 않습니다.
현실적으로 많은 스타트업이 웹 개발자 1~2명으로 시작하며, 앱까지 커버하기엔 인력도 시간도 부족한 경우가 많습니다.
4️⃣ 그럼에도 웹과 앱 서비스 모두 하고싶다면?
나쵸코드는 이러한 상황에서 개발 리소스를 절약할 수 있는 솔루션입니다.
웹 개발자가 기존에 쓰던 기술스택만으로도 앱을 직접 만들고 운영할 수 있도록 도와주는 도구이기 때문입니다. 따로 앱 개발자를 고용하거나 외주를 맡기지 않아도,나쵸코드는 기존 웹 개발자가 웹과 앱을 동시에 개발하고 운영할 수 있는 구조를 제공합니다.
웹으로 초기 고객을 유입시키면서도, 앱의 리텐션을 포기하고 싶지 않은 스타트업, 최소한의 개발팀으로 최대한의 효율을 원하는 팀이라면, 나쵸코드 강력한 선택지가 될 수 있습니다.
👀 이번 글에서는 기술 스택이란 무엇인지, 우리 회사에 개발팀을 어떻게 구성해야 할지까지 살펴봤습니다. 이 내용이 초기 스타트업 대표님과 PM에게 작은 참고가 되길 바랍니다.
앱 개발이나 운영에 대한 고민이 있다면 언제든 편하게 문의 주세요. ☕️ 나쵸코드 팀은 언제든 커피챗을 환영합니다. 함께 이야기를 나누며 더 좋은 방향을 찾아드릴 수 있습니다.