FindBy
๐ŸŒ

FindBy

๊นƒํ—ˆ๋ธŒ ๋งํฌ
ํ•œ ์ค„ ์†Œ๊ฐœ
์ „์Ÿ ์ค‘ ํ—ค์–ด์ง„ ๊ฐ€์กฑ์„ ๋“ฑ๋กํ•˜์—ฌ ๋ˆ„๊ตฐ๊ฐ€์˜ ์ œ๋ณด๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์ง์ ‘ ๊ฒ€์ƒ‰ํ•ด์„œ ๊ฐ€์กฑ์„ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.
๊ทธ๋ฃน
๊ทธ๋ฃน 1
๋ฐœํ‘œ์ž๋ฃŒ
ํŒ€๋ช…
FindBy
์†Œ์† ์ฑ•ํ„ฐ
๋ช…์ง€๋Œ€ํ•™๊ต
ํ–‰์‚ฌ ๊ฒฐ๊ณผ
์˜ˆ์„  ์ง„์ถœ
2023 Solution Challenge ์ฐธ๊ฐ€ ์—ฌ๋ถ€
2023 Solution Challenge ์ฐธ๊ฐ€ ์—ฌ๋ถ€
SDGs ๋ชฉํ‘œ
๋ชฉํ‘œ 16. ํ‰ํ™” ์ •์˜ ๊ฐ•๋ ฅํ•œ ๊ธฐ๊ด€

๐ŸŒฟ ๊ฐœ์š”

ํŒ€์˜ ์•„์ด๋””์–ด์— ๋Œ€ํ•œ ์†Œ๊ฐœ

Team name
  • FindBy
Project name
  • FindBy
ย 
Our Team
  • Team Leader: ์ตœ๋ณ‘์œค (Backend)
  • Team Member: ๋ฐ•์†”์ฐฌ (Backend)
  • Team Member: ์ด์ƒ๋ฏผ (Frontend)
  • Team Member: ์ด์ง€์€ (Frontend)
ย 

Project Intro
์ „์Ÿ ์ค‘ ๊ฐ€์กฑ๊ณผ ํ—ค์–ด์ง€๊ณ , ์ „์Ÿ์ด ๋๋‚œ ์ดํ›„์—๋„ ๋‹ค์‹œ ๊ฐ€์กฑ์„ ๋งŒ๋‚˜์ง€ ๋ชปํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ตญ์ œ์ ์‹ญ์ž์œ„์›ํšŒ์˜ ์ž๋ฃŒ์— ๋”ฐ๋ฅด๋ฉด ์ „์Ÿ ๋ฟ ์•„๋‹ˆ๋ผ ๊ตญ์ œ์ ์ธ ๋ถ„์Ÿ, ํญ๋ ฅ ์‚ฌํƒœ, ์ž์—ฐ ์žฌํ•ด ๋“ฑ์œผ๋กœ ๋ฐœ์ƒํ•˜๋Š” ์ด์‚ฐ๊ฐ€์กฑ์€ 18,000๊ฑด์— ๋‹ฌํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ—ค์–ด์ง„ ๊ฐ€์กฑ์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์ €ํฌ ํŒ€์˜ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฐพ๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ์„ ๋“ฑ๋กํ•˜๊ณ  ๊ฒ€์ƒ‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „์Ÿ ๋„์ค‘ ํ—ค์–ด์ง„ ๊ฐ€์กฑ์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์‹ ์ƒ์„ ๋“ฑ๋กํ•˜๊ณ  ๋ˆ„๊ตฐ๊ฐ€์˜ ์ œ๋ณด๋ฅผ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์žˆ๊ณ  ์ง์ ‘ ๊ฒ€์ƒ‰์„ ํ†ตํ•ด ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€์ƒ์˜ ์—ฐ๋ น๊ณผ ์„ฑ๋ณ„, ์ธ์ƒ์ฐฉ์˜, ํ—ค์–ด์ง„ ๊ณณ ๋“ฑ์˜ ์ •๋ณด๋ฅผ ๋“ฑ๋กํ•ด์„œ ์ œ๋ณด๋ฅผ ๊ธฐ๋‹ค๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 

๐ŸŒฟ ์ œ์•ˆ ๋ฐฐ๊ฒฝ

์„ ํƒํ•œ ์ฃผ์ œ์—์„œ ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ•˜๋Š” ๋ชฉํ‘œ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ๋˜ ๊ทธ์— ๋Œ€ํ•œ ๊ณ„๊ธฐ๋Š” ๋ฌด์—‡์ธ๊ฐ€์š”?

ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ•˜๋Š” ๋ชฉํ‘œ
๐Ÿ’ญ
โ€œ 2022๋…„ 2์›”์— ์‹œ์ž‘๋œ ๋Ÿฌ์‹œ์•„์˜ ์šฐํฌ๋ผ์ด๋‚˜ ์นจ๊ณต ์ดํ›„ ๋ฐœ์ƒํ•œ ํ”ผ๋‚œ๋ฏผ์€ ๋ช‡ ๋ช…์ผ๊นŒ์š”? โ€œ
ย 
notion image
ย 
์œ ์—”๋‚œ๋ฏผ๊ธฐ๊ตฌ UNHCR์— ๋”ฐ๋ฅด๋ฉด 2022๋…„ 2์›” 24์ผ ์ดํ›„ ์šฐํฌ๋ผ์ด๋‚˜์˜ ์ธ๊ตฌ ์ด๋™์€ 796๋งŒ ๋ช…์ด ๋„˜๊ณ , ์ด ๊ฐ€์šด๋ฐ ์ž๊ตญ์„ ํƒˆ์ถœํ•œ ํ”ผ๋‚œ๋ฏผ์€ ๋ฌด๋ ค 591๋งŒ ๋ช…์— ๋‹ฌํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.(2023.01.10 ๊ธฐ์ค€) ์ด๋Š” ์ง€๋‚œ 2์ฐจ ์„ธ๊ณ„๋Œ€์ „ ์ดํ›„ ๋ฐœ์ƒํ•œ ๊ฐ€์žฅ ํฐ ๊ทœ๋ชจ์˜ ํ”ผ๋‚œ๋ฏผ ํ–‰๋ ฌ์ด๋ผ๊ณ  ํ•˜๋Š”๋ฐ์š”, ๊ธด๊ธ‰ํ•œ ์ƒํ™ฉ ์† ํ”ผ๋‚œ๊ธธ์— ์˜ค๋ฅธ ์šฐํฌ๋ผ์ด๋‚˜ ๊ฐ€์กฑ๋“ค์—๊ฒŒ ์ง€์†์ ์ธ ๋„์›€์ด ์ ˆ์‹คํ•ด ๋ณด์ž…๋‹ˆ๋‹ค.
ย 
์ €ํฌ๋Š” ๊ทธ ๊ณผ์ •์—์„œ ํ—ค์–ด์ง„ ๊ฐ€์กฑ์„ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ๋ชฉํ‘œ๋กœ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
๊ทธ์— ๋Œ€ํ•œ ๊ณ„๊ธฐ
๋ชจ๋“  ๊ฐœ์ธ์€ ํ–‰๋ณตํ•ด์•ผ ํ•˜๊ณ  ์‚ฌ๋ž‘ํ•˜๋Š” ๊ฐ€์กฑ๊ณผ ํ•จ๊ป˜ ํ•  ๊ถŒ๋ฆฌ๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ž์‹ ์˜ ์˜์ง€์™€๋Š” ๋ณ„๊ฐœ๋กœ ๊ฐ€์กฑ๊ณผ ํ—ค์–ด์ง€๊ณ  ๋ณด์‚ดํ•Œ์„ ๋ฐ›์ง€ ๋ชปํ•œ๋‹ค๋ฉด ๋” ๋งŽ์€ ํญ๋ ฅ์ ์ธ ๊ฐˆ๋“ฑ์— ๋…ธ์ถœ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
์ €ํฌ ์„œ๋น„์Šค๋Š” ์ด๋ฅธ ์‹œ์ผ ๋‚ด๋กœ ๊ฐ€์กฑ๊ณผ ์žฌ๊ฒฐํ•ฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ฐพ๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ์„ ์ฐพ๋„๋ก ๋„์™€์ค๋‹ˆ๋‹ค.
ย 
์ œ๋ณด๋ฅผ ํ†ตํ•ด ์ž์‹ ์ด ์ฐพ๊ณ ์ž ํ•˜๋Š” ์‚ฌ๋žŒ์˜ ์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜๋„ ์žˆ์œผ๋ฉฐ ์ „์Ÿ ๋ฐ ์žฌํ•ด์™€ ๊ฐ™์€ ํ˜ผ๋ž€์Šค๋Ÿฌ์šด ์ƒํ™ฉ ์†์—์„œ ์‹ค์ข…์ž๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•œ ์ผ์ข…์˜ ์•„์นด์ด๋ธŒ ์—ญํ• ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํญ๋ ฅ์ ์ธ ๊ฐˆ๋“ฑ์— ์—ฐ๋ฃจ๋œ ๋งŽ์€ ์‚ฌ๋žŒ์—๊ฒŒ ํ•œ ์ค„๊ธฐ ๋น›์ด ๋˜์–ด์ฃผ๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.
ย 
์ €ํฌ ์„œ๋น„์Šค๋ฅผ ํ†ตํ•ด ๊ฐ€์กฑ์˜ ํ’ˆ์œผ๋กœ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์ด ๋งŽ์•„์ง€๊ธฐ๋ฅผ ๋ฐ”๋žŒ์—์„œ ์ €ํฌ์˜ ์„œ๋น„์Šค๋ฅผ ๊ตฌ์ƒํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ์ธก๋ฉด์—์„œ ์ €ํฌ ์„œ๋น„์Šค๋Š” ์œ ์—”์ด ์„ ์ •ํ•œ ์ง€์† ๊ฐ€๋Šฅํ•œ ๋ฐœ์ „ ๋ชฉํ‘œ 17๊ฐ€์ง€ ์ฃผ์ œ ์ค‘ ํ•˜๋‚˜์ธ 16. ํ‰ํ™”, ์ •์˜, ๊ฐ•๋ ฅํ•œ ๊ธฐ๊ด€์— ๊ฐ€์žฅ ์ ํ•ฉํ•œ ์„œ๋น„์Šค๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 

๐ŸŒฟ ํ•ด๊ฒฐ ๋ฐ ๊ตฌํ˜„ ๋ฐฉ์•ˆ

์ œ์‹œํ•œ ์ฃผ์ œ๋ฅผ ์–ด๋–ค ๊ตฌ๊ธ€์˜ ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•ด ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•  ์˜ˆ์ •์ธ๊ฐ€์š”?

์›น ์„œ๋น„์Šค ๊ตฌํ˜„
  • ๊ฒŒ์‹œํŒ ํ˜•์‹์œผ๋กœ ์ฐพ๊ณ ์ž ํ•˜๋Š” ์‚ฌ๋žŒ์„ ๊ฒ€์ƒ‰ํ•˜๊ณ  ๊ฒŒ์‹œ๋ฌผ์„ ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฉ”์ธ ํŽ˜์ด์ง€๋Š” ๊ทธ๋ฆฌ๋“œํ˜• ๊ฒŒ์‹œํŒ์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  • ์ฐพ๊ณ ์ž ํ•˜๋Š” ์‚ฌ๋žŒ์˜ ์ธ์ƒ์ฐฉ์˜์™€ ๋ถ€๊ฐ€ ์ •๋ณด๋ฅผ ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค.
  • ์ œ๋ณด๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์ด๋ฉ”์ผ๊ณผ ํ•จ๊ป˜ ๊ฒŒ์‹œ๋ฌผ์„ ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค.
  • ์ž์‹ ์˜ ๊ฒŒ์‹œ๋ฌผ์„ ์ž‘์„ฑํ•  ๋•Œ ๊ฐ„๋‹จํ•œ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ๋กœ๊ทธ์ธ ์—†์ด ๋ˆ„๊ตฌ๋‚˜ ๊ฐ„ํŽธํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฐฑ์—”๋“œ์—์„œ ์‚ฌ์šฉํ•  ํด๋ผ์šฐ๋“œ๋ฅผ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•ด GCP๋ฅผ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”ง Tech Stack


Frontend
  • React
    • eslint
    • prettier
  • Typescript
Backend
  • Spring Framework 2.7.x
  • Spring Data JPA (Querydsl)
  • Java11
ย 
Infra
  • GCP
    • GCE
    • Cloud Storage
    • SQL (MySQL)
    • Cloud DNS
  • Nginx
  • MySQL 8.x
ย 
๊ธฐํƒ€ ์‚ฌ์šฉ ํˆด
  • Notion
  • Slack
  • Figma
ย 

๐ŸŒฟ ๊ธฐ๋Œ€ ํšจ๊ณผ

์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ์–ด๋–ค ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋‚˜์š”? ๋˜ ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์–ด๋–ป๊ฒŒ ๊ฐœ์„ ์‹œ์ผœ๋‚˜๊ฐˆ ๊ฒƒ์ธ๊ฐ€์š”?

ํ”„๋กœ์ ํŠธ๊ฐ€ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ
  • ์ „์Ÿ ์ค‘ ํ—ค์–ด์ง„ ๊ฐ€์กฑ์„ ๋งŒ๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ „์Ÿ ๊ณ ์•„ ๋ฌธ์ œ๋ฅผ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ถ„์Ÿ ์‚ฌํƒœ๋กœ ๋ฐœ์ƒํ•˜๋Š” ์ˆ˜ ๋งŽ์€ ์ด์‚ฐ ๊ฐ€์กฑ ๋ฌธ์ œ ํ•ด๊ฒฐ์— ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.
  • ํญ๋ ฅ ์‚ฌํƒœ๋กœ ์ธํ•œ ์‚ฌ๋žŒ๋“ค์˜ ๊ณ ํ†ต๊ณผ ์Šฌํ””์„ ๋œ์–ด์ค๋‹ˆ๋‹ค.
  • ์ „์Ÿ ๋ฟ ์•„๋‹ˆ๋ผ ํญ๋ ฅ ์‚ฌํƒœ, ์ž์—ฐ ์žฌํ•ด, ๋‹ค์–‘ํ•œ ๊ตญ์ œ ๋ถ„์Ÿ ์ค‘ ํ—ค์–ด์ง„ ์‚ฌ๋žŒ๋“ค๊ณผ ์žฌํšŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
ํ”„๋กœ์ ํŠธ์˜ ๊ฐœ์„ 
  • ์ „์Ÿ ์ค‘ ํ—ค์–ด์ง„ ์‚ฌ๋žŒ๋“ค์„ ์ด์–ด์ฃผ๋Š” ๊ฒƒ ์™ธ์—๋„ ๋ถ„์Ÿ์— ํœ˜๋ง๋ฆฐ ์‚ฌ๋žŒ๋“ค์ด ์•ˆ์ „์„ ์ œ๊ณต ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์ง€์—ญ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ „์Ÿ ํ”ผํ•ด ์ง€์—ญ๊ณผ ์œ„ํ—˜ ์ง€์—ญ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์ง€์›ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ถ„์Ÿ ํ”ผํ•ด์ž๋“ค์„ ์ง€์ง€ํ•˜๊ณ  ์‘์›์˜ ๋ฉ”์‹œ์ง€๋ฅผ ์ „ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 

์ฐธ๊ณ ํ•œ ์ž๋ฃŒ์˜ ์ถœ์ฒ˜
ย 
ย 
FindBy