외부활동/동아리

[DND 후기] 사이드 프로젝트 동아리 DND 6기 활동 후기

PgmJUN 2022. 3. 1. 02:38

 

 

 

백엔드를 공부한 지 3개월 정도가 지나며 프로젝트에 대한 욕심이 생겨 DND에 지원했었다.

 

운이 좋게도 동아리에 합격했고 디자이너, 프론트 분들과 함께 프로젝트를 진행할 수 있는 기회를 얻게 되었다.

 

이 기회를 잘 살리고자 나서서 의견을 내고, 팀원 분들과 적극적으로 소통하는 등 프로젝트에 열심을 다해 임했다.

 

그러다 보니 1월 합격하여 글을 남겼던  합동아리 DND  에서의 8주간 활동을 마치고 후기를 남길 시간이 되었다.

 

합격 후기 게시물을 아래 링크에서 볼 수 있다.

 

(DND 합격 후기 게시물)

 

[DND 합격] IT동아리 DND 6기 지원&합격 후기!

안녕하세요! 오늘은 기쁜 소식을 가지고 왔습니다📬 며칠 전 지원했던 IT 동아리 DND에 1200명이라는 어마무시한 숫자를 뚫고 합격했습니다! 후에 다른 분들께서 지원하시게 된다면 보고 참고하

pgmjun.tistory.com

 

 

 


✨ DND 지원 배경

 

작년 10월 군생활을 마치고 제대한 후 전공이었던 프로그래밍을 공부하기 위해 관련 분야를 많이 탐색했었다.

 

그러던 와중 서버 개발에 관심이 생겨 몇 달간 인프런 강의를 보며 열심히 공부했었다.

 

하지만 기본적인 부분을 다 배웠어도 내가 실력이 늘고 있는건지 어떤지 알 방법이 없었고, 개발은 혼자가 아니라 여럿이 하는 것이기 때문에 협업 경험을 쌓을 필요가 있다고 느꼈다.

 

최종적으로 프로젝트 경험을 통해 내가 어느정도 성장했는지 알아보고 싶어  DND 에 지원하게 되었다.

 

 


💬 활동 내용

 

활동은 간략히 아래와 같았고 8주의 기간을 거쳐 진행되었다.

 

1. 오리엔테이션

 

2. 조별 아이디어 선정 구체화

 

3. 프로젝트 셋팅

 

4. 디자인, 개발 시작

 

5. 중간 점검

 

6. 최종 발표

 

7. 배포

 

 

팀원끼리 약속을 정해 매주 수요일 저녁마다 주로 비대면으로 정기 회의를 가졌으며

 

'Slack / 노션 / 피그마' 등 협업툴을 사용하여 팀원들과 소통하며 프로젝트에 대한 이해도를 높여나갔다.

 

 

(회의 사진)

스터디카페 대면 회의

보통 비대면으로 회의를 진행했지만 팀원끼리 많이 친해져서 스터디 카페에서 대면 회의도 가졌었다:)

 


💁‍♂️ 나의 역할

 

내가 맡은 부분은 스프링부트를 사용한  Rest API 서버 개발 었다.

 

버전 관리는 Github를 이용했으며,

 

같이 백엔드를 맡게된 팀원과 '깃 컨벤션'을 정하고, 'Git-flow 전략'을 이용해 효율적으로 협업을 진행하였다.

 

 


🛠️ 구체적인 활동 내용 

 


- 깃 컨벤션 설정

 

- Git flow 사용

 

- 스프링부트 사용하여 api 설계

 

- Kakao OAuth2, 스프링 시큐리티, JWT 사용하여 사용자 인증체계 구현

 

- Swagger 사용하여 API Spec 자동 문서화

 

- 노션 이용하여 API Spec 문서화

 

- Spring Data Jpa 사용하여 DB데이터 관리

 

- AWS S3 사용하여 이미지 데이터 저장

 

- H2DB(Test용), MySQL DB연동

 

- Apple OAuth2 로그인 구현(미완)

 

- AWS 기술 사용하여 서버배포(RDS, EB, SecretManager, ECR)

 

- CI/CD 무중단 배포


 

취소선이 그여진 부분 외에는 본인이 주도적으로 진행하였던 부분이다.

 

다양한 기술들을 활용하고 직접 개발해보면서 부족했던 지식을 쌓고 동시에 부족함을 뼈저리게 느낄 수 있었다.

 

배포는 관련 지식이 많이 부족하여 같이 백엔드를 맡은 "초고수" 팀원분의 힘을 많이 빌리게 되었다!

 

배포 경험이 있는 팀원분 덕분에 운이 좋게도  AWS 의 여러 기술과  Docker 를 접할 수 있었다.

 

이 과정에서 배포 관련 지식을 열심히 쌓아 진행했던 프로젝트에 직접 적용해보아야겠다는 다짐을 할 수 있었다.

 

 


📈 성장한 나

 

프로젝트를 마치며 가장 중요한건 "내가 프로젝트 전보다 얼마나 성장했는가" 라고 생각한다.

 

그래서 프로젝트 전과 비교해서 무엇을 할 수 있게 되었는지 간략히 정리해보았다.

 


  • 직접 API를 설계해보면서 헷갈렸던 Entity와 DTO의 분리에 대해 이해하고 직접 응용해볼 수 있었다.
  • 프론트쪽에서 로그인 처리를 하도록 설계했던 이전 프로젝트와 달리 Spring Security와 JWT 그리고 OAuth2를 사용하여 백단에서 인증 체계를 구현하였다.
  • 이전 프로젝트에서 얇은 지식으로 사용했던 '깃 플로우'를 이해하고 사용했으며, '깃 컨벤션'을 설정하여 효율적으로 버전관리를 하였다.
  • 발생한 오류에 대한 트러블슈팅을 작성하여 오류에 대한 정보와 해결방안을 기록해두는 습관을 기를 수 있었다.
  • 처음으로 각각의 분야를 담당하는 팀원들과 힘을 합쳐 서비스 하나를 만들어냈다.

 


📋 내가 느낀 DND의 장단점


🙆‍♂️ 장점

- 프로젝트 경험이 부족하더라도 열정과 기본지식만 갖추고 있다면 선발될 수 있다.

 

- 프로젝트 진행 과정을 n주차 숙제 형식으로 제공해주어 프로젝트가 처음이어도 잘 따라올 수 있도록 도와준다.

 

- 운영진분들이 적극적으로 질문을 받아주시고 문제상황에서 해결책을 제시해주신다. 

 

- 프로젝트 진행비(AWS 비용 등)나 모임에 사용된 비용을 어느정도 지원해준다.

 

- 1기~6기까지 중간에 탈주한 인원이 없었다.

 

🙅‍♂️ 단점

- 생각보다 직장인 비율이 높다.

(이 부분은 양날의 검인 것 같다. 케이스는 "직장의 업무에 의해 시간이 잘 나지 않아 적극적으로 참여하지 못하는 팀원" 혹은 "경험이 있고 실력이 좋은 팀원" 중 하나인 것 같다.)


 

사실 내가 느낀 단점은 위에 말했듯이 장점으로도 느껴졌기에 살짝 애매하다.

 

저 부분을 제외하곤 전혀 단점이라고 할만한 것이 없었다고 느낄 정도로 깔끔한 활동이 가능했다! 

 


마지막으로..

 

백엔드 개발을 공부하고 처음으로 하게된 팀 프로젝트라 걱정도 많이 되고 긴장도 많이 되었다.

 

하지만 부족한 실력에도 불구하고 좋은 팀원분들과 운영진분들을 만나 즐겁고 뜨겁게 활동할 수 있었다.

 

아직 경험이 많이 부족하지만 열정과 의지가 가득한 당신이 팀프로젝트 동아리를 찾고 있다면

 

하고자하는 의지가 있는 사람이라면 누구에게나 기회를 주는 DND를 추천하고싶다.

 

 

DND 슬로건

"프로젝트에 즐거움을 모두에게 기회를"

 

 

(8주라는 짧은 기간이었기에 아직 구현이 덜 된 부분이 있지만, 이 부분도 팀원들과 책임감을 갖고 3월내로 꼭 마무리 지으려한다.)

 


 활동 결과 프로젝트 설명 및 Github, Notion

 

Github Readme

 Notion 

 

‘흐릿’ 개발 문서

목차

www.notion.so

 Github 

 

GitHub - dnd-side-project/dnd-6th-7-worry-record-service

Contribute to dnd-side-project/dnd-6th-7-worry-record-service development by creating an account on GitHub.

github.com