1 minute read

.

2025 ๋ธ”๋ ˆ์ด๋ฒ„์Šค MVP ํ•ด์ปคํ†ค์— 2์›” 9์ผ๋ถ€ํ„ฐ 2์›” 20์ผ๊นŒ์ง€ 10์ผ๋™์•ˆ ๋ฐฑ์—”๋“œ๋กœ ์ฐธ์—ฌํ–ˆ๋‹ค. โ€œ์š”์–‘๋ณดํ˜ธ์‚ฌ์™€ ๋…ธ์ธ์˜ ์ตœ์  ๋งค์นญโ€์„ ํ†ตํ•ด ์žฌ๊ฐ€๋…ธ์ธ๋ณต์ง€์„ผํ„ฐ์˜ ๊ตฌ์ธ๋‚œ์„ ํ•ด๊ฒฐํ•˜๊ณ  ๋งž์ถคํ˜• ๋Œ๋ด„ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋งค์นญ ํ”Œ๋žซํผ์„ ์ œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ์˜€๋‹ค.

ํŒ€์€ ๋žœ๋ค์œผ๋กœ ๋ฐฐ์ • ๋˜์—ˆ๊ณ , ๊ทธ ๊ฒฐ๊ณผ ํ˜„์žฌ ๊ฐœ๋ฐœ ๋ถ„์•ผ๋กœ ๊ทผ๋ฌดํ•˜๊ณ  ๊ณ„์‹  ์ง์žฅ์ธ๋“ค๊ณผ ๋Œ€ํ•™์ƒ ๋“ฑ ๋‹ค์–‘ํ•œ ์ง์ข…์˜ ์‚ฌ๋žŒ๋“ค๊ณผ ํ˜‘์—…ํ•  ๊ธฐํšŒ๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋˜์—ˆ๋‹ค. 10์ผ ๊ฐ„์˜ ์งง์€ ๊ธฐ๊ฐ„๋™์•ˆ mvp๋ฅผ ๊ฐœ๋ฐœํ•ด๋ณด๋ฉฐ ํ˜‘์—…๊ณผ ๊ฐœ๋ฐœ์˜ ๊ฒฝํ—˜์„ ์Œ“์„ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํŒŒ์ด๋„๋ฐ์ด ๋ฐœํ‘œ์™€ ์›น์•ฑ ์‹œ์—ฐ์„ ํ†ตํ•ด ํ‰๊ฐ€๋ฅผ ๋ฐ›์•˜๋‹ค. ๊ทธ ๊ฒฐ๊ณผ ๊ธฐ์ˆ  ๊ตฌํ˜„ 1๋“ฑ โ€œํ…Œํฌ์ธ์‚ฌ์ดํŠธ์ƒโ€์„ ์ˆ˜์—ฌํ•˜์˜€๋‹ค.

๋จผ์ € ํ”„๋กœ์ ํŠธ ๊ฐœ์š”๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.


ํ”„๋กœ์ ํŠธ ๊ฐœ์š”
๊ฐœ๋ฐœ ๊ธฐ๊ฐ„ 2025.02.09 ~ 2025.02.20 (10์ผ)
ํ”Œ๋žซํผ Web
๊ฐœ๋ฐœ ์ธ์› 9๋ช… (PM1 / ๋””์ž์ธ2 / ๋ฐฑ์—”๋“œ3 / ํ”„๋ก ํŠธ์—”๋“œ3)
๋‹ด๋‹น ์—ญํ•  - ๋ฐฑ์—”๋“œ โ€ข ์š”์–‘๋ณดํ˜ธ์‚ฌ ์ •๋ณด ๋“ฑ๋ก ๊ตฌํ˜„ (๊ธฐ์—ฌ๋„ 100%)
โ€ข ์„ผํ„ฐ ๊ด€๋ฆฌ์ž ์ •๋ณด ๋“ฑ๋ก ๊ตฌํ˜„ (๊ธฐ์—ฌ๋„ 100%)
โ€ข ์š”์–‘๋ณดํ˜ธ์‚ฌ ๊ตฌ์ธ-๊ตฌ์ง ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ธฐ๋Šฅ ๊ตฌํ˜„ (๊ธฐ์—ฌ๋„ 60%)
๐Ÿ”’๊ฐœ๋ฐœ ํ™˜๊ฒฝ
๐Ÿš€ Stacks HTML, CSS(SCSS), JavaScript, React.js, Node.js, MongoDB
๐Ÿ›  Tools Figma, Git
๐Ÿ‘ฅย Collaboration GitHub, Notion, Discord

ํ”„๋กœ์ ํŠธ ๋ฐœํ‘œ ๋ฐ ์‹œ์—ฐ


ํ”„๋กœ์ ํŠธ

ํ”„๋กœ์ ํŠธ ๋ฐœํ‘œ ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•˜๋‹ค.


์ž”๋ฌผ๊ฒฐ API ๋ช…์„ธ์„œ

์ž”๋ฌผ๊ฒฐ API ๋ช…์„ธ์„œ
์„น์…˜ Method URL ๊ธฐ๋Šฅ/์„ค๋ช…
์š”์–‘๋ณดํ˜ธ์‚ฌ GET /api/caregiver?elderId={elderId} ์š”์–‘๋ณดํ˜ธ์‚ฌ ์ •๋ณด ์กฐํšŒ API
elderId์— ํ•ด๋‹นํ•˜๋Š” ์–ด๋ฅด์‹ ์˜ ์ •๋ณด์™€ ๋งค์นญ๋˜๋Š” ์š”์–‘๋ณดํ˜ธ์‚ฌ ์ •๋ณด ์š”์ฒญ
query parameter: elderId (Number)
์š”์–‘๋ณดํ˜ธ์‚ฌ GET /api/caregiver?id={id} ํŠน์ • ์š”์–‘๋ณดํ˜ธ์‚ฌ ๋ฐ์ดํ„ฐ ์กฐํšŒ API
query parameter: id (Number)
์š”์–‘๋ณดํ˜ธ์‚ฌ GET /api/caregiver ์š”์–‘๋ณดํ˜ธ์‚ฌ ๋ชฉ๋ก ์กฐํšŒ API
์š”์–‘๋ณดํ˜ธ์‚ฌ PATCH /api/caregiver ํŠน์ • ์š”์–‘๋ณดํ˜ธ์‚ฌ์˜ ํ™œ๋™ ์—ฌ๋ถ€ on/off API
body: {
  id: caregiver_id,
  isActive: boolean
}
์–ด๋ฅด์‹  GET /api/elders ์–ด๋ฅด์‹  ๋ชฉ๋ก ์กฐํšŒ API
๊ด€๋ฆฌ์ž GET /api/admin?id={id} ํŠน์ • ๊ด€๋ฆฌ์ž ์ •๋ณด ์กฐํšŒ API
query parameter: id (Number)
์ œ์•ˆ GET /api/propose?caregiverId={caregiverId} ํŠน์ • ์š”์–‘๋ณดํ˜ธ์‚ฌ์˜ ์ œ์•ˆ ๋ชฉ๋ก ์กฐํšŒ API
query parameter: caregiverId (Number)
์ œ์•ˆ GET /api/propose/caregiverId={caregiverId} ํŠน์ • ์š”์–‘๋ณดํ˜ธ์‚ฌ์˜ [์ง„ํ–‰ ์ค‘/์ข…๋ฃŒ] ๋œ ์ œ์•ˆ ๋ชฉ๋ก
query paramter: caregiverId (Number)
์ œ์•ˆ POST /api/propose ์ƒˆ๋กœ์šด ์ œ์•ˆ ์ถ”๊ฐ€ API
interface {
  caregiverId: Number,
  elderId: Number,
  type: "pending" | "accepted" | "rejected"
}
์นด์นด์˜ค GET /api/kakao-search?query={query} ์นด์นด์˜ค ์ฃผ์†Œ ์กฐํšŒ API
query parameter: query (String) โ† ์ฃผ์†Œ ์ •๋ณด

์ˆ˜์ƒ


ํšŒ๊ณ 

๋ธ”๋ ˆ์ด๋ฒ„์Šค MVP ํ•ด์ปคํ†ค ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ํ”„๋ก ํŠธ์—”๋“œ์™€ ๋ฐฑ์—”๋“œ ํŒ€ ๊ฐ„์˜ ์˜์‚ฌ์†Œํ†ต์—์„œ ์–ด๋ ค์›€์„ ๊ฒช์—ˆ๋‹ค. ์ดˆ๊ธฐ ๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ ํ”„๋ก ํŠธ์—”๋“œ ํŒ€์›๋“ค์ด ๋ฐฑ์—”๋“œ ํŒ€๊ณผ์˜ ์‚ฌ์ „ ํ˜‘์˜ ์—†์ด ์ž„์˜๋กœ API๋ฅผ ์ž‘์„ฑํ–ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ๋ฐฑ์—”๋“œ์—์„œ ์ž‘์—… ์ค‘์ธ API์˜ ์ผ๊ด€์„ฑ์ด ๋ฌด๋„ˆ์ง€๊ณ , ์„œ๋กœ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•˜๋ฉด์„œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ์ด ๋ฌธ์ œ๋Š” ๋‹จ์ˆœํžˆ ๊ธฐ์ˆ  ๋ถ€๋ถ„์˜ ์˜ค๋ฅ˜๋ฅผ ๋„˜์–ด์„œ ํŒ€ ์ „์ฒด์˜ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ๋ฐฉ์‹ ์ „๋ฐ˜์— ๋Œ€ํ•ด ์ƒ๊ฐํ•ด๋ณด๊ฒŒ ๋œ ๊ณ„๊ธฐ๊ฐ€ ๋˜์—ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ BE ์ธก์—์„œ ์ž‘์„ฑํ•œ API ๋‚ด์šฉ์„ ๊ณต์œ ํ–ˆ๊ณ , ๋ฒก์—”๋“œ์˜ ์‹ค์ œ ๊ตฌํ˜„ ๋ฐฉํ–ฅ์„ ์ž์„ธํ•˜๊ฒŒ ์„ค๋ช…ํ–ˆ๋‹ค. ์—ฌ๋Ÿฌ ๋ฒˆ์˜ ํšŒ์˜๋ฅผ ๊ฑฐ์ณ์„œ ๋ช…์‹œ์ ์œผ๋กœ API ๋ช…์„ธ์„œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  Postman์„ ์‚ฌ์šฉํ•˜์—ฌ API๋ฅผ ๊ฒ€์ฆํ•ด๋‚˜๊ฐ”๋‹ค. ์ด์ฒ˜๋Ÿผ ํ”„๋กœ์ ํŠธ ํ˜‘์—…์— ์žˆ์–ด์„œ๋Š” ์ง€์†์ ์œผ๋กœ ์†Œํ†ตํ•˜๋ฉฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด๋‚˜๊ฐ€๋ ค๋Š” ์ ๊ทน์ ์ธ ํƒœ๋„๊ฐ€ ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค.