🦁2025 λ©‹μŸμ΄ μ‚¬μžμ²˜λŸΌ 해컀톀 회고둝🦁

μ±„μž¬ν—ŒΒ·7일 μ „
post-thumbnail

ν”„λ‘œμ νŠΈ μ†Œκ°œ: https://github.com/LuckyB-key/Back-End/blob/main/README.md

λ©‹μŸμ΄ μ‚¬μžμ²˜λŸΌ μ „κ΅­ μ—°ν•© 동아리 해컀톀은 μ „κ΅­ κ°μ§€μ˜ λŒ€ν•™μ—μ„œ ν™œλ™ν•˜λŠ” λ©‹μŸμ΄ μ‚¬μžμ²˜λŸΌ 동아리원듀이 ν•œμžλ¦¬μ— λͺ¨μ—¬, 짧은 μ‹œκ°„ μ•ˆμ— ν•˜λ‚˜μ˜ μ„œλΉ„μŠ€λ₯΄ κΈ°νšν•˜κ³  κ΅¬ν˜„ν•΄ λ³΄λŠ” μ§‘μ€‘ν˜• μ‹€μ „ 개발 행사이닀.

🦁 해컀톀을 ν•˜κΈ°μ „!

해컀톀은 8/23~8/24κΉŒμ§€ 2μΌλ™μ•ˆ 무박2일둜 μ§„ν–‰ν•˜μ˜€κ³ , 7μ›” 21일에 νŒ€λΉŒλ”©κ³Ό 주제 λ°œν‘œλ₯Ό κ³΅μ§€ν•΄μ£Όμ—ˆλ‹€. νŒ€λΉŒλ”©μ€ 각 μ†Œμ† λŒ€ν•™μ— μžˆλŠ” 동아리 μš΄μ˜μ§„λ‹˜λ“€μ΄ κ΅¬μ„±ν•΄μ£Όμ—ˆκ³ , νŒ€ λΉŒλ”©μ΄ κ³΅μ§€λœ ν›„ λ°”λ‘œ νŒ€μ›λ“€λΌλ¦¬ λ”°λ‘œ λͺ¨μ—¬ μ£Όμ œμ— λΆ€ν•©ν•œ 아이디어λ₯Ό μˆ˜μ§‘ν•˜κΈ° μ‹œμž‘ν•˜μ˜€κ³ , 8μ›” μ€‘μˆœ μ―€μ—λŠ” μ €λ²ˆ κΈ°μˆ˜μ— λŒ€νšŒμ— λ‚˜κ°„ λ©˜ν† λ‹˜κ³Ό λ§Œλ‚˜ νŒ€μ˜ 진행상황과 λŒ€νšŒμ— μ€€λΉ„ν•˜λ©΄μ„œ ν•„μš”ν•œκ²ƒλ“€, λ“± ν”Όλ“œλ°±μ„ κ°€μ§€λŠ” μ‹œκ°„μ„ κ°–κ²Œ λ˜μ—ˆλ‹€.

πŸ“œ 아이디어 기획

7μ›” 21일에 λ°œν‘œλœ ν•΄μ»€ν†€μ˜ μ£Όμ œλŠ” β€œμš°λ¦¬ μ§€μ—­μ˜ 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•œ 상생 μ†Œν”„νŠΈμ›¨μ–΄β€μ˜€λ‹€. νŒ€ λΉŒλ”©μ΄ 이루어진 이후, 우리 νŒ€μ€ μ£Όμ œμ— λΆ€ν•©ν•˜λŠ” 아이디어λ₯Ό κ³ λ―Όν•˜κΈ° μ‹œμž‘ν–ˆκ³  κ·Έ κ²°κ³Ό 폭염 μ‰Όν„° μΆ”μ²œ 및 관리 μ‹œμŠ€ν…œμ„ κ°œλ°œν•˜μžλŠ” 결둠에 λ„λ‹¬ν–ˆλ‹€.

이 아이디어λ₯Ό λ– μ˜¬λ¦¬κ²Œ 된 λ°°κ²½μ—λŠ” 우리 지역이 λŒ€κ΅¬λΌλŠ” 점이 μžˆμ—ˆλ‹€. λŒ€κ΅¬λŠ” μ—¬λ¦„μ² λ§Œ 되면 β€˜λŒ€ν”„λ¦¬μΉ΄β€™λΌλŠ” 별λͺ…이 생길 만큼 λ¬΄λ”μœ„κ°€ μ‹¬ν•œ 지역이닀. μ΄λŸ¬ν•œ ν™˜κ²½ μ†μ—μ„œ 여름철 폭염이 μ‹¬ν•΄μ§ˆμˆ˜λ‘ λ…Έμ•½μž, μ•Όμ™Έ 근무자, 이동 쀑인 μ‹œλ―Όλ“€μ΄ μž μ‹œλΌλ„ μ¦‰μ‹œ 쉴 수 μžˆλŠ” κ³΅κ°„μ˜ ν•„μš”μ„±μ΄ 크닀고 λŠκΌˆλ‹€. 이에 μš°λ¦¬λŠ” λ¬΄λ”μœ„κ°€ 일상이 된 μ§€μ—­μ—μ„œ λ¬΄λ”μœ„ μ‰Όν„°λ₯Ό 더 효과적으둜 ν™œμš©ν•  수 μžˆλŠ” 방법을 κ³ λ―Όν•˜κ²Œ λ˜μ—ˆλ‹€.

ν˜„μž¬λ„ λ¬΄λ”μœ„ μ‰Όν„°λŠ” 운영되고 μžˆμ§€λ§Œ, μ—¬λŸ¬ ν•œκ³„λ‘œ 인해 μ œλŒ€λ‘œ ν™œμš©λ˜μ§€ λͺ»ν•˜κ³  μžˆλ‹€. λŒ€ν‘œμ μΈ λ¬Έμ œμ μ€ λ‹€μŒκ³Ό κ°™λ‹€.

<문제 인식>

  • 폭염 μ‰Όν„°μ˜ μœ„μΉ˜λ₯Ό μ•ŒκΈ° μ–΄λ ΅κ³ 
  • κ°€κΉŒμš΄ μ‰Όν„°κ°€ ν˜Όμž‘ν•œμ§€ μ—¬λΆ€λ₯Ό μ•Œ 수 μ—†μœΌλ©°
  • λ‹¨μˆœν•œ μœ„μΉ˜ μ •λ³΄λ§Œ μ œκ³΅λ˜μ–΄ β€œμ–΄λ””κ°€ λ‚˜μ—κ²Œ κ°€μž₯ μ ν•©ν•œ 쉼터인지” νŒλ‹¨ν•˜κΈ° μ–΄λ ΅λ‹€

즉, μ‘΄μž¬λŠ” ν•˜μ§€λ§Œ μΆ©λΆ„νžˆ ν™œμš©λ˜μ§€ λͺ»ν•˜κ³  μžˆλŠ” 곡곡 μΈν”„λΌλΌλŠ” 점이 문제라고 νŒλ‹¨ν–ˆλ‹€.
μ΄λŸ¬ν•œ 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ μš°λ¦¬λŠ” κΈ°μ‘΄ λ¬΄λ”μœ„ μ‰Όν„°μ˜ μž₯점을 더 잘 λ“œλŸ¬λ‚΄κ³ , λˆ„κ΅¬λ‚˜ μ‰½κ²Œ μ ‘κ·Όν•  수 μžˆλ„λ‘ λ•λŠ” 폭염 μ‰Όν„° μΆ”μ²œ 및 관리 μ‹œμŠ€ν…œμ„ μ•„μ΄λ””μ–΄λ‘œ κΈ°νšν•˜κ²Œ λ˜μ—ˆλ‹€.

✨ 핡심 κΈ°λŠ₯

1) πŸ”₯ AI 기반 폭염 μ‰Όν„° μΆ”μ²œ

Lucky B-KeyλŠ” λ‹¨μˆœνžˆ β€œκ°€μž₯ κ°€κΉŒμš΄ 쉼터”λ₯Ό λ³΄μ—¬μ£ΌλŠ” μ„œλΉ„μŠ€κ°€ μ•„λ‹ˆλ‹€.
μ‚¬μš©μžμ˜ ν˜„μž¬ μœ„μΉ˜λ₯Ό κΈ°μ€€μœΌλ‘œ 거리뿐만 μ•„λ‹ˆλΌ νŽΈμ˜μ‹œμ„€, 수용 인원, μ˜ˆμƒ ν˜Όμž‘λ„κΉŒμ§€ ν•¨κ»˜ κ³ λ €ν•΄, μ§€κΈˆ μƒν™©μ—μ„œ κ°€μž₯ μ ν•©ν•œ 폭염 μ‰Όν„°λ₯Ό AIκ°€ μΆ”μ²œν•œλ‹€.
이λ₯Ό 톡해 μ‚¬μš©μžλŠ” μ—¬λŸ¬ μ‰Όν„°λ₯Ό 일일이 λΉ„κ΅ν•˜μ§€ μ•Šμ•„λ„, μžμ‹ μ—κ²Œ λ§žλŠ” μ‰Όν„°λ₯Ό λΉ λ₯΄κ²Œ 선택할 수 μžˆλ‹€.


2) πŸ“Š ν˜Όμž‘λ„ 예츑

μ‰Όν„°λ₯Ό 찾을 λ•Œ κ°€μž₯ κ±±μ •λ˜λŠ” λΆ€λΆ„ 쀑 ν•˜λ‚˜λŠ” β€œμ§€κΈˆ 가도 μžλ¦¬κ°€ μžˆμ„κΉŒ?β€λΌλŠ” 점이닀.
이λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ μ‹œκ°„λŒ€, μš”μΌ, κ³„μ ˆ 데이터λ₯Ό 기반으둜 μ‰Όν„°μ˜ ν˜Όμž‘λ„λ₯Ό μ˜ˆμΈ‘ν•˜λŠ” κΈ°λŠ₯을 κ΅¬ν˜„ν–ˆλ‹€.
μ‚¬μš©μžλŠ” μ‰Όν„° λ°©λ¬Έ 전에 혼작 μ—¬λΆ€λ₯Ό 미리 확인할 수 μžˆμ–΄, 보닀 효율적으둜 μ‰Όν„°λ₯Ό μ΄μš©ν•  수 μžˆλ‹€.


3) πŸ“± QR 체크인 μ‹œμŠ€ν…œ

각 μ‰Όν„°μ—λŠ” κ³ μœ ν•œ QR μ½”λ“œκ°€ λΆ€μ—¬λ˜λ©°, λ°©λ¬Έ μ‹œ QR μ½”λ“œλ₯Ό μŠ€μΊ”ν•΄ 체크인을 μ§„ν–‰ν•  수 μžˆλ‹€.
μ΄λ ‡κ²Œ μˆ˜μ§‘λœ λ°©λ¬Έ λ°μ΄ν„°λŠ” λ‹¨μˆœ 기둝에 κ·ΈμΉ˜μ§€ μ•Šκ³ , 이후 ν˜Όμž‘λ„ 예츑의 기초 λ°μ΄ν„°λ‘œ ν™œμš©λœλ‹€.
이λ₯Ό 톡해 μ‹œκ°„μ΄ μ§€λ‚ μˆ˜λ‘ 더 μ •ν™•ν•œ 예츑과 μΆ”μ²œμ΄ κ°€λŠ₯ν•˜λ„λ‘ μ„€κ³„ν–ˆλ‹€.


πŸ–₯️ 기술 μŠ€νƒ

λ°±μ—”λ“œλŠ” Spring Boot와 JPAλ₯Ό 기반으둜 κ΅¬ν˜„ν–ˆμœΌλ©°,
MariaDBλ₯Ό μ‚¬μš©ν•΄ 데이터λ₯Ό κ΄€λ¦¬ν–ˆλ‹€.
이미지 μ—…λ‘œλ“œλŠ” AWS S3λ₯Ό ν™œμš©ν–ˆκ³ ,
μ‰Όν„° μΆ”μ²œκ³Ό ν˜Όμž‘λ„ μ˜ˆμΈ‘μ—λŠ” OpenAI APIλ₯Ό μ‚¬μš©ν•΄ AI 기반 κΈ°λŠ₯을 κ΅¬ν˜„ν–ˆλ‹€.

  • Framework: Spring Boot 3.2.1
  • Language: Java 17
  • Database: MariaDB (운영), H2 (ν…ŒμŠ€νŠΈ)
  • ORM: JPA/Hibernate
  • Security: Spring Security + JWT
  • Build Tool: Gradle
  • Cloud Storage: AWS S3
  • AI: OpenAI GPT API

πŸŽƒ κ°œλ°œν•˜λ©΄μ„œ 신경쓴점

ν•΄μ»€ν†€μ΄λΌλŠ” λŒ€νšŒμ™€ νŒ€ ν”„λ‘œμ νŠΈμ— 처음 μ°Έμ—¬ν•˜λ‹€ λ³΄λ‹ˆ, μ΄ˆλ°˜μ—λŠ” 기술적인 λΆ€λΆ„μ—μ„œ 적극적으둜 λ‚˜μ„œκΈ° μ–΄λ €μ› λ‹€. λ©‹μŸμ΄ μ‚¬μžμ²˜λŸΌ 동아리 μ•„κΈ°μ‚¬μžλ‘œμ„œ ꡐ윑 ν”„λ‘œκ·Έλž¨μ„ μˆ˜κ°•ν•˜κΈ΄ ν–ˆμ§€λ§Œ, 학ꡐ μˆ˜μ—…κ³Ό λ³‘ν–‰ν•˜λ©° μ£Ό 1회, 4μ£Όκ°„ μ§„ν–‰λœ λ°±μ—”λ“œ κ΅μœ‘λ§ŒμœΌλ‘œλŠ” μ‹€μ œ ν”„λ‘œμ νŠΈλ₯Ό μ£Όλ„ν•˜κΈ°μ—λŠ” 깊이 μžˆλŠ” 이해가 λΆ€μ‘±ν•˜λ‹€κ³  λŠκΌˆλ‹€.

특히 λ°±μ—”λ“œμ—μ„œ ν•˜λ‚˜μ˜ κΈ°λŠ₯이 κ΅¬ν˜„λ˜κΈ°κΉŒμ§€ API μš”μ²­, 인증 처리, λΉ„μ¦ˆλ‹ˆμŠ€ 둜직, λ°μ΄ν„°λ² μ΄μŠ€ μ €μž₯, 응닡 λ°˜ν™˜μœΌλ‘œ μ΄μ–΄μ§€λŠ” 전체 흐름을 ν•œ λ²ˆμ— μ΄ν•΄ν•˜λŠ” 것이 κ°€μž₯ μ–΄λ €μ› λ‹€. μ™œλƒν•˜λ©΄ ꡐ윑 ν”„λ‘œκ·Έλž¨ 기간쀑 ν•˜λ‚˜μ˜ μ„œλΉ„μŠ€λ₯Ό λ§Œλ“œλŠ”κ²Œ μ•„λ‹ˆλΌ 둜그인 κΈ°λŠ₯κ³Ό 같은 ν•˜λ‚˜μ˜ κΈ°λŠ₯을 λ§Œλ“œλŠ”κ²ƒμ„ λ°°μ› κΈ° λ•Œλ¬Έμ— 각 기술이 λ”°λ‘œ μ‘΄μž¬ν•˜λŠ” 것이 μ•„λ‹ˆλΌ ν•˜λ‚˜μ˜ μ„œλΉ„μŠ€ μ•ˆμ—μ„œ 유기적으둜 μ—°κ²°λ˜μ–΄ μžˆλ‹€λŠ” 점이 μ²˜μŒμ—λŠ” λ‚―μ„€κ²Œ λ‹€κ°€μ™”λ‹€.

κ·ΈλŸΌμ—λ„ λΆˆκ΅¬ν•˜κ³  이번 학기에 μˆ˜κ°•ν•œ μ†Œν”„νŠΈμ›¨μ–΄κ³΅ν•™ κ³Όλͺ©μ—μ„œ 이둠으둜 배운 개발 κ³Όμ •κ³Ό 방법둠을 λ– μ˜¬λ¦¬λ©°, νŒ€μ˜ λ…Όμ˜ 과정에 적극적으둜 μ°Έμ—¬ν•˜λ €κ³  λ…Έλ ₯ν–ˆλ‹€. κΈ°λŠ₯ ν•˜λ‚˜ν•˜λ‚˜κ°€ μ™œ ν•„μš”ν•œμ§€, ν•΄μ»€ν†€μ΄λΌλŠ” μ œν•œλœ μ‹œκ°„ μ•ˆμ—μ„œ μ–΄λ–€ κΈ°λŠ₯을 μš°μ„ μ μœΌλ‘œ κ΅¬ν˜„ν•΄μ•Ό ν•˜λŠ”μ§€λ₯Ό μ΄ν•΄ν•˜λŠ” 데 μ§‘μ€‘ν–ˆλ‹€. 이 κ³Όμ •μ—μ„œ λ‹¨μˆœνžˆ β€œκ΅¬ν˜„ν•  수 μžˆλŠ” κΈ°λŠ₯”이 μ•„λ‹ˆλΌ, β€œμ§€κΈˆ κ°€μž₯ ν•„μš”ν•œ κΈ°λŠ₯이 무엇인지”λ₯Ό κ³ λ―Όν•˜λŠ” κ²½ν—˜μ΄ 인상 κΉŠμ—ˆλ‹€.

λ˜ν•œ 이번 ν”„λ‘œμ νŠΈμ—μ„œλŠ” AI 기반 μ‰Όν„° μΆ”μ²œκ³Ό ν˜Όμž‘λ„ 예츑 κΈ°λŠ₯을 κ΅¬ν˜„ν–ˆλŠ”λ°, AIλ₯Ό λ‹¨μˆœνžˆ λΆ™μ΄λŠ” 것이 μ•„λ‹ˆλΌ μ„œλΉ„μŠ€μ˜ μ˜μ‚¬κ²°μ •μ„ λ•λŠ” κΈ°λŠ₯으둜 μ–΄λ–»κ²Œ ν™œμš©ν•  것인지λ₯Ό μ΄ν•΄ν•˜λŠ” 뢀뢄이 쉽지 μ•Šμ•˜λ‹€. AI의 κ²°κ³Όλ₯Ό κ·ΈλŒ€λ‘œ μ‚¬μš©ν•˜λŠ” 것이 μ•„λ‹ˆλΌ, μ–΄λ–€ 데이터λ₯Ό κΈ°μ€€μœΌλ‘œ κ²°κ³Όλ₯Ό ν•΄μ„ν•˜κ³  μ‚¬μš©μžμ—κ²Œ 전달해야 ν•˜λŠ”μ§€λ₯Ό κ³ λ―Όν•˜λ©΄μ„œ, κΈ°μˆ μ„ μ‚¬μš©ν•˜λŠ” 것보닀 κΈ°μˆ μ„ μ„œλΉ„μŠ€μ— 맞게 μ„€κ³„ν•˜λŠ” 것이 더 μ€‘μš”ν•˜λ‹€λŠ” 점을 λŠκΌˆλ‹€.

이번 해컀톀을 톡해 μš°λ¦¬κ°€ μΌμƒμ—μ„œ μ‚¬μš©ν•˜λŠ” κΈ°μˆ μ΄λ‚˜ μƒˆλ‘­κ²Œ λ“±μž₯ν•œ κΈ°μˆ λ“€μ„ ν™œμš©ν•΄ μ„œλΉ„μŠ€λ₯Ό λ§Œλ“ λ‹€λŠ” 것은, λ‹¨μˆœνžˆ 과제λ₯Ό μˆ˜ν–‰ν•˜λŠ” 것이 μ•„λ‹ˆλΌ μ—¬λŸ¬ κΈ°μˆ μ„ 유기적으둜 μ—°κ²°ν•΄ ν•˜λ‚˜μ˜ μ„œλΉ„μŠ€λ₯Ό μ™„μ„±ν•˜λŠ” κ³Όμ •μ΄λΌλŠ” 것을 κΉ¨λ‹«κ²Œ λ˜μ—ˆλ‹€. 비둝 처음이라 μ„œνˆ° 점도 λ§Žμ•˜μ§€λ§Œ, 그만큼 개발의 전체 흐름을 μ΄ν•΄ν•˜κ³  μ„±μž₯ν•  수 μžˆμ—ˆλ˜ 의미 μžˆλŠ” κ²½ν—˜μ΄μ—ˆλ‹€.

0개의 λŒ“κΈ€