Skip to content

osamhack2021/web_Guntor-Guntee_EarlyFried

 
 

Repository files navigation

guntor-guntee-logo

누구에게나 의미있고 값져야 할 군생활이니까


version GitHub contributors code quality GitHub commit GitHub commit per week licence

🤝 군토&군티 (Guntor & Guntee)

군토&군티는 군복무 중 멘토링 활동을 통해 서로 성장하는 서비스입니다.


📍 목차


🎯 1. 프로젝트 소개

🗺 1.1. Overview

홈화면

'군토&군티'는 멘토링에 필요한 모든 것을 제공합니다.

군토&군티를 이용해 멘토링 제작, 신청, 진행, 관리까지 가능합니다.

군토&군티에서 멘토는 자신의 지식과 노하우를 공유할 수 있습니다. 멘티는 멘토링을 통해 자기계발에 도움을 받을 수 있습니다.

복무 중인 장병은 각각의 다양한 경력을 가지고 있습니다. 동시에 더 나은 자신이 되고자 자기계발에 목말라합니다.

국군 장병의 경력을 최대한 활용하면서 그들의 성장을 도울 방법으로 멘토링을 선택하였습니다.

자발적이고 적극적인 멘토링을 중심으로 성장형 커뮤니티를 형성하는 것이 '군토&군티'의 목적입니다.


🤔 1.2. 문제 인식

진로, 학업에 대한 고민

stat


대통령직속 청년위원회(청년위)와 국방부가 군 장병 2020명을 대상으로 실시한 공동 실태 조사에 따르면 청년 장병의 가장 큰 고민은 '진로(취업·창업) 관련 문제(65.%)'로 '군 복무 고민'(14.6%)보다 그 수치가 월등히 높았다. 특히 응답자 중 절반(48.8%) 가까이가 군 생활로 인한 경력 단절의 부담을 느끼고 있었고, 제대 후 사회 적응이 부담된다고 밝힌 인원도 50.4%다. 또 계급이 높아질수록, 고학력자일수록 진로를 고민하는 비율이 상승했다. 군 복무 중에도 취업과 미래를 위해 노력해야 한다고 응답한 비율이 69.4%에 달했다. 군 장병 10명 중 7명이 극심한 취업난에 자기계발의 강박에서 자유롭지 못했다. 군 장병 2명 중 1명제대 후 삶에 대한 부담과 불안감에 휩싸여 있었다.
[출처] 전역예정자 65% "진로 큰 고민…치킨집이라도 해야하나"

청년 장병들의 가장 큰 고민은 진로입니다. 청년 장병들은 20여 년간 쌓아온 것들을 뒤로한 채 군인으로서의 책임을 다합니다. 군 복무 기간 동안 학업과 경력이 단절됩니다. 청년 장병들은 전역 후의 삶에 대해 부담과 불안감을 느끼고 있습니다. 무엇을 공부해야 할지 고민하는 장병뿐만 아니라 미래와 진로에 대한 근본적인 고민을 하는 장병도 많습니다. 통계 자료에 의하면 청년 장병들의 36.8%가 멘토링을, 23.2%가 전문상담을 희망합니다. 50% 이상의 장병이 일회성의 강의-강연이 아닌, 장기간에 걸친 체계적 프로그램을 필요로 하고 있습니다.


💡 1.3. 해결 방안

경력과 역량 개발에 효과적인 멘토링

경력 개발과 역량 개발에서 멘토링의 우수성은 수년간의 연구를 통해 증명되었습니다. 대기업들 또한 신입사원들의 역량 개발을 위한 프로그램으로 멘토링을 시행하고 있습니다. 50% 이상의 장병이 멘토링과 같은 체계적인 프로그램을 필요로 하고 있습니다. 고민에 대한 답을 찾을 의지와 능력이 있는 청년 장병에게 고민을 덜어줄 수 있는 가장 효과적인 방법은 멘토링입니다.


💭 1.4. 상황 설정 (프로젝트 스토리)

🤔 입대를 앞둔 사람의 고민과 결정 - 죽느냐 사느냐, 그것이 문제로다

여기 입대를 앞둔 굳건이가 있습니다. 굳건이는 막연한 군 생활이 걱정됩니다. 너무 답답한 나머지 굳건이는 군대를 갔다온 주변 선배들에게 조언을 구해봅니다.

'선배 A'는 군 생활이 크게 성장할 수 있었던 인생의 터닝 포인트였다고 말합니다. 몸도 좋아졌고, 돈도 모았고, 책도 읽고, 원하는 공부도 할 수 있었다고 합니다. 군대에서 삶에 대한 진지한 고민을 할 수 있었고 구체적인 목표와 계획을 세울 수 있었다고 합니다. 선배 A는 굳건이에게 너무 걱정하지 말라고 말하며 의미 있고 값진 시간으로 만들어나가길 바란다고 충고해줍니다.

'선배 B'는 군 생활에 대한 다른 이야기를 해줍니다. 군 생활은 시간 낭비라고, 군대에 가서 바보가 돼서 나왔다고 말합니다. 군 생활이 너무 끔찍했으며 몸만 건강히 전역해도 충분하다고 말합니다. 군 생활 열심히 하는 것만큼 쓸모없는 것이 없다고 말합니다. 선배 B는 군 복무 기간 동안 그냥 죽었다고 생각하라고 충고합니다.

두 선배의 의견 모두 일리가 있습니다. 하지만 굳건이는 인생의 가장 중요한 시기를 군대에 있다고 낭비하고 싶지는 않습니다. 슬기롭게 군 생활을 헤쳐나간 선배 A가 존경스럽습니다. 굳건이도 선배 A를 본받아 자기계발을 열심히 하기로 마음을 먹습니다.


😱 머지않아 찾아온 불편한 손님, 슬럼프 - 어디로 가야 하오...

큰 꿈을 안고 입대한 굳건이는 머지않아 어려움을 겪습니다. 하고 싶은 것은 많지만 어떻게 해야 할지 하나도 모르겠습니다. 운동을 하고 싶지만, 팔굽혀펴기 10개 하기도 너무 힘듭니다. 맛있는 냉동 음식과 과자를 매 끼니 챙겨 먹느라 돈도 잘 모이지 않습니다. 책을 읽어도 졸리기만 합니다. 어떤 공부를 해야 할지 감이 오지 않습니다. 당장 내일을 어떻게 살아야 할지도 모르겠습니다. 삶의 목표가 더욱더 흐릿해지기만 했습니다.

이렇게 살면 안 된다고 스스로 다그치고 또 다그치지만 변하지 않는 자신이 야속합니다. 굳건이는 속으로 멘토 같은 사람이 방향을 설정해주고 이끌어줬으면 좋겠다고 생각합니다. 열심히 하고 싶은 마음은 정말 가득하지만 실천할 의지와 정보가 부족함을 느낍니다. 굳건이를 도와줄 사람은 존재하지 않는 것일까요?


😏 뭐가 문제야 Say Something - '군토&군티'가 있잖아!

슬럼프에 빠진 굳건이는 '군토&군티'라는 서비스를 접하게 됩니다. 군토&군티에 등록된 유능한 멘토들의 다양한 멘토링 프로그램 중 굳건이가 필요한 멘토링이 찾아봅니다. 굳건이는 평소 관심을 갖고 있던 운동, 공부 관련 멘토링의 소개 글을 상세히 살펴봅니다. 멘토의 포트폴리오까지 꼼꼼히 참고해 찾은 멘토링을 신청합니다. 유능한 멘토를 만나 자신이 원하던 자기 계발을 효과적으로 진행합니다. 채팅 기능을 이용해 과제도 주고받으며 멘토링을 체계적으로 진행합니다. 이렇게 자기계발에 성공한 굳건이는 이번에 멘토로서 활동해 자신의 지식과 노하우를 또 전달해줍니다. 군토&군티를 통해 굳건이는 자신이 계획하던 꿈을 이루고 전역하게 됩니다. 멘토링을 통해 배우고 느낀 점들은 소중한 경험이자 경력이 되었습니다.


👤 1.5. 예상 사용자

👨‍🏫 자신의 지식과 노하우를 함께 공유하고자 하는 멘토

  • 유능한 멘토는 멘토링 소개와 포트폴리오 작성만으로 쉽고 간편하게 멘토링을 시작할 수 있습니다.
  • 서비스에서 제공하는 채팅, 과제 등의 매니지먼트 시스템을 이용해 지식 전달에만 집중할 수 있습니다

👨‍🎓 배우고자 하는 열정이 넘치지만 도움이 필요한 멘티

  • 필요한 멘토링을 추천을 통해 발견할 수도, 태그를 이용해 직접 찾아볼 수도 있습니다.
  • 멘토링에 첨부돼있는 소개글과 포트폴리오를 참고해 정말 나에게 필요한 멘토링을 선택할 수 있습니다.

모든 장병이 가슴에 품은 목표를 이룰 수 있는 그날까지
전국의 인재들을 이어주는 군토&군티가 되겠습니다.


⚙️ 2. 기능 설명

🔒 회원가입 & 로그인


ezgif com-resize

  • 가입한 회원 정보로 로그인 가능합니다.

📂 손 쉬운 포트폴리오 관리


멘토 포폴 생성_

멘토링을 시작하기 위해서는 포트폴리오를 작성해야 합니다.

누구나 쉽게 프로필 페이지에서 작성을 시작할 수 있습니다.

입력해야 하는 정보는 다음과 같습니다.

  • 포트폴리오 제목

  • 하위 항목 (스펙 카드) 제목, 내용 입력


📌 누구나 만들수 있는 멘토링


ezgif com-resize

누구나 쉽게 멘토링을 제작할 수 있습니다.

입력해야 되는 정보는 다음과 같습니다.

  • 멘토링 썸네일

  • 검색을 위한 '멘토링 제목'과 '태그'

  • 멘토링 소개

  • 과제 (제목, 내용, 제출일)

  • 멘토링 기간

  • 멘토링과 연관된 포트폴리오


🔴 멘토링 신청과 실시간 채팅


ezgif com-resize (1)

검색창을 이용해 원하는 주제의 멘토링을 검색할 수 있습니다.

멘토링 제목, 태그를 이용해 검색이 가능합니다.

멘티는 멘토링에 적혀 있는 다음 내용들을 확인해 자신에게 딱맞는 멘토링을 찾을 수 있습니다.

  • 멘토의 프로필, 포트폴리오

  • 멘토링 기간, 소개, 과제

  • 멘토에 대한 후기

멘토링 신청 후 다음을 확인할 수 있습니다.

  • 과제 현황

  • 멘토가 추가로 남긴 메모

  • 멘토와의 멘토링을 진행할 수 있는 실시간 1대1 채팅방


🔍뭐든 물어봐 ~ 커뮤니티


ezgif com-resize (2)

멘토링만으로 부족한 정보를 커뮤니티에서 자유롭게 나눌 수 있습니다.

  • 검색 기능 지원

  • 댓글 작성, 좋아요 누르기 기능



✨ 3. 기대 효과

🏆 3.1. 의미있고 값진 군생활

자발적인 멘토링을 통한 체계적인 자기계발

  • 손쉬운 포트폴리오, 멘토링 제작으로 누구나 시작할 수 있는 멘토링
  • 포트폴리오로 멘토의 경력까지 확인할 수 있는 내게 정말 필요한 멘토링
  • 태그로 간편하게 찾아볼 수 있는 다양한 분야의 멘토링
  • 유능한 멘토와 열정적인 멘티가 만나 이루어지는 효과적인 멘토링

언택트의 거리 📏 에서 온택트의 마음 ♥ 으로 함께하는 성장 커뮤니티

  • 언택트의 거리에서 온택트의 마음으로 진행하는 멘토링에서 싹트는 멘토와 멘티 간 유대감
  • 커뮤니티에서 이루어지는 비슷한 관심사를 가진 사람들과의 생산적인 소통
  • 부대 안에서만 국한되던 인맥의 확장, 단절감 극복

🔭 3.2. 발전 가능성

신병 및 초급 간부의 조기 조직사회화 프로그램

부대 내 분대장, 주임원사, 대대장 등 선임 병사, 간부'군토&군티'의 체계적인 멘토링 서비스를 이용하여 신병 및 초급 간부의 부대 적응을 도울 수 있습니다.

전문 상담가와의 정기적이고 체계적인 상담 프로그램

멘토링 사이에 병영상담가의 상담 프로그램을 배치하여 '군토&군티' 이용자가 가지고 있는 병영생활 고충의 해결을 도울 수 있습니다.


⌨ 3.3. 공개 SW 발전 방향

공개된 API와 체계적으로 정리된 관련 문서

저희는 API를 공개할 목적으로 개발을 시작하였습니다. OPEN API를 위해 관련된 정보들을 체계적인 문서로 정리하였습니다. 이 문서를 사용해 군토&군티는 iOS 앱, 안드로이드 앱 등 다양한 플랫폼으로 확장 가능합니다. 모바일 앱은 국군 장병들의 사용에 대한 편리성과 접근성을 높이며 국군 장병의 적극적인 참여를 장려할 수 있습니다. 음성 채팅과 같이 스마트폰 앱의 장점을 활용하여 멘토링을 더욱 효과적으로 실시할 수 있습니다.

API Document 확인하기

기능별 MSA를 통해 가능한 확장 유연성

저희는 개발 과정에서 MSA 개념을 적극적으로 도입했습니다. 군토&군티는 MSA와 상세한 문서화를 통해 유연한 확장성을 갖추었습니다. 채팅 기능이 대표적인 예입니다. 데이터 서버는 django(python)를 이용했고 채팅 서버는 socket.io(javascript)를 이용하였습니다. socket.io를 이용해 음성 채팅 기능을 추가할 수 있습니다. 이외에도 추가 확장을 위한 새로운 프레임워크도 큰 충돌 없이 도입 가능합니다.

국군 장병의 가려운 부분을 알려주는 데이터

멘토링 목록, 멘토링 태그, 커뮤니티 게시글 등을 빅데이터로 이용할 수 있습니다. 군토&군티에서 생성되는 데이터들은 국군 장병의 주요 관심사와 병영생활 고충을 담고 있습니다. 이 데이터는 병영문화 혁신으로 이어지는 발전 방향을 제시할 수 있습니다.


🖥️ 4. 컴퓨터 구성 / 필수 조건 안내 (Prerequisites)

환경 조건

  • ECMAScript 6 지원 브라우저 사용
  • 권장: Google Chrome 버젼 77 이상
  • Python 3.9 이상
  • node.js 14.18.1 이상

🔧 5. 기술 스택 (Techniques Used)

BackEnd

Server

  • django
  • django-rest-framework

Chatting

  • socket.io

Hosting

  • gunicorn
  • heroku

기타 오픈 소스

펼치기
  • django-cors-headers
  • Pillow
  • whitenoise

FrontEnd

Web Dev

  • React.js
  • HTML/CSS/JS
  • AXIOS

Design

  • sass
  • reactstrap

기타 오픈 소스

펼치기
  • argon2
  • fullcalendar
  • moment
  • Nodemailler
  • react-calendar
  • react-hook-form
  • react-router-dom
  • tippy.js

DevOps

Dev Strategy

  • Git, Git-flow

Documentation

Communication

  • Jandi

    jandi

Web Design

Database Design

  • ERD Cloud

    erd


📀 6. 설치 안내 (Installation Process)

다운로드

# 먼저 리포지터리를 다운 받습니다.

$ git clone https://github.com/osamhack2021/web_Guntor-Guntee_EarlyFried.git

실행

방법 1 - start.sh 파일 실행

Data ServerChatting Server의 경우 heroku를 통해 배포를 해두었습니다.

프론트엔드 앱 사용만을 원하신다면 start.sh 파일을 실행하시면 됩니다.

# start.sh 파일을 실행해줍니다.

$ sh start.sh

방법 2 - 직접 command를 입력

# 직접 command를 입력해줍니다.

# 백엔드 서버를 먼저 실행해줍니다.
# django data server 실행 (default port: 8000)
$ cd backend
$ pip install -r requirements.txt && python manage.py migrate
$ echo "start server"
$ nohup python manage.py runserver &

# chatting server 실행 (default port: 5000)
$ cd ../chatting
$ echo "start chatting"
$ yarn install && nohup yarn start &
$ echo "start web app"

# 다음으로 프론트엔드 서버를 실행해줍니다. (default port: 3000)
$ cd ../frontend/army_mentoring
$ yarn install && nohup yarn start &

👥 7. 팀 정보 (Team Information)

EarlyFried는 군에서의 '경험'이 '경력'이 되는 세상을 꿈꾸는 6명의 강한 친구들입니다.

사진 계급 이름 역할 GitHub E-Mail
육군 병장 이지호 팀장
프로젝트 기획
프론트엔드
육군 일병 박지인 디비 설계
프론트-백 연동
백엔드
육군 상병 양현동 API 설계
서버 관리
백엔드
육군 상병 이재용 페이지 디자인
프론트엔드
육군 병장 이채준 발표자료 준비
로고 디자인
백엔드
육군 일병 이현희 페이지 디자인
프론트엔드
프론트-백 연동

계급은 2021년 11월 기준입니다.


📁 8. 디렉토리

WEB(BE)에 해당하는 폴더들

backend/

  • backend/ 는 데이터 서버 관련 파일 저장 폴더 입니다.

chatting/

  • chatting/ 은 채팅 서버 관련 파일 저장 폴더 입니다

WEB(FE)에 해당하는 폴더들

frontend/army_mentoring/

  • frontend/army_mentoring/ 은 웹 앱 관련 파일 저장 폴더 입니다.

©️ 9. 저작권 및 사용권 정보 (Copyleft / End User License)

This project is licensed under the terms of the MIT license.

About

군토&군티 - 군복무 중 멘토-멘티 활동을 하며 서로 성장하는 서비스

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages

  • JavaScript 50.7%
  • CSS 24.2%
  • SCSS 13.2%
  • Python 11.2%
  • HTML 0.4%
  • Dockerfile 0.3%