PM Development Instinct

Introduction

제품 관리자의 직감을 기르고 체계적인 사고 능력을 개발하는 과정입니다. 데이터 기반 의사결정부터 사용자 중심 제품 설계까지, 현대 PM이 갖춰야 할 핵심 역량을 단계별로 학습합니다.

🎯 과정의 배경과 철학

바이브 코딩은 2025년형 AI-주도 프로그래밍 패러다임으로, "코드는 AI에게 맡기고, 사람은 느낌(vibe)으로 제품의 방향성과 맥락을 지휘한다"는 철학에 기반하고 있습니다.

이 개념은 2025년 2월 OpenAI의 전 디렉터이자 Tesla AI 책임자였던 안드레이 카파시(Andrej Karpathy)가 X(구 트위터)와 자신의 블로그에서 처음 '바이브 코딩(Vibe Coding)'이란 표현을 사용하며 공식화했습니다. 이후 이 개념은 실리콘밸리의 대기업, 스타트업, 그리고 전 세계 개발 커뮤니티로 빠르게 확산되었습니다.

"제가 '바이브 코딩'이라고 부르는 새로운 코딩 방식이 있어요. 이건 완전히 느낌에 몸을 맡기고, 지수적으로 발전하는 AI를 받아들이고, 코드가 실제로 존재한다는 사실조차 잊어버리는 거죠. 이게 가능한 이유는 LLM(예: Cursor Composer와 Sonnet)이 너무 뛰어워졌기 때문이에요. 저는 슈퍼위스퍼로 Composer에게 말만 하니까 키보드도 거의 안 건드려요. '사이드바 패딩을 반으로 줄여줘'같은 사소한 것도 그냥 말하죠. 귀찮아서 직접 찾기 싫거든요. 항상 'Accept All'만 누르고, 변경사항도 더 이상 안 읽어요. 에러 메시지가 뜨면 그냥 주석 없이 복사해서 붙여넣기만 하는데, 보통 그러면 해결돼요. 코드가 제가 이해할 수 있는 범위를 넘어서 자라나지만, 자세히 읽으려면 시간이 필요해요. 때론 LLM이 버그를 해결 못 할 때도 있어서 그냥 우회하거나 랜덤하게 바꿔달라고 해서 문제가 사라질 때까지 기다리곤 해요. 주말 프로젝트 정도는 크게 문제 없지만, 꽤 재미있는 경험이에요. 프로젝트나 웹앱을 만들고 있지만, 실제로 코딩을 하는 건 아니에요 - 그냥 뭔가 보고, 말하고, 실행하고, 복사-붙여넣기를 하는데, 대부분 잘 작동합니다."

"AI 코딩 도구의 발전으로 프로그래밍의 본질이 변화하고 있습니다. 개발자는 코드 작성자에서 제품과 사용자 경험의 설계자로 진화하고 있으며, 이 과정에서 '바이브(vibe)'—직관적 감각과 맥락 이해—가 가장 중요한 경쟁력이 됩니다."
— 안드레이 카파시, 2025년 2월

바이브 코딩 접근법은 특히 비엔지니어들에게 큰 호응을 얻었는데, 기술적 장벽을 낮추고 창의성과 비전을 중심으로 디지털 제품을 만들 수 있게 해주기 때문입니다. 이 과정은 이러한 새로운 패러다임에 맞춰 설계되었으며, AI 도구를 활용해 비엔지니어들도 자신의 아이디어를 구현할 수 있는 역량을 키우는 것을 목표로 합니다.

📈 앱을 만들기 위해 알아야 했던 것들의 진화 과정

소프트웨어 개발 분야는 빠르게 진화하고 있으며, 필요한 지식의 범위와 깊이도 시간에 따라 변화하고 있습니다. 아래는 서로 다른 수준의 엔지니어링 배경에 따라 요구되는 지식의 차이를 비교한 것입니다.

1. CS를 전공한 풀스택 엔지니어가 알아야 했던 것들

  • 컴퓨터 과학 기초: 자료구조, 알고리즘, 시간/공간 복잡도, 컴퓨터 아키텍처
  • 프로그래밍 언어: 복수의 프로그래밍 언어(Java, C++, Python 등) 문법과 패러다임 이해
  • 운영체제: 메모리 관리, 프로세스, 스레드, 동시성 이해
  • 네트워크: OSI 모델, TCP/IP, HTTP/HTTPS, API 디자인
  • 데이터베이스: 관계형/비관계형 DB, SQL, 정규화, 트랜잭션
  • 백엔드 개발: 서버 아키텍처, RESTful API, 마이크로서비스, 확장성
  • 프론트엔드 개발: HTML, CSS, JavaScript, 프레임워크(React, Angular, Vue)
  • 소프트웨어 설계: OOP, 디자인 패턴, 아키텍처 패턴
  • DevOps: 배포 파이프라인, 컨테이너화, 클라우드 서비스
  • 보안: 인증, 권한 부여, 암호화, 보안 취약점
  • 소프트웨어 개발 방법론: Agile, Scrum, 테스트 주도 개발

2. 코딩 부트캠프 출신 엔지니어가 웹앱을 만들기 위해 알아야 했던 것들

  • 웹 개발 기초: HTML, CSS, JavaScript 핵심 문법과 적용
  • 프론트엔드 프레임워크: React, Vue, Angular 중 하나 이상 숙달
  • 상태 관리: Redux, Context API, Vuex 등의 상태 관리 라이브러리
  • 반응형 디자인: 모바일 대응, 미디어 쿼리, CSS 프레임워크(Bootstrap, Tailwind)
  • 백엔드 언어: Node.js, Python, Ruby 등 하나 이상의 백엔드 언어
  • 웹 프레임워크: Express, Django, Ruby on Rails 등
  • 데이터베이스 기초: SQL, MongoDB 등 데이터 저장과 쿼리
  • API 개발: RESTful API 설계 및 구현
  • 인증/보안: JWT, OAuth, 기본적인 보안 취약점 대응
  • 버전 관리: Git, GitHub 활용
  • 배포: Heroku, Netlify, AWS 등 기본적인 배포 방법
  • 기본적인 테스트: 단위 테스트, 통합 테스트 기초

3. 바이브 코딩을 하기 위해서 알아야 하는 것들

  • 디지털 기본 소양: 웹, 앱, 클라우드의 기본 개념 이해
  • 프롬프트 엔지니어링: AI에게 효과적으로 지시하는 방법
  • AI 도구 활용: GitHub Copilot, Claude 등 AI 도구 기본 사용법
  • HTML/CSS/JS 기초 인식: 코드 언어의 기본적인 역할 이해
  • 개발 환경 기초: VSCode 같은 코드 에디터 기본 사용법
  • 웹 서비스 개념: 클라이언트/서버, API, 데이터베이스의 기본 개념
  • 문제 분해 능력: 큰 문제를 작은 단계로 나누는 사고방식
  • 직관적 테스트: "이게 맞는 것 같은가?"라는 직관적 판단
  • 자연어 요구사항 작성: 원하는 기능을 명확하게 설명하는 능력
  • 맥락 인식: 프로젝트의 전체적인 목적과 맥락 유지 능력
  • 피드백 활용: AI 생성 결과를 바탕으로 반복 개선하는 접근법

상세 지식/기술 요구사항 비교

아래 표는 세부 영역별로 각 개발자 유형에게 필요한 지식 수준을 비교합니다.

필수
기본 수준 필요
불필요
지식/기술 영역CS 전공부트캠프바이브 코딩
새로운 역량
프롬프트 엔지니어링
AI 도구 활용
의도 기반 설명
문제 명확화 능력
웹 개발
웹 기술 기본 개념
HTML 기본 구조
CSS 기본 속성
JavaScript 기본 문법
React/Next.js 기초
HTML/CSS 심화
JavaScript/TypeScript
개발 도구 & 환경
버전 관리(Git)
GitHub/GitLab 활용
개발 환경 설정
CI/CD 파이프라인
컨테이너화(Docker)
백엔드 개발
서버리스 아키텍처
Firebase 기본 사용법
백엔드 API 기본 개념
서버 아키텍처
API 설계
데이터베이스 설계
인증/권한부여
클라우드 & 배포
클라우드 서비스 기본 개념
Firebase 배포
Netlify/Vercel 배포
도메인/DNS 설정
AWS/GCP/Azure 기본
컴퓨터 과학 기초
자료구조와 알고리즘
계산 복잡도 이론
컴퓨터 아키텍처
운영체제 원리
프로그래밍 언어
다중 언어 숙달
언어 패러다임 이해
컴파일러/인터프리터 원리
문법 규칙 숙지
데이터 관리
SQL 심화
NoSQL 데이터베이스
데이터 모델링
쿼리 최적화
소프트웨어 설계
객체지향 설계
디자인 패턴
마이크로서비스
아키텍처 패턴
테스트 & 품질관리
단위/통합 테스트
TDD
코드 품질 관리
디버깅 기술
보안
웹 보안(OWASP)
인증/암호화
보안 취약점 대응

바이브 코딩은 프로그래밍의 기술적 복잡성 대신, 사용자의 의도와 문제 해결에 초점을 맞춥니다. 이는 코딩을 보다 접근하기 쉽게 만들어, 비엔지니어들도 자신의 아이디어를 구현할 수 있게 합니다. 무엇보다 바이브 코딩에서는 모든 세부 지식을 미리 알지 않아도 프로젝트를 진행하면서 필요한 개념을 AI 도구로부터 배우고 적용할 수 있습니다.

위 표에서 볼 수 있듯이, 바이브 코딩은 전통적인 개발 방식에 비해 필요한 기술적 지식의 양을 획기적으로 줄였습니다. CS 전공자와 부트캠프 출신이 필수적으로 알아야 하는 대부분의 영역에서 바이브 코딩은 지식 요구사항을 최소화했습니다. 대신 프롬프트 엔지니어링, AI 도구 활용, 명확한 의도 표현 같은 새로운 역량이 중요해졌습니다. 이러한 지식 요구사항의 변화는 코딩의 진입 장벽을 크게 낮추어 더 많은 사람들이 소프트웨어 개발에 참여할 수 있게 합니다.

🎓 과정 개요

🎯 학습 목표

  • • 사용자 중심 제품 사고력 개발
  • • 데이터 기반 의사결정 능력 향상
  • • 비즈니스 임팩트 측정 및 최적화
  • • 팀 협업 및 커뮤니케이션 역량 강화

👥 이런 분에게 추천

  • • PM으로 전환을 고려하는 분
  • • 제품 관리 경험이 있지만 체계를 갖추고 싶은 분
  • • 창업을 준비하는 분
  • • 제품 기획자로 성장하고 싶은 분

✨ 과정의 특징

  • • 실무 중심의 케이스 스터디
  • • 체계적인 프레임워크 학습
  • • 단계별 역량 개발 로드맵
  • • 실제 제품 개발 경험 반영

💻 시작하기 전에: Cursor 설치

이 과정에서는 AI 기반 코드 에디터인 Cursor를 사용합니다. Cursor는 ChatGPT와 같은 AI가 내장된 VS Code 기반 에디터로, 코딩 초보자도 쉽게 프로그래밍할 수 있게 도와줍니다.

🖥️ Windows 사용자

  1. cursor.sh 접속
  2. "Download for Windows" 클릭
  3. 다운로드된 파일 실행
  4. 설치 완료 후 Cursor 실행

🍎 Mac 사용자

  1. cursor.sh 접속
  2. "Download for Mac" 클릭
  3. 다운로드된 .dmg 파일 실행
  4. Cursor를 Applications로 드래그
  5. Applications에서 Cursor 실행

⚡ Cursor의 장점

🤖 AI 자동완성

코드를 자동으로 완성해주어 타이핑 시간을 대폭 단축

💬 AI 채팅

궁금한 것을 바로 질문하고 답변을 받을 수 있음

🔧 코드 수정

"이 버그를 고쳐줘"라고 하면 AI가 직접 수정

📖 코드 설명

복잡한 코드를 선택하면 쉽게 설명해줌

공식 웹사이트에서 다운로드

🌐 cursor.sh 바로가기

🚀 개발 환경 설정: Node.js & npm 설치

웹 개발을 위해서는 Node.js npm이 필요합니다. Node.js는 JavaScript 실행 환경이고, npm은 패키지 관리 도구입니다. 완전히 처음 설치하는 분들을 위한 단계별 가이드입니다.

🖥️ Windows 설치 방법

1단계: Node.js 다운로드

  1. nodejs.org 접속
  2. 왼쪽 "LTS" 버전 다운로드 (추천)
  3. 다운로드된 .msi 파일 실행

2단계: 설치 진행

  • "Next" 버튼 계속 클릭
  • "Add to PATH" 옵션 체크 (중요!)
  • "Install" 클릭하여 설치 완료

3단계: 설치 확인

  • Win + R → "cmd" 입력 → Enter
  • node --version
  • npm --version
  • 버전 정보가 나오면 설치 완료!

🍎 Mac 설치 방법

방법 1: 공식 사이트 (추천)

  1. nodejs.org 접속
  2. 왼쪽 "LTS" 버전 다운로드
  3. 다운로드된 .pkg 파일 실행
  4. 설치 마법사 따라 진행

방법 2: Homebrew 사용

  1. 터미널 열기 (Cmd + Space → "터미널")
  2. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  3. 💡 비밀번호 입력 시 커서가 안 움직이는 것처럼 보이지만 정상 입력됩니다!
  4. brew install node

설치 확인

  • 터미널에서 다음 명령어 실행:
  • node --version
  • npm --version
  • 버전 정보가 나오면 설치 완료!

⚠️ 설치 시 주의사항

  • 관리자 권한이 필요할 수 있습니다 (Windows)
  • 보안 경고가 나오면 "허용" 또는 "실행" 선택
  • Mac 터미널에서 비밀번호 입력 시 커서가 움직이지 않아도 정상입니다
  • 설치 후 컴퓨터 재시작을 권장합니다
  • 터미널/명령 프롬프트를 새로 열어야 명령어가 인식됩니다

🎉 설치가 완료되셨나요?

이제 Next.js 프로젝트를 만들고 개발을 시작할 준비가 되었습니다! Lesson 01에서 첫 번째 웹 애플리케이션을 만들어보세요.

지금 시작해보세요

체계적인 PM 역량 개발의 첫 걸음을 내딛어보세요