심화: GitHub와 README를 포트폴리오로 만들기
개발자 채용에서 GitHub 링크는 거의 필수지만, 저장소가 많기만 하고 정리되어 있지 않으면 면접관은 무엇을 봐야 할지 모릅니다. 면접관이 5분 안에 핵심을 파악할 수 있게 정리하는 것이 목표입니다.
1. 프로필 정리
- 대표 저장소 고정(Pin): 지원 직무와 관련된 저장소 3~6개를 프로필 상단에 고정하세요.
- 프로필 README: 이름, 관심 분야, 주로 쓰는 기술, 대표 프로젝트 링크 정도면 충분합니다. 화려한 배지나 통계 이미지보다 읽을 수 있는 정보가 중요합니다.
- 정리하지 않은 저장소: 강의 따라 하기, 연습용 저장소가 많다면 비공개로 바꾸거나 이름에
study-처럼 표시해 대표 프로젝트와 구분하세요.
2. 프로젝트 README 구조
대표 저장소의 README는 다음 순서로 작성하면 면접관이 빠르게 이해할 수 있습니다.
# 프로젝트 이름
한 줄 소개: 무엇을 해결하는 서비스인지
## 데모
- 배포 주소 또는 실행 화면 GIF
- 테스트 계정 (필요한 경우)
## 주요 기능
- 기능 1
- 기능 2
## 기술 스택과 선택 이유
- React: 화면 상태가 많아 컴포넌트 단위로 관리하기 위해
- PostgreSQL: 주문과 결제 데이터의 관계가 복잡해서
## 내가 맡은 부분 (팀 프로젝트인 경우)
## 문제 해결 기록
- 문제: 목록 화면이 느려짐
- 원인: 불필요한 전체 리렌더링
- 해결: 메모이제이션 적용, 측정 결과
## 실행 방법
## 회고 (아쉬운 점과 다음에 개선할 점)
기술 스택과 선택 이유, 문제 해결 기록이 면접 질문으로 가장 많이 이어지는 부분입니다. "왜 이 기술을 썼나요?"에 답할 수 없는 기술은 스택 목록에 넣지 않는 편이 좋습니다.
3. 코드에서 면접관이 보는 것
- 커밋 기록: "수정", "update"만 반복되기보다 무엇을 바꿨는지 알 수 있는 메시지
- 폴더 구조: 역할에 따라 나뉘어 있는지
- 테스트: 핵심 로직에 테스트가 조금이라도 있는지
- 설정 파일: API 키나 비밀번호가 저장소에 올라가 있지 않은지 — 이것은 감점을 넘어 보안 사고입니다.
.env 파일은 .gitignore에 넣고, 이미 올렸다면 키를 즉시 폐기하고 새로 발급하세요.
배포와 데모
면접관이 직접 실행해 보기는 어렵기 때문에, 바로 확인할 수 있는 데모가 있으면 큰 도움이 됩니다.
- 무료 호스팅 서비스로 배포하고, 주소를 README 맨 위에 두세요.
- 배포가 어렵다면 주요 기능의 실행 화면을 GIF나 짧은 영상으로 남기세요.
- 로그인이 필요한 서비스라면 테스트 계정을 README에 적어 두세요.
- 지원 기간 동안 데모가 실제로 열리는지 주기적으로 확인하세요. 무료 서버는 일정 기간 사용하지 않으면 멈추는 경우가 있습니다.
면접에서 프로젝트를 설명하는 순서
- 한 줄 소개: 어떤 문제를 해결하는 프로젝트인지
- 내 역할: 팀에서 맡은 부분
- 기술적으로 가장 어려웠던 문제 하나: 원인과 해결 과정
- 결과: 무엇이 좋아졌는지, 어떻게 확인했는지
- 다시 한다면: 바꾸고 싶은 설계나 결정
이 순서로 2분 안에 설명하는 연습을 해 두면, 면접관의 꼬리 질문에도 같은 구조로 답할 수 있습니다. 포트폴리오 전체 형식과 분량은 포트폴리오 템플릿 가이드를 참고하세요.