## 💼 1. **PM (Project Manager) – 프로젝트 관리자**
### ▶️ 역할:
* 프로젝트 전반의 **관리 책임자**로, 일정, 예산, 자원, 품질, 범위 등을 조율
* 고객과의 커뮤니케이션 창구 역할
* 프로젝트의 리스크를 식별하고 관리
* 팀원 간의 업무 조율 및 일정 계획
### ▶️ 주요 업무:
* 프로젝트 계획 수립 (WBS, 일정표, 자원계획)
* 고객 요구사항 수집 및 관리
* 프로젝트 예산 산정 및 통제
* 프로젝트 진행 현황 보고
* QA 및 테스트 결과 보고 관리
### ▶️ 요구 역량:
* 커뮤니케이션 능력, 리더십, 일정관리 능력
* 다양한 개발 방법론 (Waterfall, Agile 등)에 대한 이해
* 이슈 및 리스크 관리 능력
---
## 🧑💻 2. **PL (Project Leader) – 기술 리더/팀 리더**
### ▶️ 역할:
* 기술적인 관점에서 프로젝트를 리딩하는 사람
* 팀원들의 작업을 분배하고 기술 방향을 제시
* PM의 보조 역할을 하면서 개발자 간 기술 중재자 역할 수행
### ▶️ 주요 업무:
* 개발 일정에 따른 업무 분장 및 진척도 관리
* 기술 이슈 해결 및 기술 스택 선정
* 코드 리뷰 및 품질 관리
* 개발 표준 정의 및 문서화
### ▶️ 요구 역량:
* 풍부한 개발 경험
* 아키텍처 설계 능력
* 팀 관리 및 기술 멘토링 능력
---
## 🧠 3. **AA (Application Architect) – 응용 아키텍트**
### ▶️ 역할:
* 시스템의 전반적인 **기능 설계와 구조 설계**를 담당
* 비즈니스 요구사항을 토대로 시스템의 모듈화와 구조를 정의
### ▶️ 주요 업무:
* 어플리케이션 구조 설계 (MVC, MSA 등)
* 공통 모듈 및 재사용 가능한 컴포넌트 설계
* 성능, 보안, 유지보수성을 고려한 설계
* PL 및 개발자들과 협업하여 구현 지시
### ▶️ 요구 역량:
* 설계 패턴, 소프트웨어 아키텍처에 대한 깊은 이해
* 다양한 플랫폼/프레임워크 경험
* 대규모 시스템 구축 경험
---
## 🧮 4. **DA (Data Architect) – 데이터 아키텍트**
### ▶️ 역할:
* 시스템에서 사용하는 **데이터 구조를 설계**하는 전문가
* 데이터베이스의 논리적, 물리적 모델을 정의
### ▶️ 주요 업무:
* ERD 작성 (Entity Relationship Diagram)
* 데이터 표준 정의 및 메타데이터 관리
* 성능을 고려한 테이블 구조 및 인덱스 설계
* 데이터 보안 및 무결성 확보
### ▶️ 요구 역량:
* RDBMS, NoSQL 등 다양한 DBMS에 대한 이해
* 데이터 모델링 툴 (ERwin, PowerDesigner 등) 사용 능력
* 데이터 흐름 및 ETL 설계 경험
---
## 그 외에도 존재하는 관련 포지션들
| 포지션 | 설명 |
| ---------------------------------------- | --------------------------- |
| **BA (Business Analyst)** | 고객의 비즈니스 요구사항을 정의하고 분석하는 역할 |
| **QA (Quality Assurance)** | 테스트 전략 수립 및 품질 보증 업무 담당 |
| **FE/BE (Frontend / Backend Developer)** | 사용자 인터페이스 / 서버 사이드 로직 개발자 |
| **UX/UI 디자이너** | 사용자 경험 및 인터페이스 설계 |
| **DevOps 엔지니어** | 개발-운영 환경 자동화 및 인프라 구축 |
| **Tester** | 실제 테스트 시나리오 작성 및 기능 확인 수행 |
---
## 📊 정리: 각 포지션의 관계도
```
고객 ────── BA ──────── PM ────── PL ───── 개발자들
│ │ │
AA DA QA
```
* **BA → PM/AA**: 비즈니스 요구를 기술요건으로 변환
* **PM ↔ PL**: 프로젝트 일정·품질 관리를 위한 협업
* **AA ↔ DA**: 구조와 데이터 설계를 함께 조율
* **PL ↔ 개발자**: 개발 방향, 코드 품질 지도
* **QA ↔ 전체**: 품질 확보를 위한 협업
---
## ✅ 마무리 요약
| 역할 | 주요 책임 |
| ------ | ----------------------- |
| **PM** | 프로젝트 전반 관리 (일정, 비용, 품질) |
| **PL** | 기술 리딩, 개발팀 관리 |
| **AA** | 애플리케이션 구조 설계 |
| **DA** | 데이터베이스 설계 및 데이터 구조 정의 |
각 포지션은 유기적으로 연결되어 있으며, **소프트웨어 프로젝트의 성공을 위해 상호 협력**해야 합니다. 프로젝트 규모가 클수록 포지션 간의 역할 분담이 더 명확해지며, 작은 프로젝트에서는 한 사람이 여러 역할을 수행하기도 합니다.
'게으른 개발자의 끄적거림' 카테고리의 다른 글
리덕스란? (Redux 완벽 정리) (1) | 2025.07.30 |
---|---|
FIDO 인증이란? (FIDO 완벽 정리) (2) | 2025.07.28 |
[React] 하단 메뉴바 생성하는 방법 (0) | 2025.07.15 |
[React] 네비게이션 메뉴 useState? useSelector? (0) | 2025.07.15 |
[리액트] React.js 컴포넌트란? (0) | 2025.07.05 |