"API 연동해야 하고, 백엔드는 Node.js로 하고, DB는 PostgreSQL 쓸게요."
개발자가 이렇게 말하면 뭔 소린지 모르겠죠? 괜찮아요. 오늘 이 글만 읽으면 개발자랑 대화할 수 있게 됩니다.
기초 용어
프론트엔드 (Frontend)
쉬운 설명: 사용자 눈에 보이는 부분
앱이나 웹사이트에서 버튼, 이미지, 텍스트 등 사용자가 직접 보고 만지는 모든 것이에요.
예시:
- 네이버 메인 화면의 검색창
- 쿠팡 앱의 상품 목록
- 인스타그램의 피드 화면
백엔드 (Backend)
쉬운 설명: 눈에 안 보이는 뒷단
데이터 저장, 로그인 처리, 결제 처리 등 사용자 눈에 보이지 않는 모든 처리를 담당해요.
예시:
- 로그인하면 내 정보를 찾아오는 것
- 주문하면 재고를 차감하는 것
- 결제하면 금액을 처리하는 것
서버 (Server)
쉬운 설명: 24시간 켜져 있는 컴퓨터
앱이나 웹사이트가 돌아가려면 데이터를 저장하고 처리할 컴퓨터가 필요해요. 그게 서버예요.
비유: 식당의 주방. 손님(사용자)은 안 보이지만, 주문(요청)을 처리하는 곳.
데이터베이스 (DB)
쉬운 설명: 데이터 창고
회원 정보, 상품 정보, 주문 내역 등 모든 데이터를 저장하는 곳이에요.
비유: 도서관의 책장. 데이터를 체계적으로 정리해서 보관.
API (Application Programming Interface)
쉬운 설명: 프로그램끼리 대화하는 방법
카카오 로그인, 네이버 지도, 결제 기능 등을 우리 앱에 가져다 쓸 수 있게 해주는 연결 통로예요.
비유: 식당 메뉴판. 메뉴판(API)을 보고 주문(요청)하면 음식(데이터)을 받음.
개발 방식 관련
네이티브 앱 (Native App)
각 운영체제(iOS, Android)에 맞게 따로따로 개발한 앱.
- iOS: Swift 언어
- Android: Kotlin 언어
장점: 성능 좋음, 기기 기능 완벽 지원 단점: 비용 2배 (따로 개발해야 하니까)
하이브리드 앱 / 크로스플랫폼
한 번 개발해서 iOS, Android 둘 다 쓸 수 있는 방식.
- React Native (Facebook)
- Flutter (Google)
장점: 비용 절감 (30~40%) 단점: 네이티브보다 성능 살짝 떨어짐
반응형 웹 (Responsive Web)
PC, 태블릿, 모바일 화면 크기에 맞게 자동 조절되는 웹사이트.
하나만 만들면 모든 기기에서 볼 수 있어요.
PWA (Progressive Web App)
웹인데 앱처럼 쓸 수 있는 기술.
- 홈 화면에 설치 가능
- 오프라인에서도 일부 작동
- 푸시 알림 가능
앱스토어 심사 없이 앱 경험을 제공할 수 있어요.
자주 듣는 기술 용어
프레임워크 (Framework)
쉬운 설명: 개발 뼈대
집 짓는 데 철골 구조물이 있으면 빠르듯, 개발에도 미리 만들어진 구조가 있어요.
예시:
- React, Vue (프론트엔드)
- Django, Spring (백엔드)
- Flutter, React Native (앱)
라이브러리 (Library)
쉬운 설명: 가져다 쓰는 코드 모음
남이 만들어 놓은 기능을 가져다 쓰는 거예요. 바퀴를 다시 발명할 필요 없죠.
SDK (Software Development Kit)
쉬운 설명: 개발 도구 세트
카카오 로그인, 결제 연동 등을 쉽게 할 수 있게 회사에서 제공하는 도구 모음이에요.
클라우드 (Cloud)
쉬운 설명: 남의 컴퓨터 빌려 쓰기
직접 서버 컴퓨터를 사지 않고, AWS, GCP 같은 회사의 서버를 빌려 쓰는 거예요.
장점: 초기 비용 낮음, 확장 쉬움
CI/CD
- CI (Continuous Integration): 코드를 자주 합치기
- CD (Continuous Deployment): 자동으로 배포하기
코드를 수정하면 자동으로 테스트하고 배포까지 해주는 시스템이에요.
프로젝트 관련 용어
MVP (Minimum Viable Product)
최소 기능 제품. 핵심 기능만 넣어서 빠르게 출시하는 버전.
완벽하게 만들고 출시하는 게 아니라, 일단 출시하고 피드백 받아 개선.
스프린트 (Sprint)
1~2주 단위의 개발 주기. 짧은 기간 동안 특정 기능을 완성.
"이번 스프린트에서 로그인 기능 끝내요" 이런 식으로 씀.
마일스톤 (Milestone)
프로젝트의 주요 단계/목표점.
예: 기획 완료 → 디자인 완료 → 개발 완료 → QA 완료 → 출시
QA (Quality Assurance)
품질 검증. 버그 찾고 테스트하는 과정.
개발 끝났다고 바로 출시하면 안 되고, QA를 거쳐야 해요.
배포 (Deploy)
개발한 걸 실제 서버에 올리는 것.
"배포했어요" = "이제 실제로 쓸 수 있어요"
롤백 (Rollback)
이전 버전으로 되돌리기.
업데이트했는데 문제 생기면 이전 버전으로 되돌려요.
데이터/보안 관련
SSL/HTTPS
데이터 암호화 통신.
주소창에 자물쇠 표시 있으면 SSL 적용된 거예요. 요즘은 필수.
토큰 (Token)
인증 정보를 담은 암호화된 문자열.
로그인하면 토큰을 받고, 그걸로 "나 로그인한 사람이야"를 증명해요.
해싱 (Hashing)
비밀번호를 알아볼 수 없게 변환하는 것.
DB에 비밀번호를 그대로 저장하면 안 되고, 해싱해서 저장해요.
백업 (Backup)
데이터 복사본 보관.
서버 터지면? 백업 있으면 복구 가능.
캐시 (Cache)
자주 쓰는 데이터를 임시 저장해두는 것.
매번 서버에 요청하지 않고 캐시에서 빠르게 가져옴.
비용/계약 관련
MM (Man-Month)
1명이 1개월 일하는 단위.
"이 프로젝트 3MM예요" = 1명이 3개월 또는 3명이 1개월
유지보수 (Maintenance)
출시 후 버그 수정, 업데이트, 서버 관리 등.
개발비와 별개로 비용이 들어요.
SLA (Service Level Agreement)
서비스 수준 협약.
"장애 발생 시 2시간 내 대응" 같은 약속을 계약서에 명시.
호스팅 (Hosting)
서버를 빌려 쓰는 것.
AWS, 네이버 클라우드 등에서 서버를 빌림. 월 비용 발생.
용어 빠른 참조표
| 용어 | 한 줄 설명 |
|---|---|
| 프론트엔드 | 눈에 보이는 부분 |
| 백엔드 | 눈에 안 보이는 처리 |
| 서버 | 24시간 돌아가는 컴퓨터 |
| DB | 데이터 저장소 |
| API | 프로그램 간 연결 통로 |
| 네이티브 | iOS/Android 따로 개발 |
| 크로스플랫폼 | 한 번에 iOS/Android |
| 반응형 | 화면 크기 자동 조절 |
| MVP | 최소 기능 제품 |
| QA | 품질 테스트 |
| 배포 | 실서버에 올리기 |
| MM | 1명×1개월 작업량 |
마치며
개발 용어가 어렵게 느껴지는 건 당연해요. 하지만 기본 용어만 알아도 개발자와 소통이 훨씬 수월해집니다.
이 글을 북마크해두고 개발자와 미팅할 때 참고하세요.
개발 용어나 외주 관련 궁금한 점이 있으시면 무료 상담을 통해 질문해주세요.
추가 용어: 자주 듣는 외래어
애자일 (Agile)
쉬운 설명: 짧은 주기로 빠르게 개발하는 방식
폭포수 방식: 기획 → 디자인 → 개발 → 테스트 (순차적)
애자일: (기획+디자인+개발+테스트) × 반복
스크럼 (Scrum)
쉬운 설명: 애자일의 구체적인 실천 방법
- 스프린트: 1~2주 개발 주기
- 데일리 스탠드업: 매일 짧은 회의
- 레트로: 스프린트 끝나고 회고
칸반 (Kanban)
쉬운 설명: 작업을 시각화하는 보드
[To Do] → [In Progress] → [Done]
데브옵스 (DevOps)
쉬운 설명: 개발(Dev)과 운영(Ops)을 합친 것
개발자가 배포까지 담당. 빠른 출시 가능.
개발자가 쓰는 은어
미팅에서 자주 듣는 말
| 은어 | 뜻 |
|---|---|
| "마이그레이션" | 데이터/시스템 이전 |
| "레거시" | 오래된 코드/시스템 |
| "리팩토링" | 기능 변경 없이 코드 정리 |
| "핫픽스" | 긴급 버그 수정 |
| "롤아웃" | 점진적 배포 |
| "카나리 배포" | 일부 사용자에게만 먼저 배포 |
| "블루-그린" | 무중단 배포 방식 |
상태 관련
| 은어 | 뜻 |
|---|---|
| "WIP" | Work In Progress, 작업 중 |
| "RFC" | Request For Comments, 의견 요청 |
| "POC" | Proof of Concept, 개념 증명 |
| "EOL" | End of Life, 지원 종료 |
외주 계약 시 알아야 할 용어
계약 관련
| 용어 | 설명 |
|---|---|
| MM (Man-Month) | 1명이 1달 일하는 단위 |
| T&M (Time and Materials) | 시간+자재 기반 계약 |
| 고정가 계약 | 범위 고정, 금액 고정 |
| NDA | 비밀유지계약 |
| IP | 지적재산권 |
| 하자보수 | 출시 후 버그 수정 기간 |
| SLA | 서비스 수준 약속 |
개발 산출물
| 용어 | 설명 |
|---|---|
| 소스코드 | 프로그램 원본 |
| 빌드 | 소스코드를 실행 가능하게 만든 것 |
| 릴리즈 | 배포 가능한 버전 |
| 커밋 | 코드 변경 저장 |
| 브랜치 | 코드 분기 |
| 머지 | 분기 합치기 |
기술 면접 용어 (채용 시)
개발자 채용 시 나오는 용어
| 용어 | 설명 | 왜 중요? |
|---|---|---|
| CS 지식 | 컴퓨터 과학 기초 | 기본기 확인 |
| 자료구조 | 데이터 저장 방식 | 효율적인 코드 |
| 알고리즘 | 문제 해결 방법 | 성능 최적화 |
| 디자인 패턴 | 검증된 설계 방식 | 유지보수 용이 |
| 클린 코드 | 읽기 좋은 코드 | 협업 효율 |
| 코드 리뷰 | 코드 검토 문화 | 품질 관리 |
| 페어 프로그래밍 | 2인 1조 개발 | 지식 공유 |
용어 퀴즈
Q. 이 문장 해석해보세요
"프론트엔드는 React로 하고, 백엔드 API는 Node.js로 만들어서 PostgreSQL DB에 연결할게요. CI/CD 파이프라인 구축해서 자동 배포하고, 스프린트 단위로 진행하면서 QA 거쳐서 프로덕션에 롤아웃할 예정입니다."
해석:
"사용자 화면은 React 기술로 만들고, 서버 처리는 Node.js로 만들어서 PostgreSQL 데이터베이스에 연결합니다. 코드 변경하면 자동으로 테스트하고 배포되는 시스템 만들고, 1~2주 단위로 개발하면서 품질 검증 후 실제 서비스에 점진적으로 적용합니다."
함께 읽으면 좋은 글
- 개발자와 효과적으로 소통하는 법 - 용어를 알았다면 소통 방법도
- 기술 스택 선정 가이드 - 기술 관련 의사결정
- 기술 부채란? - 자주 듣는 개념 이해하기
- 비개발자를 위한 외주 가이드 - 외주 기초 가이드
Photo by Unsplash