πŸ–₯ ERPC πŸ–₯


πŸ“š λͺ©μ°¨


πŸ‘¨β€πŸ‘¨β€πŸ‘¦β€πŸ‘¦νŒ€μ›

μœ€μž¬μ€ 쑰수빈 솑동쀀 μ–‘μ§€ν˜œ

✏ ν”„λ‘œμ νŠΈ μ†Œκ°œ 및 κΈ°νšμ˜λ„

1. κ°œμš”

졜적의 μ˜μ—…μ„ μœ„ν•œ μ˜μ—…κ΄€λ¦¬ μ‹œμŠ€ν…œ

2. 주제

컴퓨터와 κ΄€λ ¨λΆ€ν’ˆλ“€μ„ μ˜μ—…ν•˜λŠ” νšŒμ‚¬μ˜ ERP μ‹œμŠ€ν…œ

3. 주제 μ„ μ • 이유

  • κ°œλ°œμžλ‘œμ„œ κ°€μž₯ 많이 μ ‘ν•˜λŠ” 주제

  • κ΄€λ ¨ 동ν–₯κ³Ό 전망

    image image
  • 팬데믹 λ™μ•ˆ 원격근무와 온라인 ꡐ윑으둜 인해 μ„±μž₯μ„Έλ₯Ό λ³΄μ˜€λ˜ μ‹œμž₯의 정체

    ➑️ AI와 κ²Œμž„ λ“± 기술 λ°œμ „μ— λ”°λ₯Έ κ³ μ„±λŠ₯ μ»΄ν“¨ν„°μ˜ μˆ˜μš” μ¦κ°€λ‘œ λ‹€μ‹œ μ„±μž₯ν•  κ²ƒμœΌλ‘œ κΈ°λŒ€

4. κΈ°νšμ˜λ„

  • κΈ°μ‘΄ μ˜μ—… ERPλ“€μ˜ ν•„μˆ˜ κΈ°λŠ₯ + 단점 보완 ➑️ λ¬Έμ„œν™” μ‹œκ°„ μ΅œμ†Œν™” 및 직관적인 ν™”λ©΄ 섀계

  • κ΄€λ ¨ μ½”λ“œλ₯Ό 톡해 μ—°κ΄€λœ 데이터 뢈러였기 ➑️ μ€‘λ³΅λœ 데이터 μž…λ ₯ μƒλž΅μœΌλ‘œ λ¬Έμ„œν™” μ‹œκ°„ κ°μ†Œ

  • μžλ™ μ—‘μ…€ λ³€ν™˜ 및 λ‹€μš΄λ‘œλ“œ ➑️ κ²¬μ μ„œ, κ³„μ•½μ„œ, 수주 μ—‘μ…€ ν˜•μ‹μœΌλ‘œ μžλ™ λ³€ν™˜ 및 λ‹€μš΄λ‘œλ“œ ν›„ 첨뢀 κ°€λŠ₯

  • 직관적인 ν™”λ©΄ 섀계 ➑️ 처음 μ„œλΉ„μŠ€λ₯Ό μ΄μš©ν•˜λŠ” μ‚¬μš©μžλ„ μ‰½κ²Œ μ„œλΉ„μŠ€ 이용 κ°€λŠ₯


πŸ› κΈ°μˆ μŠ€νƒ

Backend

Spring Boot Spring JPA AWS S3 Java 17
Spring Boot Spring JPA AWS S3 Java 17

Frontend

Vue3 JavaScript HTML CSS
Vue.js JavaScript HTML5 CSS3

Database

MariaDB AWS RDS
MariaDB AWS RDS

CI/CD

GitHub Actions Route53 Elastic Beanstalk Prometheus Grafana
GitHub Actions Route53 Elastic Beanstalk Prometheus Grafana

Etc

GitHub Discord Slack
GitHub Discord Slack

πŸ—‚λ¬Έμ„œ

πŸ“‹μ„€κ³„λ¬Έμ„œ

1. WBS

WBS image

2. μš”κ΅¬μ‚¬ν•­ λͺ…μ„Έμ„œ

μš”κ΅¬μ‚¬ν•­ λͺ…μ„Έμ„œ image

3. DDD

image image image image image image image image image image

4. ERD

1. 논리 λͺ¨λΈλ§

image

2. 물리 λͺ¨λΈλ§

image

5. ν™”λ©΄ μ„€κ³„μ„œ

5-1. 둜그인 + λ‚΄ 정보

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (2)

이미지 1

이미지 2


5-2.곡지사항 관리

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (9)

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (10)

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (11)

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (12)


5-3. μ˜μ—…κΈ°νšŒ 관리

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (5)

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (6)

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (7)

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (8)


5-4. ν’ˆλͺ© 관리

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (3)

μ™€μ΄μ–΄ν”„λ ˆμž„ λ“€ (4)


5-5. 거래처 관리

κ·Έλ¦Ό2

κ·Έλ¦Ό3

κ·Έλ¦Ό4

κ·Έλ¦Ό5


5-6. κ²¬μ μ„œ 관리

κ·Έλ¦Ό6

κ·Έλ¦Ό7

κ·Έλ¦Ό8

κ·Έλ¦Ό9


5-7. κ³„μ•½μ„œ 관리

κ·Έλ¦Ό10

κ·Έλ¦Ό11

κ·Έλ¦Ό12

κ·Έλ¦Ό13


5-8. 수주 관리

κ·Έλ¦Ό14

κ·Έλ¦Ό15

κ·Έλ¦Ό16

κ·Έλ¦Ό17


5-9. μ „ν‘œ 관리

κ·Έλ¦Ό18

κ·Έλ¦Ό19


5-10. 싀적 관리

κ·Έλ¦Ό20


5-11. 결재 관리

κ·Έλ¦Ό21

κ·Έλ¦Ό22

κ·Έλ¦Ό23

κ·Έλ¦Ό24


5-12. κ΄€λ¦¬μž νŽ˜μ΄μ§€

사진 3

사진 4

사진 5

κΆŒν•œ

κΆŒν•œ 1

κΆŒν•œ 2

6. API λͺ…μ„Έμ„œ

API λͺ…μ„Έμ„œ

1-1. μ„ΈκΈˆκ³„μ‚°μ„œ, μ˜μ—…κΈ°νšŒ
image
1-2. μ˜μ—…κΈ°νšŒ 참고사항, κ²¬μ μ„œ 참고사항, κ²¬μ μ„œ
image
1-3. 수주 참고사항, 수주, 곡지사항 λŒ“κΈ€, 곡지사항
image
1-4. 사원, κ³„μ•½μ„œ, 결재
image
1-5. 결재, 거래처 참고사항, 거래처
image
1-6. κΆŒν•œ, μΆœν•˜, μ„ΈκΈˆκ³„μ‚°μ„œ λ°œν–‰, μ‚­μ œμš”μ²­
image
1-7. μ‚­μ œμš”μ²­, μ°½κ³ , 싀적
image
1-8. 싀적, ν’ˆλͺ©, POI
image

7. 업무 흐름도

1-1. μ˜μ—…κ΄€λ¦¬ 업무 흐름도
image
1-2. ERP κ΄€λ¦¬μž 업무 흐름도
image
1-3. μƒκΈ‰μž(νŒ€μž₯) 업무 흐름도
image

πŸ“Šν…ŒμŠ€νŠΈ

1. λ°±μ—”λ“œ λ‹¨μœ„ν…ŒμŠ€νŠΈ κ²°κ³Όμ„œ

λ°±μ—”λ“œ ν…ŒμŠ€νŠΈ λͺ…μ„Έμ„œ

2. UI/UX λ‹¨μœ„ ν…ŒμŠ€νŠΈ κ²°κ³Όμ„œ 및 ν†΅ν•©ν…ŒμŠ€νŠΈ


2-1. 둜그인

2-1-1. λΉ„λ°€λ²ˆν˜Έ λ³€κ²½ ν›„ 둜그인 및 λ‘œκ·Έμ•„μ›ƒ

μ˜μƒ1

2-1-2. λ‚΄ 정보 확인 λΉ„λ°€λ²ˆν˜Έ λ³€κ²½ κΆŒν•œμ‹ μ²­

2024-06-12 15;24;47


2-2. 곡지사항

2-2-1. 곡지사항 등둝

2024-06-12 15;25;58

2-2-2. λŒ“κΈ€ μž‘μ„± 및 μ‚­μ œ

2024-06-12 15;27;06

2-2-3. 곡지사항 μˆ˜μ •

2024-06-12 15;28;29


2-3. ν’ˆλͺ©κ΄€λ¦¬

2-3-1. ν’ˆλͺ© λͺ©λ‘

2024-06-12 15;53;24

2-3-2. μ°½κ³  λͺ©λ‘

2024-06-12 16;12;43


2-4. μ˜μ—…κΈ°νšŒ

2-4-1. μ˜μ—…κΈ°νšŒ λͺ©λ‘

2024-06-12 16;21;58

2-4-2. μ˜μ—…κΈ°νšŒ μƒνƒœλ³€κ²½ 및 참고사항 μž‘μ„± 및 μ‚­μ œ

2024-06-12 16;39;10

2-4-3. μ˜μ—…κΈ°νšŒ 등둝( μ „ν™”λ²ˆν˜Έ ν˜•μ‹ 이메일 ν˜•μ‹ λ§žμ•„μ•Όν•¨)

2024-06-12 16;43;48

2-4-4. μ˜μ—…κΈ°νšŒ μˆ˜μ •

2024-06-12 16;45;35


2-5. 거래처 관리

2-5-1. 거래처 등둝 및 λͺ©λ‘

거래처-등둝

2-5-2. 거래처 상세 및 μˆ˜μ •/μ‚­μ œ μš”μ²­

거래처-쑰회-및-μˆ˜μ •

2-5-3. κ±°λž˜μ²˜λ³„ 수주 λ‚΄μ—­ 쑰회

κ±°λž˜μ²˜λ³„ 수주 λ‚΄μ—­ 쑰회


2-6. κ²¬μ μ„œ 관리

2-6-1. κ²¬μ μ„œ 등둝 및 λͺ©λ‘

κ²¬μ μ„œ-등둝

2-6-2. κ²¬μ μ„œ 상세 및 μˆ˜μ •/μ—‘μ…€λ‹€μš΄/κ²°μž¬μš”μ²­/μ‚­μ œμš”μ²­

κ²¬μ μ„œ-쑰회-및-μˆ˜μ •


2-7. κ³„μ•½μ„œ 관리

2-7-1. κ³„μ•½μ„œ 등둝 및 λͺ©λ‘

κ³„μ•½μ„œ-등둝

2-7-2. κ³„μ•½μ„œ 상세 및 μˆ˜μ •/μ—‘μ…€λ‹€μš΄/κ²°μž¬μš”μ²­/μ‚­μ œμš”μ²­

κ³„μ•½μ„œ-쑰회-및-μˆ˜μ •


2-8. 수주/μ „ν‘œ 관리

2-8-1. 수주 등둝 및 λͺ©λ‘

수주-등둝

2-8-2. 수주 상세 및 μˆ˜μ •/μ—‘μ…€λ‹€μš΄/κ²°μž¬μš”μ²­/μ‚­μ œμš”μ²­

수주-쑰회-및-μˆ˜μ •

2-8-3. μ„ΈκΈˆκ³„μ‚°μ„œ λ°œν–‰ μš”μ²­ 및 λ°œν–‰λ‚΄μ—­/μΆœν•˜μƒνƒœ 확인

μ„ΈκΈˆκ³„μ‚°μ„œ-λ°œν–‰-및-수주-μΆœν•˜-확인


2-9. 싀적 관리

2-9-1. μ—°κ°„ 싀적 쑰회
2-9-2. νŒ€λ³„ 싀적 쑰회
2-9-3. 사원별 싀적 쑰회

2-10. 결재 관리

2-10-1. κ²¬μ μ„œ 결재
2-10-2. κ³„μ•½μ„œ 결재
2-10-3. 수주 결재

2-11. κ΄€λ¦¬μž νŽ˜μ΄μ§€

2-11-1. μ‚¬μ›μ‘°νšŒ 및 μˆ˜μ •

μ‚¬μ›λ¦¬μŠ€νŠΈλ°Žμ €μž₯

2-11-2. 사원등둝

사원등둝

2-11-3. κΆŒν•œμ‹ μ²­ 및 쑰회

κΆŒν•œμ‹ μ²­ 밎 쑰회

2-11-4. κΆŒν•œμ‘°νšŒ 및 등둝

κΆŒν•œμ‘°νšŒ 및 등둝

2-11-5. μ‚­μ œμš”μ²­ 및 관리

μ˜μ—…κΈ°νšŒ μ‚­μ œ μš”μ²­ 관리

μ˜μ—…κΈ°νšŒ μ‚­μ œ μš”μ²­ 밎 μ‚­μ œ

κ³„μ•½μ„œ μ‚­μ œ μš”μ²­ 관리

κ³„μ•½μ„œ μ‚­μ œ μš”μ²­ 밎 관리

거래처 μ‚­μ œ μš”μ²­ 관리

거래처 μ‚­μ œμš”μ²­ 밎 관리

κ²¬μ μ„œ μ‚­μ œ μš”μ²­ 관리

κ²¬μ μ„œ μ‚­μ œ μš”μ²­ 및 관리

수주 μ‚­μ œ μš”μ²­ 관리

수주 μ‚­μ œμš”μ²­ 및 관리

πŸ“ˆμ‹œμŠ€ν…œ μ•„ν‚€ν…μ²˜ 및 λͺ¨λ‹ˆν„°λ§

1. μ‹œμŠ€ν…œ μ•„ν‚€ν…μ²˜

image

2. Prometheus

image

3. Grafana

image


πŸ₯³ν”„λ‘œμ νŠΈ 회고

이름 λ‚΄μš©
솑동쀀 이번 ν”„λ‘œμ νŠΈμ—μ„œλŠ” μ‹€μ œ 싀무와 λ°€μ ‘ν•œ 연관이 μžˆλŠ” μ˜μ—…κ΄€λ¦¬ μ‹œμŠ€ν…œ(ERP)을 μ œμž‘ν•΄ λ³΄μ•˜μŠ΅λ‹ˆλ‹€. μ•„λ¬΄λž˜λ„ ERP μžμ²΄κ°€ μ €ν¬μ—κ²Œ μƒμ†Œν•œ μ£Όμ œμ΄λ‹€ λ³΄λ‹ˆ 쑰원듀이 μ„œ μ—¬λŸ¬ 방면으둜 곡뢀해 보고 μ‹€μ œ 싀무진 λ©˜ν† μ˜ κ²½ν—˜μ„ λ°”νƒ•μœΌλ‘œ ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν•˜μ˜€μŠ΅λ‹ˆλ‹€.

이λ₯Ό 톡해 기본적인 거래처 κ²¬μ μ„œ κ³„μ•½μ„œ 수주 μ „ν‘œλ₯Ό 싀적을 κ΄€λ¦¬ν•˜λŠ” κΈ°λŠ₯을 κ΅¬ν˜„ν•˜μ˜€κ³  λ‹€λ₯Έ μ‹œμŠ€ν…œκ³Όμ˜ 차별성을 두기 μœ„ν•΄ μ—¬λŸ¬ 정보듀을 λΆˆλŸ¬μ™€μ„œ 일일이 μž‘μ„±ν•  ν•„μš” 없이 μžλ™μ μœΌλ‘œ μž‘μ„±ν•  수 있게 νŽΈμ˜μ„±μ„ μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€.

μƒμ†Œν•œ 주제라 μ΄ν•΄ν•˜λŠ”λ° μ‹œκ°„λ„ 였래 걸리고 ν˜„μ—…μ—μ„œ μ“°λŠ” μ‹œμŠ€ν…œμΈ 만큼 λ§Žμ€ κΈ°λŠ₯을 가지고 μžˆμ–΄ κ΅¬ν˜„ν•˜λŠ” 데 어렀움을 κ²ͺμ—ˆμœΌλ‚˜ λ‹€λ₯Έ νŒ€μ›λ“€ 보닀 적은 μΈμ›μˆ˜μ—λ„ 일정을 잘 κ΄€λ¦¬ν•˜μ—¬ μ΅œμ’… ν”„λ‘œμ νŠΈλ₯Ό λ¬΄μ‚¬νžˆ μ™„μ„±ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

κΆŒν•œ λΆ€μ—¬ 정보 뢈러였기 μ—¬λŸ¬ 쑰건듀에 μ˜ν•œ μƒνƒœ κ°’ 변화듀을 μ‹ κ²½ μ“°λ©΄μ„œ 문제 ν•΄κ²° λŠ₯λ ₯을 더 κΈ°λ₯Ό 수 μžˆμ—ˆκ³  였λ₯˜ μ½”λ“œλ₯Ό μ°¨κ·Όμ°¨κ·Ό μ κ²€ν•΄λ‚˜κ°€λ©΄μ„œ 차뢄함을 κΈ°λ₯Ό 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€ λ˜ν•œ Elastic Beanstalk을 톡해 μžλ™ 배포 μ‹œμŠ€ν…œμ„ μ΄μš©ν•˜λ©΄μ„œ μ‹€μ œ ν˜„μ—…μ—μ„œ μ–΄λ–»κ²Œ λ°°ν¬ν•˜λŠ”μ§€λ₯Ό 배울 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€
μ–‘μ§€ν˜œ
μœ€μž¬μ€ 이번 ν”„λ‘œμ νŠΈμ—μ„œλŠ” 효율적인 μ˜μ—…μ„ μœ„ν•œ μ˜μ—… 관리 μ‹œμŠ€ν…œμ΄λΌλŠ” μƒμ†Œν•œ 주제λ₯Ό 가지고 2κ°œμ›” λ™μ•ˆ μ§„ν–‰ν•˜λ©° λ§Žμ€ μƒˆλ‘œμš΄ κ²½ν—˜μ„ ν–ˆμŠ΅λ‹ˆλ‹€. νŒ€μ›λ“€μ΄ 각각 κΈ°νšμ„œλ₯Ό μ œμž‘ν•˜λŠ” κ³Όμ •λΆ€ν„° μ‹œμž‘ν•΄, μ˜μ—… ν”„λ‘œμ„ΈμŠ€λ₯Ό 읡히기 μœ„ν•΄ λ§Žμ€ 자료λ₯Ό μ‘°μ‚¬ν•˜κ³  μ—¬λŸ¬ μ˜μ—… κ΄€λ ¨ ERPλ₯Ό μ°Έκ³ ν•˜λ©° μž₯단점을 μΆ”μΆœν•˜κ³  이λ₯Ό 기반으둜 κΈ°νšμ„ ν–ˆμŠ΅λ‹ˆλ‹€. μ €λŠ” 이번 ERPC ν”„λ‘œμ νŠΈμ—μ„œ DB λͺ¨λΈλ§, RDS μ„œλ²„ ꡬ좕, JPAλ₯Ό ν™œμš©ν•œ CRUD, GitHub Actions와 Elastic Beanstalk을 ν™œμš©ν•œ CI/CD, Spring Security, SMTP 섀정을 λ§‘μ•˜μŠ΅λ‹ˆλ‹€.

κ°œλ°œμ„ μ‹œμž‘ν•˜κΈ° μ „ κ°€μž₯ μ–΄λ €μšΈ 것이라고 μ˜ˆμƒν–ˆλ˜ κΆŒν•œκ³Ό, 수주λ₯Ό κ΅¬ν˜„ν•˜κΈ° μœ„ν•΄ λ¨Όμ € μŠ€ν”„λ§ μ‹œνλ¦¬ν‹°μ—μ„œ κΆŒν•œμ„ μ„€μ •ν•˜μ§€ μ•Šκ³  DB λͺ¨λΈλ§μ—μ„œ 이λ₯Ό κ³ λ €ν•΄ 쀑간 객체λ₯Ό λ§Œλ“€λ©° κΆŒν•œ 문제λ₯Ό ν•΄κ²°ν•˜κ³  JPAλ₯Ό ν™œμš©ν•΄ 수주의 μ—¬λŸ¬ μ–½νžŒ κΈ°λŠ₯듀을 ν•˜λ‚˜μ”© κ΅¬ν˜„ν•˜λ©° λ§Žμ€κ²ƒμ„ μ–»μ–΄κ°ˆ 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

이전에 μ‹œλ„ν•΄λ³΄μ§€ λͺ»ν–ˆλ˜ CI/CD, Spring Security, RDS ꡬ좕을 λ‹΄λ‹Ήν•˜λ©° λ§Žμ€ 어렀움도 μžˆμ—ˆμ§€λ§Œ, ν•˜λ‚˜μ”© ν•΄κ²°ν•΄κ°€λ©° Elastic Beanstalk의 μž‘λ™ 원리, JWT 토큰 λ°œκΈ‰, λ¦¬λˆ…μŠ€ ν™˜κ²½μ—μ„œ Nginx μ„€μ • 등을 κ²½ν—˜ ν•  수 μžˆλŠ” 계기가 λ˜μ—ˆμŠ΅λ‹ˆλ‹€. Elastic Beanstalk을 톡해 μžλ™ 배포 μ‹œμŠ€ν…œμ„ μ„€μ •ν•˜κ³  μš΄μ˜ν•˜μ—¬ 배포 νš¨μœ¨μ„±μ„ 크게 ν–₯μƒμ‹œμΌ°μœΌλ©°, Spring Securityλ₯Ό ν™œμš©ν•΄ JWT 토큰 기반 인증 μ‹œμŠ€ν…œμ„ κ΅¬ν˜„ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, λ¦¬λˆ…μŠ€ ν™˜κ²½μ—μ„œ Nginxλ₯Ό μ„€μ •ν•˜μ—¬ μ„œλ²„ μ„±λŠ₯κ³Ό λ³΄μ•ˆμ„ κ°•ν™”ν–ˆμŠ΅λ‹ˆλ‹€.

비둝 이번 ν”„λ‘œμ νŠΈμ—μ„œ λ¦¬ν”„λ ˆμ‹œ 토큰 κ΅¬ν˜„κ³Ό 싀적 데이터λ₯Ό κ·Έλž˜ν”„λ‘œ μ‹œκ°ν™”ν•˜λŠ” κΈ°λŠ₯을 κ΅¬ν˜„ν•˜μ§€ λͺ»ν•΄ 아쉬움을 λŠλΌμ§€λ§Œ, μ΄λŠ” μΆ”ν›„ 고도화 κ³Όμ •μ—μ„œ μƒˆλ‘œμš΄ λͺ©ν‘œλ‘œ μ„€μ •ν•΄ κ°œλ°œμ„ 진행 ν•  κ³„νšμž…λ‹ˆλ‹€.
쑰수빈 이번 ν”„λ‘œμ νŠΈμ—μ„œλŠ” λ‹€μ–‘ν•œ κΈ°λŠ₯을 κ΅¬ν˜„ν•˜λ©° λ§Žμ€ 성취감을 λŠκΌˆμŠ΅λ‹ˆλ‹€. μ˜μ—…κΈ°νšŒ, κ³„μ•½μ„œ, 맀좜 및 λͺ©ν‘œμ‹€μ , μ„ΈκΈˆκ³„μ‚°μ„œ μš”μ²­, 곡지사항 κ΄€λ ¨ κΈ°λŠ₯을 λͺ¨λ‘ λ‹΄λ‹Ήν•˜μ—¬ μ„±κ³΅μ μœΌλ‘œ κ΅¬ν˜„ν•˜μ˜€μŠ΅λ‹ˆλ‹€. 특히, μ—‘μ…€ λ³€ν™˜ 및 λ‹€μš΄λ‘œλ“œ κΈ°λŠ₯은 Apache POIλ₯Ό μ΄μš©ν–ˆκ³ , 파일 μ—…λ‘œλ“œλŠ” AWS S3 버킷을 ν™œμš©ν–ˆμŠ΅λ‹ˆλ‹€. λ˜ν•œ, ν”„λ‘œλ©”ν…Œμš°μŠ€μ™€ κ·ΈλΌνŒŒλ‚˜λ₯Ό 톡해 λͺ¨λ‹ˆν„°λ§ μ‹œμŠ€ν…œμ„ κ΅¬μΆ•ν•˜κ³ , κΉƒν—ˆλΈŒ 웹훅을 톡해 λ””μŠ€μ½”λ“œ μ±„λ„λ‘œ μ•Œλ¦Όμ„ μ„€μ •ν•˜μ—¬ νŒ€μ›λ“€μ˜ 진행 상황을 μ‹€μ‹œκ°„μœΌλ‘œ 확인할 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

μ„ΈκΈˆκ³„μ‚°μ„œ κ΄€λ ¨ κΈ°λŠ₯은 λ‹€λ₯Έ κΈ°λŠ₯λ“€κ³Ό λ°€μ ‘ν•˜κ²Œ μ—°κ΄€λ˜μ–΄ μžˆμ–΄ μ‹ κ²½ μ¨μ„œ κ΅¬ν˜„ν•˜μ˜€μœΌλ©°, 타 λΆ€μ„œμ™€μ˜ ν˜‘μ—…μ„ κ³ λ €ν•΄ ν…Œμ΄λΈ”μ„ λΆ„λ¦¬ν•˜μ—¬ κ΅¬ν˜„ν•˜μ˜€μŠ΅λ‹ˆλ‹€. JPAλ₯Ό ν™œμš©ν•΄ μž”κΈˆ ν˜Ήμ€ μΌμ‹œκΈˆμ„ λ‚©λΆ€ν•  경우 μžλ™μœΌλ‘œ ν•΄λ‹Ή νŒ€μ› 및 νŒ€μ— 맀좜 싀적을 λ°˜μ˜ν•˜λŠ” κΈ°λŠ₯을 κ΅¬ν˜„ν•˜λ©΄μ„œ 업무 ν”„λ‘œμ„ΈμŠ€λ₯Ό μ΅œλŒ€ν•œ λ°˜μ˜ν•˜λ €κ³  λ…Έλ ₯ν–ˆμŠ΅λ‹ˆλ‹€.

λ‹€λ₯Έ νŒ€λ“€λ³΄λ‹€ 적은 μΈμ›μœΌλ‘œ ν”„λ‘œμ νŠΈλ₯Ό μ§„ν–‰ν•˜λ©΄μ„œ λ‹΄λ‹Ήν•œ 업무 λΆ„λŸ‰μ΄ λ§Žμ•˜μ§€λ§Œ, 그만큼 더 큰 성취감을 λŠλ‚„ 수 μžˆμ—ˆκ³ , κΌΌκΌΌν•˜κ²Œ 일정 관리λ₯Ό μœ„ν•΄ λ…Έλ ₯ν–ˆμŠ΅λ‹ˆλ‹€. 특히 μƒˆλ‘œμš΄ κΈ°μˆ μ„ λ„μž…ν•΄ 파일 μ—…λ‘œλ“œμ™€ μ—‘μ…€ λ³€ν™˜ 및 λ‹€μš΄λ‘œλ“œ κΈ°λŠ₯을 κ΅¬ν˜„ν•˜κ³ , μ—¬λŸ¬ 였λ₯˜λ“€μ„ 슀슀둜 ν•΄κ²°ν•˜λ©° 기술적인 μ„±μž₯을 μ΄λ€˜μŠ΅λ‹ˆλ‹€.

μ‹€μ œ 싀무진인 λ©˜ν† μ˜ 쑰언을 λ°›μ•„ 싀무 ν”„λ‘œμ„ΈμŠ€λ₯Ό μ΅œλŒ€ν•œ λ°˜μ˜ν•˜λ € λ…Έλ ₯ν•œ 것도 큰 도움이 λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이번 ν”„λ‘œμ νŠΈλ₯Ό 톡해 λ°±μ—”λ“œ κ°œλ°œμ— μ‚¬μš©λœ Spring JPA와 Spring Boot, AWS S3λ₯Ό ν™œμš©ν•œ 파일 μ—…λ‘œλ“œ, Apache POIλ₯Ό μ΄μš©ν•œ μ—‘μ…€ λ³€ν™˜ 및 λ‹€μš΄λ‘œλ“œ, 그리고 λ””μŠ€μ½”λ“œ 웹훅을 ν†΅ν•œ νŒ€μ›λ“€κ³Όμ˜ μ›ν™œν•œ μ†Œν†΅ λ“± λ‹€μ–‘ν•œ 기술적 κ²½ν—˜μ„ μŒ“μ„ 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. 이 ν”„λ‘œμ νŠΈλŠ” κ°œλ°œμžλ‘œμ„œμ˜ μ—­λŸ‰μ„ ν•œμΈ΅ 더 μ„±μž₯μ‹œν‚€λŠ” μ†Œμ€‘ν•œ κΈ°νšŒκ°€ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.