이번에 SSAFY 4기 수료한 교육생으로서 지난 1년동안 총 4번의 팀 프로젝트에서 1등(1학기 종합프로젝트), 1등(2학기 공통), 2등(2학기 특화), 2등(2학기 자율) 나름 상위권에 위치하며 어떻게 프로젝트를 진행했는지 대략적인 가이드를 제시하고자 합니다.
물론 사람마다 가치관이 다르고 진행하고자하는 프로세스가 다를 순 있으나 막상 프로젝트는 시작됐는데 어디서부터 뭘해야할지 모르겠다면 이러한 순서대로 진행해보는건 어떨까요?
시작하겠습니다.
우선 프로젝트에서 제 역할은 메인 발표자 및 백엔드 개발, 인프라 담당이였습니다. 따라서 맡은 역할 위주로 상세하게 포스팅하겠습니다.
기존에 팀원들중 좋은 서비스 아이디어나 본인이 하고싶었던 아이디어가 있다면 다행이지만 무에서 유를 창조하는것은 언제나 어렵습니다.
특히나 요즘 가장 많이 나오는 주제와 기술은 코로나 관련, 비대면(화상미팅), 키오스크, VR, AR, 인공지능, 빅데이터, IOT 등입니다.
주제를 선정할 때 각 팀원마다 아이디어를 몇개씩 준비해서 꼭 회의하는 시간을 갖으세요!
남들과 차별화된 주제를 기획하는것은 기획자가 아닌이상에야 상당히 어렵습니다. 처음 기획이 프로젝트의 당락을 결정하니 꼭 신중하게 기획하세요!
들어가면 좋은 포인트는 기존 서비스와의 차별화 전략(이게 안되면 기존 서비스에서 업그레이드 할 수 있는 것), 사회 공헌적 내용 등
아이디어가 픽스됐다면 다시 한번 비슷한 서비스는 없는지 체크해보시기 바랍니다. 기존 서비스가 있다면 해당 서비스와의 차별화 전략을 추가로 세우시면 좋습니다!
또한 기획이 어느정도 나왔다면 어떻게 개발할것인지 기간내에 가능한지 파악을 해야합니다. (예를들어 화상미팅이 들어간 서비스를 기획했는데 화상미팅을 구현해본적은 없고 어떤 오픈소스를 사용해야하는지 등)
사실 사용자 QA테스트까지 바라는건 욕심이지만 저희는 실제 사용자처럼 QA 테스트를 진행하였고 거의 20 ~ 30개정도의 버그가 발생했습니다. 보통은 최종 발표 주나 전주에 테스트를 진행하고 이후엔 발표자를 제외하고 거의 버그 잡는데 시간을 할애했던거같습니다.
프로젝트의 완성도를 좌우하는건 얼마나 빨리 기획을 마치고 개발에 들어가냐입니다. 저 같은 경우는 공통, 특화 때 거의 3주차부터 개발에 들어갔고 2주정도 개발진행하고 나머지 시간에는 UCC, 발표, 버그 픽스에 시간을 썼던거같아요. 따라서 기획을 얼마나 빨리 끝내고 개발에 들어가는지가 추후에 시간활용을 잘할 수 있어 프로젝트의 완성도가 올라갑니다.
이제 더이상 고민은 그만하고 사용할 기술을 픽스하고 본격적인 개발에 돌입해야합니다. 보통 가장 많이 하는 기술 스택은 다음과 같습니다.
FrontEnd : Vue, JavaScript, TypeScript, React, ReactNative, Android 등
BackEnd : SpringBoot(Java),Mysql or MariaDB, Mybatis or JPA, Node.js, DJango(Python)
InFra : AWS, Docker
협업툴 환경 설정
각 자 사용하는 협업 툴이 다르겠지만 대부분 많이 사용하는 공통적인것은 MatterMost, Notion, GitLab, Slack 등
개발환경 세팅
가장 중요하다 생각보다 시간을 많이 잡아먹을 수 있는 부분 팀원 중 익숙한 사람이 먼저 프로젝트 세팅하고 나머지 팀원이 같이 잡아가는 방식으로 하는게 가장 효율적 누구도 익숙지않다면 하나하나 같이 웨벡스로 공유해가면서 맞춰놓도록하자
시스템 아키텍처 설계
보통은 인프라 담당자가 전반적인 서비스 아키텍처를 설계하여 프로젝트에 대한 높은 이해도를 가지고 있어야 배포나 장애가 발생했을 때 해결할 수 있다. (물론 담당자뿐아니라 다른 팀원들도 숙지하고 있어야함)
프로젝트 만들어서 깃 init
최초 프로젝트를 깃에 커밋하는것부터 시작이다.
Git에 대한 이해도는 곧 프로젝트 관리로 이어지기 때문에 꼭 Git에 대한 사용법은 익히도록 하자.
인프라(서버 환경 설정)
로컬에 개발환경을 세팅했듯이 서버를 배포받으면 바로 개발환경을 세팅해야한다. 빠르게 서버 개발환경을 맞추고 배포할 수 있도록 세팅해놓으면 더욱 빠른 프로젝트 개발이 가능하다.
지금까지 대략적인 프로젝트의 처음부터 끝까지 가이드를 작성해봤는데 도움이 됐을지 모르겠다 ^;;^
여기서 끝이 아니라 이후에 작성할 포스터 주제를 적어보면
생각나는 주제는 여기까지인데 이 후 더필요한 컨텐츠가 있다면 추가로 작성진행하겠습니다.