Search
📄

프로젝트를 진행할 때 고려 사항

신입 개발자 취업을 위한 프로젝트를 진행할 때 고려 사항

신입 개발자 취업을 희망하는 구직자가 개인 또는 팀 프로젝트 진행하면서 고려해야 할 요소를 소개해 드립니다.

프로젝트의 목표

프로젝트의 목표는 성공적인 결과물보다는 신입 개발자가 취업에 필요한 역량을 얻는 것이 목표가 되어야 한다고 생각합니다. 신입 개발자의 프로젝트가 아무리 좋은 결과물이 나온다고 하여도, 현업 개발자가 보기에는 프로젝트의 난이도가 낮다고 생각할 것입니다. 추가로 결과물을 개발하면서 얻어야 할 역량을 얻지 못하거나, 역량을 보여주지 못한다면 프로젝트가 신입 개발자 취업에 도움이 되지 못할 수 있습니다.

신입 개발자의 프로젝트 난이도가 낮은 이유

비즈니스 환경에 비해 개발해야 하는 요구사항의 난이도가 낮습니다.
개발 환경에 소모되는 리소스가 적습니다.
개발하는 팀원의 역량이 비즈니스 환경에서 개발하는 팀원의 역량보다 낮습니다.

프로젝트를 진행할 때 고려 사항

개발자 직무 성장 가능성을 보여주어야 합니다.
개발자 조직 적응 가능성을 보여주어야 합니다.
기업 온보딩 토이 프로젝트를 진행할 때, 선배 개발자의 피드백을 수용하는 데 무리가 없는 정도의 수준을 보여주어야 한다는 것입니다.
기업 온보딩 토이 프로젝트에 관한 내용은 아래 링크를 읽어보시면 도움이 됩니다.

개발자 직무 성장 가능성

개발자 직무 성장 가능성을 보여준다는 것은 프로젝트 설명하기협업하여 개발하기를 보여주어야 하는 것입니다.

프로젝트 설명하기

프로젝트 설명하기는 아래와 같습니다.
프로젝트의 기반이 되는 이론적 배경의 지식을 이해하고 설명하는 것입니다.
프로젝트에서 사용된 개발 환경, 언어, 도구를 이해한 후 사용한 이유을 설명할 수 있는 것입니다.
프로젝트에서 요구사항을 구현하기 위한 선배의 패턴을 고민하고, 프로젝트에서 사용한 패턴의 이유를 설명하는 것입니다.
프로젝트에서 만났던 문제를 어떻게 해결하였는지 설명하는 것입니다.
마지막으로 더 나은 결과물을 위해 어떤 부분이 부족한지 설명하는 것입니다.

협업하여 개발하기

협업하며 개발하기는 팀 프로젝트일 때 경험할 수 있습니다. 팀 프로젝트를 진행할 때는 아래 개발 프로세스에 대해 고민해 주세요
코딩 스타일을 유지하고, 코드 베이스가 일관되게 관리하는 방법을 고민하는 것입니다.
여러 명이 개발할 때 분기하고 병합하는 불편함을 없애는 방법을 고민하는 것입니다.
효율적인 테스트 방법을 고민하는 것입니다.
효율적인 빌드와 배포 방법을 고민하는 것입니다.
마지막으로 프로젝트 문서화 방법을 고민하는 것입니다.
만약 멘토링 기회가 온다면 멘토님에게 요청할 내용에 대해 소개해 드립니다.
멘토링의 기회가 오면 프로젝트를 진행하며 겪는 문제에 대한 해결 방법을 찾기 위해 멘토링을 요청하는 경우가 많습니다.
추가로 아래와 같은 내용도 멘토링을 요청하면 좋겠습니다.
도메인 지식과 관련된 피드백을 받았으면 좋겠습니다.
개발 프로세스 조언을 받았으면 좋겠습니다.
가독성 높은 코드, 안전한 코드, 유지 관리 가능한 코드 리뷰 조언을 받았으면 좋겠습니다.
패턴을 활용했을 경우 모범 사례 조언을 받았으면 좋겠습니다.
의존성 관리에 방법을 조언받았으면 좋겠습니다.
팀원 간 브랜치 전략과 형상 관리 방법을 조언받았으면 좋겠습니다.
테스트 방법을 조언받았으면 좋겠습니다.
문서화 방법을 조언받았으면 좋겠습니다.

개발자 조직 적응 가능성

개발자 직무 조직 가능성을 보여준다는 것은 리더십/팔로우십협업/소통 역량을 보여주는 입니다.

리더십/팔로우십

리더십/팔로우십 역량을 보여주는 방법은 아래와 같습니다.
신뢰할 수 있는 팀 문화를 만들기 위해 어떤 노력을 했는지 보여주는 것입니다.
프로젝트 목표와 관리할 수 있는 지표를 세우기 위해 어떤 노력을 했는지 보여주는 것입니다.
프로젝트 목표를 이루기 위해 계획대로 실행할 수 있도록 어떻게 노력했는지 보여주는 것입니다.
만약 계획한 대로 결과가 이뤄지지 않았다면 대안 설계를 위해 어떻게 노력했는지 보여주는 것입니다.
팀 구성원이 프로젝트에 몰입하게 하려고 어떻게 노력했는지 보여주는 것입니다.
팀 구성원이 더 나은 방향으로 가기 위해 어떻게 회고했는지 보여주는 것입니다.
리더십/팔로우십을 위해 도움이 되는 블로그
리더십/팔로우십을 위해 고려해야 할 체크리스트
Objective/Plan/Do/Feedback/See
OKR 방법론을 통한 프로젝트 관리
애자일 방법론을 통한 프로젝트 관리
디자인싱킹 방법론을 통한 프로젝트 관리
신뢰 관계 구축
몰입 및 동기부여

협업/소통

협업/소통 역량을 보여주는 방법은 아래와 같습니다.
신뢰할 수 있는 좋은 관계를 구축하기 위해 어떤 노력을 했는지 보여주는 것입니다.
협력 리소스를 줄이기 위해 어떤 노력을 했는지 보여주는 것입니다.
효과적인 의사소통 문화를 구축하려고 어떤 노력을 했는지 보여주는 것입니다.
효과적인 의사 결정 시스템을 구축하려고 어떤 노력을 했는지 보여주는 것입니다.
효과적인 공유 시스템을 구축하려고 어떤 노력을 했는지 보여주는 것입니다.
명확히 의사 표현을 위해 어떤 노력을 했는지 보여주는 것입니다.
팀원 행동 및 결과물에 대해 어떻게 효과적으로 피드백했는지 보여주는 것입니다.
팀원 간 갈등 상황을 어떻게 관리했는지 보여주는 것입니다.
협업/소통을 위해 고려해야 할 체크리스트
1 on 1 미팅을 통한 협업/소통
회의를 통한 협업/소통
의사 결정 설득/협상을 위한 협업/소통
갈등 관리를 위한 협업/소통
동기 부여를 위한 협업/소통
협업 도구(Notion, Slack, Git 등) 활용
업무 공유 / 보고서 작성
멘토링 / 코칭

마무리

신입 개발자 취업을 위한 프로젝트를 진행할 때 고려 사항을 소개해 드렸습니다.
대부분의 경력관리 상담은 직무 교육 해커톤 프로젝트 후에 진행하는 경우가 많습니다. 해커톤 프로젝트 내용을 내담자에게 질문했을 때 제대로 답변하지 못하는 경우가 많았습니다. 이와 같은 경험 때문에 이번 편은 저의 사심이 많이 담겼습니다.
모든 고려 사항을 프로젝트에 반영한다면 프로젝트를 주어진 기간 내 완성하지 못할 수 있습니다. 하지만 프로젝트를 진행하기 전 꼭 소개한 내용을 살펴보고, 도전할 수 있는 부분은 시도했으면 좋겠습니다.
 mlp.pisik@gmail.com