Skip to content

Latest commit

 

History

History
533 lines (372 loc) · 30.9 KB

README.md

File metadata and controls

533 lines (372 loc) · 30.9 KB

🌟 서비스명

duduk.png

서비스 소개

경제 뉴스레터 서비스, 뉴씽

[뉴스는 쉽게, 생각은 깊게, 의견은 함께 Think New! 뉴씽]
요즘 청년들은 자신의 삶과 관련된 ‘경제’ 분야에 관심을 갖지만, 어렵고 복잡한 경제 학습에 어려움을 겪고 있습니다. ‘뉴씽’은 청년들의 낮은 금융 이해도로 인한 사회 문제를 해결하기 위해, 쉽고 간편한 뉴스레터와 이를 깊게 이해하고 공부를 지속할 수 있는 기능을 제공합니다.


🕊️ 팀명

Good moneying

KakaoTalk_Photo_2023-10-04-02-49-47

R&R

분야 이름 포지션
기획 김연지 📢 프로젝트 매니징 - 유저 리서치 및 시장조사, 서비스 기획, 비즈니스 모델 구축
기획 김대헌 📋 서비스 기획 리드 - 유저 리서치 및 시장조사, 서비스 기획, 비즈니스 모델 구축
디자인 진성이 🎨 디자인 리드 - UX/UI 서비스 디자인
디자인 윤시연 🎨 디자인 - UX/UI 서비스 디자인
개발 백건우 💻 개발 리드&백엔드 - DB 및 API 구축, 서버 배포
개발 권민혁 💻 백엔드 - DB 및 API 구축, 서버 배포
개발 김수현 📱 프론트엔드 - AOS 화면 UI 구현, 서버 연동
개발 차현정 📱 프론트엔드 - AOS 화면 UI 구현, 서버 연동

🔎  목적

목적

뉴씽은 생각하는 힘을 길러주는 경제 뉴스레터 서비스입니다. 사용자들은 뉴스를 통해 발견한 나의 생각을 확장하고, 공유하며 함께 성장할 수 있습니다.

  • 어려운 경제 뉴스를 쉽고 빠르게 전달하여 진입 장벽을 낮춰줍니다.
  • 수동적인 정보 전달에서 더 나아가 주체적으로 생각할 수 있는 힘을 기를 수 있도록 돕습니다.
  • 사용자들의 의견을 확인하며 생각을 확장시켜 나갈 수 있습니다.
  • 리워드, 목표설정, 관심사 콘텐츠 추천을 통해서 사용자의 지속적인 학습을 지원합니다.

문제 현상

"데스크 리서치를 통해 1차적으로 문제를 정의했습니다."

1️⃣ 20 대 청년층의 투자 급증

  • 코로나 19 를 기점으로 현재까지 20 대 청년층 사이에서 주식 및 경제에 대한 관심이 크게 증가하고 있습니다.

    • 2020 년 대비 2021 년에 개인 투자자의 거래가 48% 증가했으며 그 중의 대다수가 20 대에서 30 대 사이의 새내기 젊은 투자자들로 나타남.

    • 2019 년에 6 개월에 1 번 이상 주식투자를 하는 주식투자자 수는 614 만명이었음. 이후 코로나 19 를 겪으면서 투자자 수는 꾸준히 증가하여 2020 년 914 만명, 2021 년 1374 만명 2022 년에는 1441 만명을 기록하면서 3 년새 2 배 이상 늘어남.


2️⃣ 20 대 청년층의 무분별한 투자

  • 투자자 수의 증가는 결코 부정적인 지표는 아닙니다. 오히려 자본의 유입이 증가하여 기업 성장을 촉진되는 등 긍정적인 효과를 기대할 수 있습니다. 하지만 현재 20 대 청년층의 투자 행태는 무분별적이며, 그로 인해 재무 건전성이 불안정해지고, 이것이 개인 문제가 아닌 사회적 문제로 대두되고 있습니다.

    • 29 세 이하 청년이 진 빚은 작년보다 40% 넘게 급증하며 5000 만원을 넘어섰음. 특히 청년층을 중심으로 ‘영끌(영혼까지 끌어모아) 대출의 영향이 큰 것으로 나타남.

    • 지난 1 년여간 ‘영끌’과 ‘빚투’(빚내서 투자)로 늘어난 빚의 규모가 476 조원에 달하는 것으로 나타남. 특히 20~30 대 청년층이 진 빚이 133 조원을 넘어서는 등 비중이 30%에 육박해 대출 건전성에 대한 우려가 제기되고 있음.


문제 현상 인사이트

💡 투자 급증 현상 자체가 반드시 부정적인 것은 아닙니다. 그러나 20 대 청년층의 무분별한 투자는 개인회생 및 부채 지표 악화를 초래하고 있어 심각한 문제로 대두되고 있습니다. 이러한 상황을 해결하기 위해 문제 현상의 원인을 체계적으로 분석하고, 이를 해결하기 위한 실질적인 솔루션을 도출하고자 합니다.


문제 원인

Main reason : 낮은 이해도

  • 20 대 청년층의 무분별한 투자 원인 중 첫 번째는 낮은 금융 이해도입니다. 청년들은 산업, 기업, 시장에 대한 깊이 있는 이해를 바탕으로 투자 결정을 내리는 대신, 주변 지인의 추천이나 SNS 콘텐츠에 의존하는 경향이 두드러지고 있습니다. 이러한 낮은 금융 이해도로 인해 투자 리스크에 대한 인식이 부족하여 무분별한 투자가 빈번히 발생하고 있습니다.

    • 한국은행과 금융감독원의 '2022 년 전 국민 금융이해력 조사' 결과, 29 세 이하의 금융이해력 점수는 65.8 점으로, 성인 전체 66.5 점보다 낮은 것으로 집계됨.
    • 전문가들은 청년들이 ‘잘 알지 못한 채 하는 금융활동’이 문제라고 지적함. 정수민 자본시장연구원 연구위원은 “청년들은 이자율에 대한 꼼꼼한 비교 없이 더 간편하고 빨리 받을 수 있는 대출을 택하는 경우가 많다”며 “빚을 지기 전에 금융상품을 신중히 고려하는 법에 대한 교육이 필요하다”고 강조했음.

Sub reason : 투자를 가볍게 여기는 문화

  • 20 대 청년층의 무분별한 투자에는 사회적 분위기가 큰 영향을 미치고 있습니다.. SNS 를 통해 투자 성공 사례가 강조되며, 단기간에 큰 수익을 올린 사례들이 부각되고 있습니다. 이는 청년들이 투자에 대한 심각성을 간과하고, 충분한 지식과 준비 없이 투자를 감행하게 하는 주요 원인으로 작용하고 있습니다.

    • 대체로 주식 초보자는 분위기에 편승해 주식투자에 대한 이해도가 낮은 상태로 시장에 진입하며, SNS 등을 통해 경제적 독립, 조기 은퇴와 같은 소수의 투자 성공 사례에 집중하여 투자 정보가 부족한 상태임에도 불구하고 충분한 사전 검토 없이 주식투자를 시작함.
    • 자체 설문조사 결과 20 대 청년층은 투자 결정을 내릴 때 참고 사항으로 <개인적인 경험 및 직감(58%)>, <최신 뉴스, 산업 및 기업 현황(54.3%)>, <지인의 추천 및 투자 활동 참고(30.9%)>를 답함.

문제 원인 인사이트

💡 [낮은 금융 이해도] 와 [투자를 가볍게 생각하는 문화]는 악순환을 이루며 20 대 청년층이 무분별한 투자를 야기하고 있기 때문에 이를 해결하기 위한 솔루션을 제안합니다.


원인 분석 : 낮은 이해도의 원인 분석

20 대 청년층이 경제, 금융에 무관심한 것은 아닙니다. 보험플랫폼 굿리치 설문조사에 따르면 2030 세대가 가장 관심 있는 콘텐츠는 재테크(66%)라고 응답했습니다. 자체 설문조사에서도 평소 경제, 금융 관련 콘텐츠를 얼마나 자주 보냐는 질문에 82% 이상이 주 1 회 이상 경제 관련 콘텐츠를 소비하는 것으로 나타났습니다.

→ 20 대 청년층이 경제, 금융에도 높은 관심도를 보이고, 주기적으로 경제 관련 콘텐츠도 소비함에도 불구하고 ‘금융 이해도가 낮은 이유’에 대해 분석하고자 합니다.

1️⃣ 전문성을 요하는 경제 분야의 높은 진입장벽으로 인한 페인포인트

  • 20 대를 대상으로 진행한 설문조사에서 “경제 및 금융 지식을 습득하면서 어떤 어려움을 경험하셨나요?”라는 질문에 1 위 ‘어려운 전문용어’(33%), 2 위 ‘배경지식 부족’(29%)로 집계되었음. 20 대는 전문성과 배경지식이 있어야 하는 높은 진입 장벽으로 인해 경제 지식을 학습하는 데 어려움을 겪고 있음을 확인함. 또한 심층인터뷰에서 한 00(24, 여)은 일상생활 시, 마주하게 되는 경제 용어 및 트렌드가 기본 지식 없이 한 번에 이해하기 어려워 경제 지식 학습에 대한 필요성을 느끼게 되었다고 답변함.

2️⃣ ‘이해와 습득’에 미치지 못하고 ‘읽기’에 그치는 20 대 청년층

  • 자체 설문 조사를 통해 20 대 청년 중 69%가 정보성 콘텐츠를 읽은 후, 잘 까먹는 것 같다고 답변했으며, ‘정보성 콘텐츠를 시청 및 소비할 때, 어느 정도 깊이로 이해하고 싶나요?’라는 질문에 21.6%만이 깊이 있게 이해하고 있다고 답변함. 이를 통해 경제, 금융에 관심도 있고, 주기적으로 관련 컨텐츠도 소비하지만 단순히 읽는 것에 그쳐 자신들의 지식으로 체화하거나 습득, 이해하지 못하고 있기 때문에 20 대 청년층이 낮은 금융 이해도를 보인다는 것을 확인할 수 있었음.

📊 리서치 및 시장조사

1️⃣ 경쟁사 분석

  • 기존 경제 뉴스레터 서비스는 주로 메일 형태로 전달되고 있습니다. 메일 특성상 어플에 비해, 기능이 제한적이고 접근성이 낮아 사용자가 지속적으로 학습하는데 불편함을 느끼고 있습니다.

  • ‘뉴씽’은 사용자가 직접 목표를 설정하면 푸쉬알림 등의 기능을 통해 사용자가 지속적으로 학습할 수 있도록 독려하고, 아카이빙 기능을 통해 반복적으로 학습할 수 있도록 돕습니다.

  • 또한 기존 뉴스레터가 일방적으로 정보를 전달하는데 그쳤다면, ‘뉴씽’에서는 사용자가 뉴스레터를 통해 주체적으로 생각을 확장하고 다른 사용자들과 함께 생각을 공유하며 쌍방향적인 소통을 할 수 있는 공간을 제공합니다.


KakaoTalk_Photo_2023-10-04-02-49-47


KakaoTalk_Photo_2023-10-04-02-49-47



2️⃣ 목표 타겟층

KakaoTalk_Photo_2023-10-04-02-49-47


1 차 타겟군 : 현재 경제 뉴스레터를 구독하고 있는 20 대 청년층

  • 주 1 회 이상, 경제 뉴스레터를 읽음. 경제, 금융에 대한 관심도는 있으나, 지속성이 부족합니다. 뉴스레터에 대한 깊은 이해에 대한 니즈 이전에 경제, 금융 관련 뉴스레터를 지속적으로 확인하는 것으로 목표로 합니다.
  • 러닝서포트 기능(리워드, 아카이빙, 목표 설정, 관심사 파악)을 통해서 경제 금융 분야에 관심을 지속하고 학습을 이어가는 것을 목표로 합니다. 이를 통해 초기 유저를 확보하고자 합니다.

2 차 타겟군 : 뉴스레터뿐만 아니라 경제 관련 콘텐츠를 소비하는 20 대 청년층

  • 주 3 회 이상, 경제 관련 콘텐츠를 소비합니다. 뉴스레터뿐만 아니라 유튜브, 인스타 등 다양한 방식으로 경제 콘텐츠를 소비합니다. 하지만 관심도와 소비하는 콘텐츠 수에 비해서 습득하고 깊게 이해하는 내용이 부족하여, 경제, 금융 트렌드 및 지식을 깊게 이해하고 싶은 니즈가 존재합니다.
  • 생각더하기, 나누기, 퀴즈 기능을 통해서 뉴스레터에 대해 스스로 사고하고, 타 유저와 생각을 나누며 경제 금융에 대해서 깊게 이해할 수 있습니다.

3 차 타겟군 : 경제 금융 분야에 관심이 있는 20 대 청년층

  • 경제, 금융 학습에 관련한 대표 서비스로 자리매김하여 경제, 금융 분야에 관심이 있는 20 대 청년층 대다수가 사용하는 서비스가 됩니다. 이후 모의투자, 기업 연계, 특정 산업 및 기업 레포트 제공 등 확장성을 통해 더욱 넓은 유저를 유치할 수 있습니다.

👀 서비스 타겟층 정의

"저희 서비스의 목표 타겟층은 다음과 같습니다."

1️⃣ 경제 관련 기본 지식을 쌓고 싶지만, 진입장벽에 의해 어려움을 겪는 사람
2️⃣ 경제 관련 뉴스를 능동적이고 주체적으로 소비하고 싶어 하는 사람

  • 위 특성을 고려하였을 때, 20대와 30대의 경제 지식에 대한 격차 및 실제 경제 수준에 대한 차이를 아우르는 기능을 도출하기에는 무리가 있다고 판단하여 일차적으로는 20대를 메인 타겟으로 선정하였습니다.
분류 1️⃣ 번 특성의 유저 2️⃣ 번 특성의 유저
핵심 기능 - 뉴스레터(나만의 단어장 및 하이퍼링크)
- 목표 설정 푸쉬알림
- 리워드 기능
- 단어장
- 뉴스레터 아카이빙
- 생각더하기
- 다시 생각하기
- 생각나누기(설문 및 코멘트 공유)
기대효과 - 기존 뉴스보다 읽기 쉬운 뉴스레터를 통해 사용자가 쉽게 뉴스를 이해하고 단편적인 정보가 흐름까지 파악할 수 있는 뉴스레터를 제공함으로써 좀 더 쉽게 유저가 원하는 정보를 습득할 수 있음
- 기존 뉴스레터들과 달리 리워드를 활용해 유저가 지속적으로 서비스를 이용하게 함
- 생각더하기 기능을 통해서 경제 콘텐츠를 단순히 읽는 것을 넘어, 깊게 사고하며 능동적으로 이해, 습득할 수 있음
- 뉴스레터 코멘트 기능을 통해 주체적으로 생각하며 뉴스를 읽을 수 있고, 설문 및 코멘트 공유 등을 통해 다른 유저들과 생각을 확인하며 생각의 폭을 넓힐 수 있음

1️⃣ 번 특성의 유저 페르소나

KakaoTalk_Photo_2023-10-04-02-49-47

KakaoTalk_Photo_2023-10-04-02-49-47

2️⃣ 번 특성의 유저 페르소나

KakaoTalk_Photo_2023-10-04-02-49-47

KakaoTalk_Photo_2023-10-04-02-49-47


💡 서비스 핵심 기능 소개

‘뉴씽(News Think)’은 생각하는 힘을 길러주는 경제 뉴스레터 서비스입니다. 사용자들은 뉴스를 통해 발견한 나의 생각을 확장하고, 공유하며 함께 성장할 수 있는 서비스를 제공하고자 합니다.

주체적인 학습을 독려하는 뉴스레터

  • ‘뉴씽’은 주체적으로 학습하고 깊게 생각할 수 있는 기회를 제공하여 수동적으로 정보만 전달하던 기존 뉴스레터의 문제점을 해결하고 사용자가 주체적인 성장을 경험하길 기대합니다.

KakaoTalk_Photo_2023-10-04-02-49-47

나의 생각은 온전히 지키고, 시각은 다채롭게 확장하기

  • ‘뉴씽’은 나의 생각에 온전히 집중할 수 있는 커뮤니티 기능을 제공합니다. 뉴스레터를 읽고 ‘나의 생각’을 먼저 작성하여, 다른 사람들의 의견에 영향을 받지 않고 나의 생각에 집중할 수 있습니다. 생각 작성 후 열리는 커뮤니티를 통해 사람들과 의견을 나누며 시각을 넓혀갈 수 있습니다.

KakaoTalk_Photo_2023-10-04-02-49-47

KakaoTalk_Photo_2023-10-04-02-49-47

지속적으로 동기부여 받고 스스로 학습할 수 있는 서비스

  • 아카이빙 기능을 통해 관심있는 뉴스와 단어를 저장하고, 퀴즈를 통해 오늘 학습한 내용을 재미있게 복습할 수 있습니다. 또한 뉴스 읽기 목표를 설정하고 달성하며 성취감을 느낄 수 있습니다.

KakaoTalk_Photo_2023-10-04-02-49-47


📊 서비스 비즈니스 모델

Phase 1) 서비스 출시 직후 ~ 사용자 수 DAU 300 명 이상 유지 이전

다음과 같은 리워드 획득 및 사용 사이클을 통해 리텐션을 향상시키고, 서비스의 핵심 가치를 유저에게 전달합니다. 이를 통해 유저가 리워드의 필요성을 느끼고, 과금을 통해 리워드를 획득하도록 유도할 수 있습니다.

리워드 획득 리워드 사용
내 생각 작성시, 방울 1 개 획득
생각 더하기 완료시, 방울 2 개 획득
퀴즈 결과에 따라 방울 차등 획득
목표 100% 달성시 방울 1 개 획득
퀴즈 힌트 방울 1 개 사용
안읽은 뉴스레터 열람시 방울 1 개 사용
설문 생성 방울 2 개
의견 추가 열람 3 개당 방울 1 개 사용

KakaoTalk_Photo_2023-10-04-02-49-47


Phase 2) 사용자 수 DAU 300 명 ~ 사용자 수 DAU 1000 명

유료 콘텐츠 및 프리미엄 구독 서비스 실행

  • 프리미엄 구독 서비스 :

    1. 뉴스레터에 추가되는 전문가 의견 확인 가능

    2. ‘생각 나누기’ 기능에서 타 유저의 의견 무한 열람 가능

    3. 취준생을 대상으로 하는 관심 산업 및 기업에 대한 ‘나만의 레포트’ 제공

      • 유저가 설정한 관심 산업과 기업에 대해서 기본적인 정보 + 새로 추가되는 관련 뉴스와 본인의 생각이 반영되는 레포트 제공

      • 특정 산업군에 취업하고자 하는 취준생들에게 필수적인 기능이며, 타 레포트와 달리 실시간성과 본인의 코멘트까지 포함하기 때문에 차별화된 기능으로서, 수익화가 가능할 것이라고 판단됨

KakaoTalk_Photo_2023-10-04-02-49-47

Phase 3) 사용자 수 DAU 1000 명 ~

1️⃣ 앱 배너 및 팝업 광고를 통한 수익 창출

  • 근거 : 뉴씽은 명확한 타겟(20 대 청년층)과 경제, 금융이라는 서비스 컨셉으로 인해 매력적인 홍보 플랫폼이 될 것입니다.

  • 대상 : 청년 대상 경제, 금융 관련 정부 지원 사업 및 은행, 금융사. 증권사

  • 예시 :

    1. 청년 도약 계좌 홍보 예산에 대략 5 억 4000 만원이 편성되었으며 다양한 온오프라인 홍보가 이뤄짐.

    2. 금융사들은 기존의 보수적인 이미지에서 벗어나 젊은 세대가 선호하는 이색 콘텐츠를 선보이며 이들과 소통을 확대하려는 노력하고 있음. -> 광고모델의 변화, 플랫폼, 이색적 팝업스토어, 유튜브 등 다양한 콘텐츠

2️⃣ 기업 뉴스레터 홍보를 통한 수익 창출

  • 근거:

한국신문협회에 따르면 20 개 신문사가 114 종의 뉴스레터를 발행하며, 이를 마케팅 수단으로 활용해 브랜드 포지셔닝, 메시지 공유 및 고객 관계 구축을 목표로 함. 그러나 현재 뉴스레터는 일방적인 정보 전달에 그침. 기업은 뉴씽을 통해 고객의 생각과 의견을 확인하고, 경제와 금융에 관심 있는 20 대 타겟에게 홍보하고 싶다라는 니즈가 있다고 판단됨. 따라서 계약을 맺은 언론사 및 기업의 뉴스레터만 홍보 및 요약 기능을 지원하고, 생각 더하기와 설문 기능을 통해 VOC 까지 제공한다면 효과적인 비즈니스 모델을 수립할 수 있음

KakaoTalk_Photo_2023-10-04-02-49-47


🎨 디자인 무드보드

1️⃣ 서비스 컨셉 및 로고

사용자의 지적인 경제 탐구 활동을 돕는 뉴씽에 적합한 UI를 구성하기 위해 사용자의 지적인 경제 지식 탐구활동을 뜻하는 Intelligent,탐구활동을 통한 사고력 증진을 목표하는 Thoughtful, 경제 지식 학습을 통해 경제적 풍요를 기대하는 well-to-do, 이 세 요소를 기반으로 디자인을 진행했습니다.

로고는 뉴씽의 뉴스레터를 읽고 ‘생각을 떠올리는 과정’을 의미하는 뭉게구름과 그 생각들을 함축한 결과물인 ‘자신만의 의견’을 뜻하는 말풍선을 결합하여 경제 뉴스는 쉽게, 생각은 깊게, 의견은 함께! 라는 라는 뉴씽만의 가치관을 담고 있습니다.

KakaoTalk_Photo_2023-10-04-02-49-47


2️⃣ 캐릭터

구르미는 앞서 설명한 생각을 떠올리는 과정을 의미하는 뭉게구름을 모티브로 경직되어 있는 경제지식을 편안하고 부드럽게 제공하기 위한 안내자로서 탄생하였습니다.

KakaoTalk_Photo_2023-10-04-02-49-47


3️⃣ 디자인시스템

서비스 특성 상, 텍스트 중심의 레아아웃에 적합한 직관적인 UI를 제작하였고, 컬러 시스템 역시 전통적으로 부’를 상징하는 바이올렛 중 쿨한 계열(Han Purple)을 선택하여, 경제 지식 제공자로서 겸비해야 할 신뢰, 차분함 또한 갖추고자 했습니다.

KakaoTalk_Photo_2023-10-04-02-49-47


4️⃣ UI DESIGN1

카드 형식 레이아웃과 이미지 중심 콘텐츠로 사용자의 탐구활동을 최적으로 서포트하도록 구성했습니다. 텍스트 나열 방식이 아닌 콘텐츠 중심으로 레이아웃을 구성하여, 보다 직관적인 정보 리스트를 제공합니다.

KakaoTalk_Photo_2023-10-04-02-49-47


5️⃣ UI DESIGN2

서비스 사용 시, 뉴씽이 낯선 유저를 유저 친화적으로 안내하는 UX 라이팅로, 편안한 사용 경험을 제공하고 중도이탈을 방지합니다. 이미지 중심 구성으로 직관적인 UI를 제공하여 정보 집약적인 페이지임에도 안정감을 느끼게 합니다.

KakaoTalk_Photo_2023-10-04-02-49-47


System Architecture

system_architecture.png

Hexagonal Multi Module

multi-module.png

api-server

  • 프론트와 통신을 담당하는 API 모듈입니다.
  • 외부 요청을 받아 내부 서비스로 전달하고, 내부 서비스의 응답을 외부로 전달합니다.
  • Security 등과 같은 Infrasturcture 코드를 포함하고 있습니다.

batch

  • 주기적으로 실행되는 작업을 담당하는 모듈로, 스케줄러를 통해 주기적으로 실행되는 작업을 수행합니다.
  • 크롤링, 데이터 처리, 데이터 저장 등의 작업을 수행합니다.

application

  • 내부 비즈니스 로직을 담당하고 있는 모듈로 헥사고날 아키텍쳐의 Port와 Adapter 코드가 작성되어 있습니다.
  • 외부 요청을 받아 비즈니스 로직을 수행하고, 결과를 반환합니다.

domain

  • 오로지 POJO 객체만을 가지고 있는 모듈입니다.
  • 도메인 클래스와 도메인 서비스 클래스가 정의될 수 있습니다.
  • 도메인 서비스에는 ‘트랜잭션의 단위’를 정의하며, ‘요청 데이터를 검증’, ‘이벤트를 발생’하는 일 등의 도메인의 비지니스를 작성합니다.

core

  • 공통적으로 사용되는 코드를 담당하는 모듈입니다.
  • 시스템 내 모든 모듈들이 의존할 수 있을만큼 얇은 의존성을 제공합니다.
  • 가능한 사용하지 않습니다.

📜 ERD

ERD.png

⚒️ Tech Stack

Front-end

Android Studio Flutter Dart

Back-end

Spring Boot Spring Security Spring JPA Spring Batch
Amazon EC2 Amazon RDS Amazon S3
Github Actions Swagger Selenium
QueryDSL JWT

Co-Work Tool

Jira Github Slack figma notion

💡 기술 스택 선정 이유

Front-end

  • Android Studio

    • 안드로이드 어플 개발의 생산성과 안정성을 높일 수 있는 통합 개발 환경을 제공합니다.
  • Flutter

    • 단일 코드베이스로 안드로이드와 iOS 앱을 개발할 수 있으며, 빠르고 화려한 UI를 구축할 수 있는 높은 생산성과 확장성을 제공합니다.
  • Dart

    • 플러터와의 통합으로, 강력한 성능과 생산성을 제공합니다.
  • MVVM

    • Model-View-ViewModel로 구성되어, UI와 데이터 처리 로직을 분리하여 코드의 유지보수성을 높이는 아키텍처 패턴입니다.
  • GetX

    • 상태 관리 및 라우팅, 종속성, 테마 등을 처리하기 위한 다양한 기법을 제공하는 라이브러리입니다.
  • http & dio

    • 네트워크 통신 및 데이터베이스 접근을 위한 라이브러리입니다.

Back-end

  • Spring Boot

    • 스프링 프레임워크를 기반으로 자동 설정과 스타터 종속성을 제공하여 웹 애플리케이션 개발과 배포를 신속하게 수행할 수 있도록 돕습니다.
  • JPA (Java Persistence API)

    • SQL 작성 없이 객체 지향적 방식으로 데이터베이스와 상호작용할 수 있게 해주는 자바의 표준 ORM 기술입니다.
  • Querydsl

    • 타입 안전을 보장하는 프레임워크를 통해 복잡한 쿼리를 쉽게 작성하고 컴파일 시점에서 오류를 잡을 수 있습니다.
  • AWS RDS (MySQL)

    • 서버 유지보수나 패치 관리 없이 MySQL 데이터베이스를 운영할 수 있는 AWS의 관리형 서비스입니다.
  • AWS S3 Storage

    • 높은 가용성과 보안을 제공하는 객체 스토리지 서비스로, 어떠한 양의 데이터도 저장하고 검색할 수 있습니다.
  • Java 17

    • 장기적인 안정성과 보안 업데이트를 제공하는 최신 Long-Term Support (LTS) 버전의 자바입니다.
  • Spring Batch

    • 대용량 데이터 처리를 위한 배치 처리 프레임워크로, 스케줄링, 트랜잭션 관리, 재시도, 로깅 등을 지원합니다.
    • Scheduler (Spring Scheduler, Quartz) 와 연동하여 주기적으로 증권 정보 혹은 뉴스를 크롤링 할 때 사용합니다.
  • Spring Security

    • 스프링 기반 애플리케이션의 보안을 강화하며, 인증과 권한 부여, CSRF 방어 등을 포함한 종합적인 보안 솔루션을 제공합니다.
  • JWT (JSON Web Tokens)

    • 서버와 클라이언트 간의 정보를 토큰 형태로 간소화하며, 상태를 저장하지 않는 서비스에 적합한 인증 시스템입니다.
  • GitHub Actions

    • 코드 통합, 테스트, 배포를 자동화하여 개발 워크플로우의 효율성을 향상시키는 CI/CD 도구입니다.
  • Swagger

    • RESTful API의 설계, 빌드, 문서화를 지원하며 프론트와 백엔드 개발자 간의 협업과 API 이해를 증진시키는 소프트웨어 프레임워크입니다.
  • Selenium

    • 동적 크롤링을 위한 웹 애플리케이션 라이브러리입니다.
  • Spring Scheduler

    • 스프링 프레임워크 내에서 주기적인 작업을 쉽게 설정하고 관리할 수 있게 해주는 스케줄링 기능입니다.
  • Jsoup

    • HTML에서 데이터를 파싱하고 조작하는 자바 라이브러리로, 정적 웹 크롤링 및 데이터 추출 작업에 유용합니다.
  • Naver Clova Summary

    • 네이버의 자연어 처리 기술을 사용하여 대량의 텍스트를 자동으로 요약해 주는 도구로, 정보 파악과 의사결정에 효과적입니다.
    • 크롤링한 뉴스 기사를 요약하여 사용자에게 제공합니다.

📌 Convention

Naming Convention

  • 파일 : CamelCase + SnakeCase
  • 클래스명 : PascalCase
  • 함수/변수명 : CamelCase

Branch Naming Convention

  • main
  • develop
  • feature/Issue#-feature
  • hotfix/Issue#-feature
  • refactor/Issue#-feature

Commit Convention

Tag Description
feat Commits that add a new feature.
fix Commits that fix a bug.
hotfix Fix an urgent bug in issue or QA.
build Commits that affect build components.
chore Miscellaneous commits.
style Commits for code styling or format.
docs Commits that affect documentation only.
test Commits that add missing tests or correcting existing tests.
refactor Commits for code refactoring.

Coding Convention

코드를 작성한 의도와 목적을 명확하게 드러냅니다.

  • Variables : 축약어를 사용하지 않습니다. 변수 명에 자료구조를 포함하지 않습니다. (e.g., CarList.java ❌)
  • Methods: lowerCamelCase를 사용합니다. 메소드 명은 동사 및 전치사로 시작합니다. (e.g., getUserInfo())
  • Database Columns: snake_case를 사용합니다. (e.g., member_id)
  • End Points: REST API를 준수합니다. (e.g., GET www.example.com/users/1)

📍 Co-Work Flow

  1. Issue를 생성합니다.
  2. Issue 번호로 시작하는 브랜치를 판 후 개발을 시작합니다.
  3. 개발 완료 후 Pull Request를 생성합니다.
  4. Reviewer는 Code Review를 진행합니다.
  5. Code Review를 바탕으로 개발자는 수정을 진행합니다.
  6. 최종 확인 후 Reviewer가 Merge를 진행합니다.

🐬 Git Flow

git_flow.png