Skip to content
View ChoiWheatley's full-sized avatar
๐Ÿฅบ
blue
๐Ÿฅบ
blue

Block or report ChoiWheatley

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
ChoiWheatley/README.md

ํ•ต์‹ฌ ์—ญ๋Ÿ‰

์ €๋Š” ์‹ค์‹œ๊ฐ„ ์‹œ์Šคํ…œ ๊ตฌ์ถ• ๊ฒฝํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. Web Socket ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•ด ๊ฐœ๋ฐœํ•œ RecRe๋Š” 250๋ช…์˜ ๋™์‹œ ์ ‘์†์ž๋ฅผ ์•ˆ์ •์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ ๋ถˆ์•ˆ์ • ์ƒํ™ฉ์—์„œ๋„ ์ง€์—ฐ์„ ์ตœ์†Œํ™”ํ•˜๋ฉฐ ์„œ๋น„์Šค ํ’ˆ์งˆ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ์„ฑ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ๋ฆฌ์†Œ์Šค ์ตœ์ ํ™” ๊ฒฝํ—˜์„ ํ†ตํ•ด ์‹œ์Šคํ…œ ํšจ์œจ์„ฑ์„ ๋†’์˜€์Šต๋‹ˆ๋‹ค. ๋Š์–ด์ง„ ์†Œ์ผ“ ์—ฐ๊ฒฐ, ์ž˜๋ชป๋œ DI ์ปจํ…Œ์ด๋„ˆ ์„ค์ • ๋“ฑ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•œ ์ธ์Šคํ„ด์Šค ๋‚ญ๋น„ ๋ฌธ์ œ๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ์ตœ์ ํ™”ํ•˜์—ฌ ์„ฑ๋Šฅ ๋ฐ ์•ˆ์ •์„ฑ์„ ํ–ฅ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

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

์ €๋Š” CI, CD ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•ด ๋ณธ ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค. PR์ด ๋จธ์ง€๋˜์—ˆ์„ ๋•Œ ๋„์ปค ์ด๋ฏธ์ง€๋ฅผ ๋นŒ๋“œ, Amazon ECR์— ์—…๋กœ๋“œํ•˜๊ณ  EC2์—์„œ ์ด๋ฅผ pull ๋ฐ›์•„ ์„œ๋ฒ„๋ฅผ ์ž๋™์œผ๋กœ ์ตœ์‹ ๋ฒ„์ „์œผ๋กœ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฐ์†์„ฑ

์†Œํ”„ํŠธ์›จ์–ด ํ•™๋ถ€ ๋ฅผ ์ „๊ณตํ•˜๋ฉฐ ์ปดํ“จํ„ฐ ๊ตฌ์กฐ, ์‹œ์Šคํ…œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ์šด์˜์ฒด์ œ, ๋„คํŠธ์›Œํฌ์™€ ๊ฐ™์€ ์ €์ˆ˜์ค€๋ถ€ํ„ฐ ๊ฐ์ฒด์ง€ํ–ฅ, ์†Œํ”„ํŠธ์›จ์–ด ๋ถ„์„ ๋ฐ ์„ค๊ณ„ ๊ณผ๋ชฉ์„ ๊ฑฐ์น˜๋ฉฐ ๋ณต์žกํ•œ ์‹œ์Šคํ…œ ์„ค๊ณ„ ํŒจํ„ด๊นŒ์ง€ ํญ๋„“๊ฒŒ ํ•™์Šตํ•˜๋ฉฐ ๊ฐœ๋ฐœ์ž๋กœ์„œ์˜ ๊ธฐ์ดˆ๋ฅผ ๋‹ค์กŒ์Šต๋‹ˆ๋‹ค.

SW ์‚ฌ๊ด€ํ•™๊ต ์ •๊ธ€ ์—์„œ ์ด๋ก ์„ ์‹ค๋ฌด๋กœ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. PintOS ํ”„๋กœ์ ํŠธ์—์„œ ์Šค๋ ˆ๋“œ, ์ปค๋„, ๊ฐ€์ƒ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ง์ ‘ ๊ตฌํ˜„ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ•™๊ต์—์„œ ๋ฐฐ์šด ์šด์˜์ฒด์ œ ์ง€์‹์„ ์‹ค์ œ ์ฝ”๋“œ๋กœ ์˜ฎ๊ธฐ๋ฉฐ ์‹œ์Šคํ…œ ์„ค๊ณ„ ์ดํ•ด๋„๋ฅผ ๋†’ํž ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ•์ 

  1. Knowledge Maker
    ์ƒˆ๋กœ์šด ์ง€์‹์€ ๊ฐœ์ธ ์œ„ํ‚ค์— ๊ธฐ๋กํ•˜๊ณ  ์ง€์†์ ์œผ๋กœ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. <www.choiwheatley.xyz> ์— ์œ„ํ‚ค๋ฅผ ๋ฐฐํฌํ•˜์—ฌ ์ง€์‹์„ ๊ณต์œ ํ•˜๊ธฐ ํŽธํ•œ ํ™˜๊ฒฝ์„ ๊ฐ–์ถ”์—ˆ์Šต๋‹ˆ๋‹ค.
  2. ๋›ฐ์–ด๋‚œ ๋„๊ตฌ ํ™œ์šฉ ๋Šฅ๋ ฅ
    ์ €๋Š” ์ƒˆ๋กœ์šด ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ "์ˆ˜, ํŒŒ, ๋ฆฌ" ์›์น™์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. "๋”ฐ๋ฅผ ์ˆ˜", ๋ฌธ์„œ์˜ ๋‚ด์šฉ์„ ์ •ํ™•ํžˆ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. "๊นจ๋œจ๋ฆด ํŒŒ", ๋„๊ตฌ๋ฅผ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•ํ•˜์—ฌ ๊ณ ์ถฉ ์ง€์ ์„ ํ•ด์†Œํ•ฉ๋‹ˆ๋‹ค. "๋– ๋‚  ๋ฆฌ", ๋” ์ข‹์€ ๋„๊ตฌ๋ฅผ ๋ฆฌ์„œ์น˜ํ•˜๊ฑฐ๋‚˜ ์ง์ ‘ ํˆด์„ ๋งŒ๋“ค์–ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  3. Don't Repeat Troubleshooting
    ์ฝ”๋“œ์— DRY(Don't Repeat Yourself)๊ฐ€ ์žˆ๋‹ค๋ฉด ๋ฌธ์ œํ•ด๊ฒฐ์—๋Š” DRT๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œํ•ด๊ฒฐ ์‹œ ์ฒ ์ €ํ•œ ๋ฌธ์„œํ™”๋ฅผ ํ†ตํ•ด ํŒ€์›์ด ์œ ์‚ฌํ•œ ๋ฌธ์ œ์— ๋น ๋ฅด๊ฒŒ ๋Œ€์ฒ˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ–ˆ์Šต๋‹ˆ๋‹ค.
  4. Diagrams for Understanding
    ์‹œ์Šคํ…œ ์„ค๊ณ„ ๋‹จ๊ณ„์—์„œ ์ €๋Š” ๋‹ค์ด์–ด๊ทธ๋žจ์„ ํ†ตํ•ด ๋ณต์žกํ•œ ๊ด€๊ณ„๋ฅผ ์‹œ๊ฐํ™”ํ•˜๊ณ  ํŒ€๊ณผ์˜ ๋ฉ˜ํƒˆ ๋ชจ๋ธ์„ ๊ณต์œ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ด๋ฒคํŠธ ์Šคํ† ๋ฐ ์„ธ์…˜์„ ์—ด์–ด Giftogether ํ”„๋กœ์ ํŠธ์˜ ์ฃผ์š” ๋น„์ฆˆ๋‹ˆ์Šค ํ๋ฆ„์„ ์‹œ๊ฐํ™”ํ•˜์—ฌ ํŒ€์˜ ์ดํ•ด๋„๋ฅผ ๋†’์˜€์Šต๋‹ˆ๋‹ค.
  5. Credibility Counts
    ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ๊ฒƒ๋“ค์„ ํŒ€์›๊ณผ ๊ณต์œ ํ•˜์—ฌ ์ˆจ๊ฒจ์ง€๋Š” ๊ฒƒ ์—†์ด ํˆฌ๋ช…ํ•˜๊ฒŒ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ๋•๋ถ„์— RecRe ํ”„๋กœ์ ํŠธ์˜ ํŒ€์žฅ์œผ๋กœ ํ™œ๋™ํ•˜๋ฉฐ ํŒ€์› ๊ฐ„์˜ ์‹ ๋ขฐ๋ฅผ ๊ทน๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ์—ˆ๊ณ , ํ”„๋กœ์ ํŠธ๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ ์™„์ˆ˜๋  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์„ฑ์žฅ

์ €๋Š” ์•ž์œผ๋กœ Event Dispatcher ๋กœ Kafka์™€ RabbitMQ์™€ ๊ฐ™์€ ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•ด ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์‹œ์Šคํ…œ์„ ์ตœ์ ํ™”ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ Giftogether ํ”„๋กœ์ ํŠธ์— ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ ์šฉ ์ค‘์ด๋ฉฐ, CQRS์™€ Saga๋ฅผ ๋„์ž…ํ•˜์—ฌ ์žฅ๊ธฐ์ ์ธ ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ์™€ ์„œ๋น„์Šค ์•ˆ์ •์„ฑ์„ ๋™์‹œ์— ๋‹ฌ์„ฑํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค.

๋˜ํ•œ, MSA ๋ฅผ ํ™œ์šฉํ•ด ํ™•์žฅ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ์„ ๊ฐ–์ถ˜ ์„œ๋น„์Šค๋ฅผ ์„ค๊ณ„ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, Kubernetes ๊ฐ™์€ ์ปจํ…Œ์ด๋„ˆ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์„ ํ™œ์šฉํ•˜์—ฌ ๊ฐ ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค์˜ ๊ฑด๊ฐ• ์ƒํƒœ๋ฅผ ํ™•์ธํ•˜๊ณ  ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ต์ฒดํ•˜๊ฑฐ๋‚˜ scale out ํ•˜๋Š” ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ €๋Š” Software Architect ๋กœ ์„ฑ์žฅํ•ด ๋ณต์žกํ•œ ๋„๋ฉ”์ธ์„ ์ถ”์ƒํ™”ํ•˜๊ณ , ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ์‚ฌํ•ญ์— ์ ํ•ฉํ•œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์„ค๊ณ„ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ํŒ€๊ณผ ์กฐ์ง์— ์žฅ๊ธฐ์ ์ธ ๊ฐ€์น˜๋ฅผ ์ œ๊ณตํ•˜๋Š” ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์ด ์ œ ๊ถ๊ทน์ ์ธ ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค.

STACK

REAME-STATS

Choi Wheatley's Health Check!

WAKATIME

LANGUAGES WEEKLY-ACTIVITY

Pinned Loading

  1. Team-def/recre-backend Team-def/recre-backend Public

    ๋ ˆํฌ๋ฆฌ์—์ด์…˜์„ ์›น๋ธŒ๋ผ์šฐ์ €๋งŒ์œผ๋กœ ์‰ฝ๊ฒŒ!

    TypeScript 3 2

  2. coding-jjun/Giftogether_backend coding-jjun/Giftogether_backend Public

    TypeScript 4 1