Skip to content

๐Ÿฟ๏ธ ํŒ€์›๋“ค๊ณผ ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•˜๊ณ , ์ž์œ ๋กœ์šด ํ† ์˜๋ฅผ ์ข‹์•„ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ๊ธฐ์ˆ ์— ์—ด๋ ค์žˆ๋Š” ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.

Notifications You must be signed in to change notification settings

kor-Chipmunk/resume

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

28 Commits
ย 
ย 
ย 
ย 

Repository files navigation

๊น€์„ ์žฌ

๊ตฌ๋ฒ„์ „

ํŒ€์›๋“ค๊ณผ ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•˜๊ณ , ์ž์œ ๋กœ์šด ํ† ์˜๋ฅผ ์ข‹์•„ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ๊ธฐ์ˆ ์— ์—ด๋ ค์žˆ๋Š” ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.

  • 3๋…„ ์ฐจ ๊ฐœ๋ฐœ์ž๋กœ Django, Node.js ๊ธฐ๋ฐ˜ ์Šคํƒ€ํŠธ์—…์—์„œ REST API, ์›น์†Œ์ผ“ ์„œ๋ฒ„ ๊ฐœ๋ฐœ์„ ๋‹ด๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ์ƒ์‚ฐ์„ฑ๊ณผ ๊ฐ€๋…์„ฑ์ด ๋†’์€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
    • ๊ฑด์„ค์ ์ธ ์ฝ”๋“œ ๋ฆฌ๋ทฐ์™€ ์งˆ๋ฌธ์ด ํŽธํ•œ ํ™˜๊ฒฝ์„ ์„ ํ˜ธํ•ฉ๋‹ˆ๋‹ค.
  • 2์ฃผ ์ฃผ๊ธฐ๋กœ ๋ฐฐํฌํ•˜๋Š” ์Šคํฌ๋Ÿผ์— ์ต์ˆ™ํ•ฉ๋‹ˆ๋‹ค. ์ด 6๊ฐœ์˜ ์‹ ๊ทœ ๊ธฐ๋Šฅ์„ ์ถœ์‹œ ํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ๋ฐฐํฌ ์ดํ›„ APM ๋ชจ๋‹ˆํ„ฐ๋ง์œผ๋กœ ์žฅ์• ์— ๋Œ€์‘ํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ์ˆ˜๋ฐฑ๋งŒ Row ์ˆ˜ ์ฆ๊ฐ€๋กœ ๋ฐœ์ƒํ•œ ์Šฌ๋กœ์šฐ ์ฟผ๋ฆฌ๋ฅผ ์ธ๋ฑ์‹ฑ์œผ๋กœ 1.5์ดˆ โ†’ 0.3์ดˆ๋กœ 80% ๊ฐœ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ๋น ๋ฅด๊ฒŒ ํ•™์Šตํ•ฉ๋‹ˆ๋‹ค.
    • 2์ฃผ ์•ˆ์— ํŒ€์ด ์š”๊ตฌํ•˜๋Š” Django, DRF, Redis, ORM ๋“ฑ ์—ญ๋Ÿ‰์„ ์Šต๋“ํ–ˆ์Šต๋‹ˆ๋‹ค.
    • Vue.js ์–ด๋“œ๋ฏผ ์ธ๋ ฅ์ด ์—†์„ ๋•Œ ๋ ˆ๊ฑฐ์‹œ ํ•™์Šต์œผ๋กœ 3์ผ ์•ˆ์— ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ฐœ๋ฐœ/๋ฐฐํฌํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ํŒ€์— ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.
  • 7๋ถ„์˜ CI ์‹œ๊ฐ„์œผ๋กœ ๋น ๋ฅธ ๋ฐฐํฌ์— ์•…์˜ํ–ฅ์„ ๋ผ์ณ, Github Actions matrix ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ๋กœ 42% ๋‹จ์ถ•ํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ์„œ๋ฒ„ ๋ฐฐํฌ ์‹œ ๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ ์ž‘์„ฑ์„ ์ž๋™ํ™”ํ•ด 20๋ถ„์˜ ์‹œ๊ฐ„์„ ์ ˆ์•ฝํ–ˆ์Šต๋‹ˆ๋‹ค.
  • Spring ์˜คํ”ˆ์†Œ์Šค ์ƒํƒœ๊ณ„์— ๋งค๋ฃŒ๋˜์–ด, Spring ์ง๊ตฐ ์ „ํ™˜์„ ํฌ๋งํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
    • 24๋…„ 1~2์›” ํŒ€ ํ”„๋กœ์ ํŠธ๋กœ REST API, WebSocket, AOP, ์ธ์ฆ ๊ธฐ์ˆ ์„ ์ตํžˆ๋ฉฐ ์—ญ๋Ÿ‰์„ ํ–ฅ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ชฉ์ฐจ

๊ฒฝ๋ ฅ

ํšŒ์‚ฌ

  • ๊ธฐ๊ฐ„ : 24.05 ~ ํ˜„์žฌ
  • ์†Œ์† : ๊ฐœ๋ฐœํŒ€ - ํ’€ํ•„๋จผํŠธ
  • 16,000๋ช…์˜ ์™ธ์‹์—… ์‚ฌ์žฅ๋‹˜๊ป˜์„œ ์‚ฌ์šฉํ•˜๋Š” ์‹์ž์žฌ ์ƒˆ๋ฒฝ ๋ฐฐ์†ก B2B ํ”Œ๋žซํผ
  • ์‚ฌ์šฉ ๊ธฐ์ˆ 
    • Backend : Spring Boot, Spring Batch, jOOQ, Java, Kotlin
    • Frontend : Vue.js, Pinia, Vite
    • Infra : MariaDB, Apache Kafka, Jenkins, Telegraf, Grafana, Docker, AWS
  • ํ˜‘์—… ๋„๊ตฌ : Git, Slack, Asana, Notion, Gitea
  • ๊ฒฝํ—˜
    • PMS(๊ตฌ๋งค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ) REST API / Batch / Event / Admin : ๊ฐœ๋ฐœ / ๋ฐฐํฌ / ์šด์˜
    • Gitea ๋“ฑ ์ธํ”„๋ผ ๋ฒ„์ „ ๊ด€๋ฆฌ
  • ๊ธฐ๊ฐ„ : 20.10 ~ 22.12 (2๋…„ 3๊ฐœ์›”, ๋ณ‘์—ญํŠน๋ก€)
  • ์†Œ์† : ํ”„๋กœ๋•ํŠธํŒ€
  • 200๋งŒ ์œ ์ € ๊ทœ๋ชจ์˜ ๋‹ค๊ตญ๊ฐ€ ์†Œ์…œํ†ตํ™” ์•ฑ ์„œ๋น„์Šค ์Šคํƒ€ํŠธ์—…์œผ๋กœ IMM ์ธ๋ฒ ์ŠคํŠธ๋จผํŠธ ๋“ฑ์œผ๋กœ๋ถ€ํ„ฐ 100์–ต ์‹œ๋ฆฌ์ฆˆB ํˆฌ์ž ์œ ์น˜
  • ์‚ฌ์šฉ ๊ธฐ์ˆ 
    • Backend : Django, DRF(Django Rest Framework), NestJS, WebSocket, Python, TypeScript
    • Frontend : Vue.js
    • Infra : MySQL, Redis, AWS EB, AWS ECS, Docker
  • ํ˜‘์—… ๋„๊ตฌ : Git, Slack, Jira Confluence, Notion
  • ๊ฒฝํ—˜
    • ์•ฑ ์„œ๋น„์Šค์˜ REST API / WebSocket ์„œ๋ฒ„ ๊ฐœ๋ฐœ / ๋ฐฐํฌ / ์šด์˜
    • ๊ธฐ์กด ๋ ˆ๊ฑฐ์‹œ ํ™•์žฅ ๋น„์šฉ์ด ๋†’์•„, ์‹ ๊ทœ WebSocket ๋งค์นญ ์„œ๋ฒ„ 1์ธ ๊ตฌ์ถ•
    • ์‹œ๋ฆฌ์ฆˆB ์œ ์น˜๋ฅผ ์œ„ํ•œ ๋งค์ถœ ์ฆ๋Œ€ ๋ชฉ์ ์œผ๋กœ, ์ธ์•ฑ ๊ตฌ๋… ๊ฒฐ์ œ ์—ฐ๋™ ์‹œ์Šคํ…œ 1์ธ ๊ตฌ์ถ•
    • ์•ˆ์ •์ ์ด๊ณ  ๋น ๋ฅธ ์ถœ์‹œ๋ฅผ ์œ„ํ•ด, CI ์‹คํ–‰ ์‹œ๊ฐ„ 42% ๊ฐœ์„  / ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€ 0% โ†’ 80% ๋‹ฌ์„ฑ

๊ธฐ์ˆ 

Java / Spring

์‹ค๋ฌด ๊ฒฝํ—˜ (MariaDB / Apache Kafka)

  • Batch : ์‹ค์‹œ๊ฐ„ ์˜ˆ์•ฝ ๋ฐฐ์น˜ ์‹œ์Šคํ…œ ์„ค๊ณ„ / ๊ฐœ๋ฐœ / ์šด์˜
    • ๋ถ„์‚ฐ ๋น„๋™๊ธฐ ์Šค์ผ€์ฅด๋Ÿฌ JobRunr ํ™œ์šฉ์œผ๋กœ ๋ถ„์‚ฐ ๋ฐฐ์น˜ ์‹œ์Šคํ…œ ๊ตฌ์ถ•
    • ๋™์‹œ ์‹คํ–‰์œผ๋กœ ์ธํ•œ DeadLock / HikariCP ๊ณ ๊ฐˆ ํ˜„์ƒ ์ˆ˜์ • : ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€ / ReentrantLock & Semaphore

3๊ฐœ์˜ ํŒ€ํ”„๋กœ์ ํŠธ ๊ธฐ์ˆ  ๋ฆฌ๋“œ ๊ฒฝํ—˜ (Spring Boot / JWT / JPA / Docker)

  • ORM : ์ƒ์‚ฐ์„ฑ์„ ์œ„ํ•ด ๊ฐ„๋‹จํ•œ ์ฟผ๋ฆฌ๋Š” JPA, ๋ณต์žกํ•œ Join / ๋™์  ์ฟผ๋ฆฌ๋Š” QueryDSL ์ฑ„ํƒ

Django / DRF

2๋…„๊ฐ„ ์‹ค๋ฌด ๊ฒฝํ—˜ (MySQL8 / Redis)

  • ORM
    • DB Join ๋น„์šฉ๊ณผ ๊ฐœ๋ณ„ ์ฟผ๋ฆฌ ๋งคํ•‘ ๋น„์šฉ์„ ๋น„๊ตํ•ด ์ฟผ๋ฆฌ ์†๋„ ๊ฐœ์„ 
    • ๋„๋ฉ”์ธ / ์ฟผ๋ฆฌ ๋กœ์ง์„ ๋ถ„๋ฆฌํ•ด ์ค‘๋ณต ์ฝ”๋“œ ์ œ๊ฑฐ, ํ…Œ์ŠคํŠธ ๊ฐ€๋…์„ฑ, ์œ ์ง€๋ณด์ˆ˜์„ฑ์„ ๋†’์ž„
  • Batch : 100๋งŒ ๋‹จ์œ„ ๋ฐ์ดํ„ฐ๋ฅผ Chunk ๋‹จ์œ„ Bulk ๋ฐฐ์น˜ ์ž‘์„ฑ
  • Lock : Redis ๋ถ„์‚ฐ ๋ฝ์œผ๋กœ ๋ฉ€ํ‹ฐ ํ”„๋กœ์„ธ์Šค ๋™์‹œ์„ฑ ์ œ์–ด

Node.js / NestJS

1๋…„๊ฐ„ ์‹ค๋ฌด ๊ฒฝํ—˜ (WebSocket / Redis)

  • ๋น„๋™๊ธฐ : ์„ฑ๋Šฅ ํ–ฅ์ƒ์„ ์œ„ํ•ด, ๋ถˆํ•„์š”ํ•œ await ์ œ๊ฑฐ / Promise.all() ์œผ๋กœ ๋„คํŠธ์›Œํฌ I/O ๊ฐœ์„ 
  • ๋™์‹œ์„ฑ : ๋™์‹œ์„ฑ ํ๋กœ ๋Œ€ํ™”๋ฐฉ ์ž…์žฅ / ๋งˆ๊ฐ ์ฒ˜๋ฆฌ

ํ”„๋กœ์ ํŠธ

๊ฒฝ๋ ฅ ํ”„๋กœ์ ํŠธ

๊ตฌ๋งค ๊ด€๋ฆฌ ์‹œ์Šคํ…œ

  • ๊ธฐ๊ฐ„ : 2024.05 ~ ํ˜„์žฌ
  • ์„ฑ๊ณผ
    • ์˜ˆ์•ฝ ๋ฐฐ์น˜ ์‹œ์Šคํ…œ์œผ๋กœ ๋ฌด์ธ ์šด์˜
    • ๋ฐœ์ฃผ ์‹œ๊ฐ„ 75% ๊ฐ์†Œ
  • ์—ญํ• 
    • REST API / Batch / Event / Admin ๊ฐœ๋ฐœ (์ด 2์ธ ๋‹ด๋‹น)
    • ๋ฐฐ์น˜ ๋™์‹œ ์‹คํ–‰์œผ๋กœ ์ธํ•œ DeadLock / HikariCP ์ปค๋„ฅ์…˜ ๊ณ ๊ฐˆ ๋ฌธ์ œ, ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€ / Locking ๊ธฐ๋ฒ•์œผ๋กœ ํ•ด๊ฒฐ
    • ์žฅ์•  ์ „ํŒŒ๋ฅผ ๋ง‰๊ธฐ ์œ„ํ•œ Fault Tolerance ์‹œ์Šคํ…œ ๊ตฌ์ถ• (๋ชจ๋‹ˆํ„ฐ๋ง ์•Œ๋žŒ / Retry ์ „๋žต ์ˆ˜๋ฆฝ)
  • ๊ธฐ์ˆ 
    • Spring Boot, Spring Batch, Vue.js, Pinia, Apache Kafka, Jenkins

๊ตญ๊ฐ€๊ฐ„ ์ฑ„ํŒ… ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ

  • ๊ธฐ๊ฐ„ : 2022.10 ~ 2022.11 (2๊ฐœ์›”)
  • ์„ฑ๊ณผ
    • ํ•œ๊ตญ/์ผ๋ณธ 2๊ฐœ๊ตญ ๊ธฐ๋Šฅ ์ถœ์‹œ
  • ์—ญํ• 
    • REST API ๊ฐœ๋ฐœ 1์ธ ๋‹ด๋‹น ( ๋‹ด๋‹น์ž ์„œ๋ฒ„ 2์ธ, ๋ชจ๋ฐ”์ผ 1์ธ )
    • SaaS ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ์— Type ์„ ์ •์˜ํ•ด ๊ธฐ์กด ๋ฉ”์‹ ์ € ๊ธฐ๋Šฅ์„ ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ…์œผ๋กœ ํ™•์žฅ / API ์—ฐ๋™ ํ™•์žฅ
    • ๋„คํŠธ์›Œํฌ ํ˜ธ์ถœ ์•ˆ์ •์„ฑ์„ ์œ„ํ•ด, ํฉ์–ด์ง„ ๋„คํŠธ์›Œํฌ ํ˜ธ์ถœ ์ฝ”๋“œ๋ฅผ ๋„คํŠธ์›Œํฌ ๋ชจ๋“ˆ๋กœ ๋ฆฌํŒฉํ„ฐ๋ง / ๊ธฐ๋ณธ TimeOut ์„ค์ •
    • CS ์—…๋ฌด ์ง€์› / ์›น ์–ด๋“œ๋ฏผ ์ธ๋ ฅ ์ง€์› ์œ„ํ•ด, ์ฑ„ํŒ… ๋‚ด์—ญ ์กฐํšŒ ๋ฌดํ•œ ์Šคํฌ๋กค ์ปดํฌ๋„ŒํŠธ ์ž‘์„ฑ
  • ๊ธฐ์ˆ 
    • Django, Vue.js

์ธ์•ฑ ๊ตฌ๋… ๊ฒฐ์ œ ์—ฐ๋™ ์‹œ์Šคํ…œ ๊ตฌ์ถ•

  • ๊ธฐ๊ฐ„ : 2021.03 ~ 2021.04 (2๊ฐœ์›”)
  • ์„ฑ๊ณผ
    • ๋งค์ถœ ์ฆ๋Œ€๋กœ ์‹œ๋ฆฌ์ฆˆB ํˆฌ์ž ์œ ์น˜์— ๊ธฐ์—ฌ
  • ์—ญํ• 
    • ์•ฑ์Šคํ† ์–ด / ํ”Œ๋ ˆ์ด์Šคํ† ์–ด ๊ตฌ๋… ์—ฐ๋™ ์‹œ์Šคํ…œ 1์ธ ๊ตฌ์ถ• ( ๋‹ด๋‹น์ž ์„œ๋ฒ„ 1์ธ, ๋ชจ๋ฐ”์ผ 1์ธ )
    • ๊ตฌ๋… ์ƒํƒœ / ๊ตฌ๋… ์ƒํ’ˆ์„ ์œ„ํ•œ 15๊ฐœ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง / REST API / Django Admin ๊ฐœ๋ฐœ
    • ์Šคํ† ์–ด ์ฝœ๋ฐฑ ๊ฐ€์šฉ์„ฑ ๋ณด์žฅ๊ณผ ๋ฉ”์‹œ์ง€ ์œ ์‹ค์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด, ํด๋ผ์šฐ๋“œ ์„œ๋ฒ„๋ฆฌ์Šค ์ฑ„ํƒ / ํด๋ผ์ด์–ธํŠธ์ธก ์žฌ๊ฒ€์ฆ ๋กœ์ง ํ˜‘์˜
    • 100๋งŒ ๋‹จ์œ„ ์ดˆ๊ธฐ ๋ฐ์ดํ„ฐ Bulk Insert ๋ฐฐ์น˜ ๊ฐœ๋ฐœ
  • ๊ธฐ์ˆ 
    • Django, GCP Pub/Sub & Cloud Function

๊ทธ๋ฃน ํ†ตํ™” ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ & ์šด์˜

  • ๊ธฐ๊ฐ„ : 2021.08 ~ 2022.12 (1๋…„ 5๊ฐœ์›”)
  • ์„ฑ๊ณผ
    • ๋ฒ ํƒ€ํ…Œ์ŠคํŠธ ์ดํ›„ ์žฅ์•  ์—†์ด ์ผ์ผ ํ‰๊ท  2,000 ๊ฑด ์ด์ƒ ๋งค์นญ ์ฒ˜๋ฆฌ
  • ์—ญํ• 
    • ์‹ ๊ทœ ๊ธฐ๋Šฅ์„ ๊ฒ€์ฆํ•˜๊ธฐ ์œ„ํ•ด REST API / ์›น์†Œ์ผ“ ๋งค์นญ ์„œ๋ฒ„ 1์ธ ๊ตฌ์ถ• ( ๋‹ด๋‹น์ž ์„œ๋ฒ„ 1์ธ, ๋ชจ๋ฐ”์ผ 1์ธ )
    • ๋งค์นญ ์ˆœ์„œ ๋ณด์žฅ / ๋™์‹œ์„ฑ ๋ฐฉ์ง€ ์œ„ํ•œ ์ธ๋ฉ”๋ชจ๋ฆฌ ์ž‘์—… ํ๋ฅผ ๋„์ž…ํ•˜๊ณ  Redis ํ๋กœ ๋ชจ๋“ˆ ํ™•์žฅ
    • ๋ฐฐํฌ ์ž๋™ํ™” ๊ตฌ์ถ•์„ ์œ„ํ•ด, ์ปจํ…Œ์ด๋„ˆ ๊ธฐ๋ฐ˜ AWS ECS Fargate ์— ๋ฐฐํฌํ•˜๋Š” Github Actions ์›Œํฌํ”Œ๋กœ์šฐ ๊ตฌ์ถ•
  • ๊ธฐ์ˆ 
    • Django, NestJS, WebSocket, Redis, AWS ECS

ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ๊ฐœ์„ 

  • ๊ธฐ๊ฐ„ : 2021.06 ~ 2022.11 (1๋…„ 6๊ฐœ์›”)
  • ์„ฑ๊ณผ
    • CI ์‹คํ–‰ ์‹œ๊ฐ„ 7๋ถ„ โ†’ 4๋ถ„ (42%) ๋‹จ์ถ•ํ•˜์—ฌ ๋ฐฐํฌ ์‹œ๊ฐ„ ๋‹จ์ถ•
    • ํ…Œ์ŠคํŠธ ์‹คํ–‰์‹œ๊ฐ„ 300s โ†’ 150s (50%) ๋‹จ์ถ•ํ•˜์—ฌ ์ƒ์‚ฐ์„ฑ ์ฆ๋Œ€
    • ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€ 0% โ†’ 80% ๋‹ฌ์„ฑ์œผ๋กœ ๊ธฐ์กด ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ๋™์ž‘ ๋ณด์žฅ
  • ์—ญํ• 
    • 6~7๋ถ„์˜ CI ์‹œ๊ฐ„์ด ๋น ๋ฅธ ๋ฐฐํฌ์— ์•…์˜ํ–ฅ์„ ๋ผ์ณ, Github Actions matrix ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ๋กœ 42% ๋‹จ์ถ•
    • ์œ ๋‹› ํ…Œ์ŠคํŠธ / ์™ธ๋ถ€ API ๋ชฉํ‚น๊ณผ ๋ฐ์ดํ„ฐ ํ”ฝ์Šค์ฒ˜๋กœ ํ…Œ์ŠคํŠธ ์‹œ๊ฐ„ ๋‹จ์ถ• (60% ๊ธฐ์—ฌ)
    • ๋ ˆ๊ฑฐ์‹œ ์•ˆ์ •์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด, ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์ž‘์„ฑ ํ›„ ์œ ๋‹› ํ…Œ์ŠคํŠธ๋กœ ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€ ๋ณด์ถฉ (60% ๊ธฐ์—ฌ)
  • ๊ธฐ์ˆ 
    • pytest, pytest-split, Github Actions

๊ฐœ์ธ ํ”„๋กœ์ ํŠธ

์Œ์› ์ŠคํŠธ๋ฆฌ๋ฐ ํ”Œ๋žซํผ

์Šค๋งˆ์ผ๊ฒŒ์ดํŠธ ๊ฐœ๋ฐœ์บ ํ”„์—์„œ 1๊ฐœ์›”๊ฐ„ ์ง„ํ–‰ํ•œ ์„œ๋ฒ„ 3์ธ/์›น 1์ธ์œผ๋กœ ๊ตฌ์„ฑ๋œ, Spring MSA ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2024.01 ~ 2024.02
  • ์†Œ์† : ์Šค๋งˆ์ผ๊ฒŒ์ดํŠธ ๊ฐœ๋ฐœ์บ ํ”„ 5๊ธฐ
  • ์—ญํ• 
    • ๋ฐฑ์—”๋“œ ๊ธฐ์ˆ  ๋ฆฌ๋“œ. ๊ฐœ๋ฐœ ์ด์Šˆ(์ผ์ •๊ด€๋ฆฌ/๋””๋ฒ„๊น…) ํ•ด๊ฒฐ, ์™ธ๋ถ€ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ์ง€์›
    • ์Œ์› ์ „์ฒ˜๋ฆฌ ํ›„ WebSocket ์œผ๋กœ ์ŠคํŠธ๋ฆฌ๋ฐ ๊ฐœ๋ฐœ, MVC -> WebFlux ๊ตฌ์กฐ๋กœ 32% ์ „์ฒด ๋‹ค์šด๋กœ๋“œ ์‹œ๊ฐ„ ๊ฐœ์„ 
    • ์„œ๋น„์Šค ๋””์Šค์ปค๋ฒ„๋ฆฌ / ๊ฒŒ์ดํŠธ์›จ์ด ๋ผ์šฐํŒ… ํŒจํ„ด์œผ๋กœ ๊ฒŒ์ดํŠธ์›จ์ด ์„œ๋ฒ„ ๊ตฌ์ถ•
    • ๋ฉ€ํ‹ฐ ๋ชจ๋“ˆ / ์ „์ฒด ์„œ๋น„์Šค ๊ณตํ†ต ๋ชจ๋“ˆ ๊ตฌ์ถ•
    • ๋„์ปค ์ธํ”„๋ผ ๊ตฌ์ถ• (15๊ฐœ ์„œ๋น„์Šค์™€ Kafka ์ธํ”„๋ผ ๋„์ปค ๊ตฌ์ถ• / ํฌํŠธ ๋ฐ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์ •๋ฆฌ)
  • ๊ธฐ์ˆ  : Spring Boot, JPA, Spring Cloud, Docker
  • ๋งํฌ

์šด๋™ ๋Œ€ํšŒ ํ”Œ๋žซํผ

๋Œ€ํ•™์ƒ ์šด์˜ ๋Œ€ํšŒ์™€ ์นœ์„  ๊ต๋ฅ˜์ „์„ ๊ฐœ์ตœํ•˜๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2023.07 ~ 2023.09
  • ์†Œ์† : UMC
  • ์—ญํ• 
    • ๋ฐฑ์—”๋“œ ๊ธฐ์ˆ  ๋ฆฌ๋“œ
      • DB ERD 22๊ฐœ ํ…Œ์ด๋ธ” ์„ค๊ณ„ (๋งํฌ)
      • ํŒ€์›์„ ์œ„ํ•œ ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ ์ปจ๋ฒค์…˜ ์„ค์ • (๋งํฌ)
    • REST API 25๊ฐœ ์—”๋“œํฌ์ธํŠธ ๊ตฌํ˜„ (๊ธฐ์—ฌ๋„ 60%)
    • AWS ์ธํ”„๋ผ ๊ตฌ์ถ•
      • MFA ๊ธฐ๋ฐ˜ IAM ํŒ€์› ๊ณ„์ • ๊ด€๋ฆฌ (๋งํฌ)
      • AWS EC2, RDS, S3, CloudFront, Route53 ์ธํ”„๋ผ ๊ตฌ์ถ•
      • Github Actions, AWS CodeDeploy ์œผ๋กœ EC2 ๋ฐฐํฌ ์ž๋™ํ™” ๊ตฌ์ถ•
  • ๊ธฐ์ˆ  : Java, JPA / QueryDSL, JWT
  • ๋งํฌ

ํ•จ๊ป˜ ๋งŒ๋“œ๋Š” ํ”Œ๋ ˆ์ด๋ฆฌ์ŠคํŠธ, ๋ฎค์ฆ๋ฆฌ (์„œ๋น„์Šค ์ข…๋ฃŒ)

๋…ธ๋ž˜ ํ”Œ๋ ˆ์ด๋ฆฌ์ŠคํŠธ๋ฅผ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ณต์œ ํ•˜๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2022.06 ~ 2022.09
  • ์†Œ์† : ๋งค์‰ฌ์—…
  • ์—ญํ• 
    • 3๊ฐœ์˜ ํŽ˜์ด์ง€์™€ 1๊ฐœ์˜ QR ์ปดํฌ๋„ŒํŠธ ์ž‘์„ฑ
    • ์ „์ฒด 13๊ฐœ API ํ˜ธ์ถœ ํ›… ์ถ”๊ฐ€
    • CI ์›Œํฌํ”Œ๋กœ์šฐ์™€ ๋žœ๋ค ๋ฆฌ๋ทฐ์–ด ์›Œํฌํ”Œ๋กœ์šฐ ์ ์šฉ
  • ๊ธฐ์ˆ  : TypeScript, React.js, NextJS, StompJS
  • ๋งํฌ

image

๋‚˜๋“ค๊ธธ (์„œ๋น„์Šค ์ข…๋ฃŒ)

์ฃผ๋ณ€ ์‚ฐ์ฑ… ๊ธธ์„ ์ €์žฅํ•˜๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค๊ณผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.
NodeJS ํ™˜๊ฒฝ์˜ NestJS ํ”„๋ ˆ์ž„์›Œํฌ์™€ TypeORM ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
PostgreSQL์˜ ์ง€๋ฆฌ ๊ธฐ๋Šฅ ์ค‘ ์—ด๋ฆฐ ์ง์„ ๋“ค์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž…์œผ๋กœ ์‚ฐ์ฑ…๊ธธ ์ •๋ณด๋ฅผ ์ €์žฅํ•ด๋ณด๋Š” ๊ฒฝํ—˜์„ ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.
ํ–‰์ •๋™ ๋ฐ์ดํ„ฐ๋ฅผ ์™ธ๋ถ€์—์„œ ๊ฐ€์ ธ์™€ DB์— ์ €์žฅํ•˜๊ณ  ์œ„์น˜ ๊ธฐ๋ฐ˜์œผ๋กœ ์ฃผ๋ณ€ ํ–‰์ •๋™ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•ด๋ณด๋Š” ๊ฒฝํ—˜์„ ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2021.09 ~ 2021.12
  • ์†Œ์† : ๋งค์‰ฌ์—…
  • ์—ญํ•  : Backend
  • ์‚ฌ์šฉ๊ธฐ์ˆ  : NodeJS, TypeScript, NestJS, TypeORM
  • ๋งํฌ

Onboarding_main แ„’แ…ฉแ†ท แ„…แ…ตแ„‰แ…ณแ„แ…ณ แ„€แ…ตแ†ฏ แ„‰แ…กแ†ผแ„‰แ…ฆ -1- แ„‚แ…ขแ„€แ…ก แ„Šแ…ณแ†ซ แ„€แ…ณแ†ฏ แ„€แ…ตแ†ฏ แ„ƒแ…ณแ†ผแ„…แ…ฉแ†จ - แ„แ…กแ„แ…ฆแ„€แ…ฉแ„…แ…ต_2

์‹ ๋น„๋กœ์šด ๋™๋ฌผ ์ƒ๋‹ด์†Œ (์„œ๋น„์Šค ์ข…๋ฃŒ)

์œ„์น˜ ๊ธฐ๋ฐ˜ ๊ณ ๋ฏผ ์ƒ๋‹ด ์ปค๋ฎค๋‹ˆํ‹ฐ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.
NodeJS ํ™˜๊ฒฝ์˜ Express ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฑ์—”๋“œ ์„œ๋ฒ„๋ฅผ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.
MySQL์—์„œ ์ œ๊ณตํ•˜๋Š” ์ง€๋ฆฌ SQL๋กœ ๋ฐ˜๊ฒฝ N km ์— ์œ„์น˜ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒํ•˜๋Š” ๊ฒฝํ—˜์„ ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2021.02 ~ 2021.05
  • ์†Œ์† : ๋งค์‰ฌ์—…
  • ์—ญํ•  : Backend
  • ์‚ฌ์šฉ๊ธฐ์ˆ  : NodeJS, express, sequelize, pm2, redis, aws
  • ๋งํฌ

KakaoTalk_Photo_2021-05-08-05-43-41 1 KakaoTalk_Photo_2021-05-08-05-37-31 1 KakaoTalk_Photo_2021-05-08-05-37-20 1 KakaoTalk_Photo_2021-05-08-05-37-28 1

๋ชจ๊ฐ๊ณต - ๋ชจ์—ฌ์„œ ๊ฐ์ž ๊ณต๋ถ€ (์„œ๋น„์Šค ์ข…๋ฃŒ)

๊ณต๋ถ€์‹œ๊ฐ„์„ ์ธก์ •ํ•˜๊ณ  ๋‹ค๋ฅธ ์ด๋“ค๊ณผ ๊ณต๋ถ€์‹œ๊ฐ„์„ ๊ฒฝ์Ÿํ•˜๋Š” ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.
์Šคํ”„๋ง ๋ถ€ํŠธ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํ…Œ์ด๋ธ” ์„ค๊ณ„์™€ REST API๋ฅผ ์„ค๊ณ„ํ•ด ๋ณผ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์Šคํ”„๋ง ๋ถ€ํŠธ ๊ฐœ๋ฐœ๋ถ€ํ„ฐ AWS EC2 & CodeDeploy ์ž๋™ํ™” ๋ฐฐํฌ๊นŒ์ง€ ๊ฒฝํ—˜ํ•ด๋ณผ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2020.07 ~ 2020.09
  • ์†Œ์† : ๋งค์‰ฌ์—…
  • ์—ญํ•  : Backend
  • ์‚ฌ์šฉ๊ธฐ์ˆ  : java 8, Spring boot 2, jpa, redis, nginx, aws
  • ๋งํฌ

images

MOTI (์„œ๋น„์Šค ์ค‘)

๋งค์ผ ์ƒˆ๋กœ์šด ์งˆ๋ฌธ์œผ๋กœ ๋‚˜๋งŒ์˜ ๋“œ๋ฆผ์บ์ฒ˜ ๋งŒ๋“ค๊ธฐ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ๊ฐ€์žฅ ์ตœ๊ทผ ๊ธฐ์ˆ ์ธ SwiftUI๋ฅผ ์‚ฌ์šฉํ•œ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.
๊ธฐํƒ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” Moya, Alamofire, Kingfisher ์ž…๋‹ˆ๋‹ค.
์ œํ”Œ๋ฆฐ์œผ๋กœ ๋””์ž์ด๋„ˆ์™€ ํ˜‘์—…ํ•˜๊ณ  Swagger ๋กœ ๋ฐฑ์—”๋“œ์™€ ํ˜‘์—…ํ•˜๊ณ  ๋…ธ์…˜์œผ๋กœ ์ผ์ •๊ณผ QA๋ฅผ ๊ด€๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

images

AllNight (์„œ๋น„์Šค ์ข…๋ฃŒ)

์นตํ…Œ์ผ๋Ÿฌ๋“ค์„ ์œ„ํ•œ, ์นตํ…Œ์ผ ๋ ˆ์‹œํ”ผ๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2019.6 ~ 2019.9
  • ์†Œ์† : ๋งค์‰ฌ์—…
  • ์—ญํ•  : iOS
  • ์ฃผ ์—…๋ฌด : ์นตํ…Œ์ผ ์ƒ์„ธ ๋ทฐ ๊ฐœ๋ฐœ
  • ์‚ฌ์šฉ๊ธฐ์ˆ  : Swift, Moya, Kingfisher, SwiftLint, SwiftyBeaver
  • ๋งํฌ

PerfectPitch

์˜์ƒ์ฒ˜๋ฆฌ ๊ณผ๋ชฉ ํ”„๋กœ์ ํŠธ ๊ฒฐ๊ณผ๋ฌผ์ž…๋‹ˆ๋‹ค. ๋””์ง€ํ„ธ ์•…๋ณด์˜ ๋ฐ•์ž, ๋งˆ๋””, ์Œํ‘œ๋ฅผ ์ธ์‹ํ•ด ํ”ผ์•„๋…ธ๋กœ ์—ฐ์ฃผํ•˜๋Š” ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2018.11
  • ์†Œ์† : ์ค‘์•™๋Œ€ํ•™๊ต
  • ์—ญํ•  : C++ MFC UI ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ, ์ฝ”์–ด API ๊ฐœ๋ฐœ
  • ์ฃผ ์—…๋ฌด : C++ MFC UI ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ
  • ๋ณด์กฐ ์—…๋ฌด : Core API ์ค‘ Binarization, Detecting five lines ๊ฐœ๋ฐœ
  • ์‚ฌ์šฉ๊ธฐ์ˆ  : C++, OpenCV
  • ๋งํฌ

Code Name : Seoul (์„œ๋น„์Šค ์ข…๋ฃŒ)

๋ชจ๋ฐ”์ผ ์›น ๋ฐฉํƒˆ์ถœ ๊ฒŒ์ž„ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ์•„์ด๋””์–ด ๊ธฐํš๋ถ€ํ„ฐ ์ปจํ…์ธ  ๋‹ต์‚ฌ, ๋ฐฐํฌ๊นŒ์ง€ ํ•ด ๋ณธ ์†Œ์ค‘ํ•œ ๊ฒฝํ—˜์ด์—ˆ์Šต๋‹ˆ๋‹ค.
๋ฃจ๋น„์˜จ๋ ˆ์ผ์ฆˆ MVCํŒจํ„ด์œผ๋กœ ๊ตฌ์„ฑํ•˜๊ณ  AWS Route53์œผ๋กœ ๋„๋ฉ”์ธ ํ˜ธ์ŠคํŒ…๊นŒ์ง€ ํ•ด ๋ณธ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค.

  • ๊ธฐ๊ฐ„ : 2017.07 ~ 2017.08
  • ์†Œ์† : ๋ฉ‹์Ÿ์ด ์‚ฌ์ž์ฒ˜๋Ÿผ
  • ์—ญํ•  : Backend
  • ์‚ฌ์šฉ๊ธฐ์ˆ  : Ruby on Rails 5, aws s3, aws ec2, aws route53
  • ๋งํฌ

images images images

๋‹จ์ฒด

  • ๋งค์‰ฌ์—…
    • ๊ธฐ๊ฐ„ : 18.03 ~ 22.12
    • ๋””์ž์ด๋„ˆ์™€ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ•จ๊ป˜ํ•˜๋Š” ๋ชจ๋ฐ”์ผ ์•ฑ ๊ฐœ๋ฐœ IT ๋™์•„๋ฆฌ์ž…๋‹ˆ๋‹ค.
    • ๊ฐœ๋ฐœ์ž / ๋””์ž์ด๋„ˆ๋ถ„๋“ค๊ณผ์˜ ๋„คํŠธ์›Œํ‚น๊ณผ ์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
    • ๋ธ”๋กœ๊ทธ : https://mash-up.tistory.com/
    • ํšŒ๊ณ ๋ก : https://itchipmunk.tistory.com/488
  • CUAI
    • ๊ธฐ๊ฐ„ : 2019.03 ~ 2019.12
    • ์ค‘์•™๋Œ€ํ•™๊ต ๋น…๋ฐ์ดํ„ฐ ๋™์•„๋ฆฌ์ž…๋‹ˆ๋‹ค. ๋จธ์‹ ๋Ÿฌ๋‹๊ณผ ๋”ฅ๋Ÿฌ๋‹ ์„ธ์…˜์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ž์ฒด ์ปจํผ๋Ÿฐ์Šค๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์—ฌ๋Ÿฌ ๊ฒฝ์ง„ ๋Œ€ํšŒ์— ์ฐธ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
    • ๋ธ”๋กœ๊ทธ : http://blog.naver.com/cuaibigdata
    • ํšŒ๊ณ ๋ก : https://itchipmunk.tistory.com/422
  • ๋ฉ‹์Ÿ์ด ์‚ฌ์ž์ฒ˜๋Ÿผ
    • ๊ธฐ๊ฐ„ : 16.03 ~ 17.08
    • ๋‹ค์–‘ํ•œ ๋ฐฐ๊ฒฝ์˜ ํ•™์ƒ๋“ค์ด ๋ชจ์—ฌ IT ์›น ์„œ๋น„์Šค๋ฅผ ๋Ÿฐ์นญํ•˜๋Š” ๋™์•„๋ฆฌ์ž…๋‹ˆ๋‹ค.
    • ๋ชจ๊ต ์šด์˜์ง„์œผ๋กœ Ruby on Rails์™€ HTML/CSS/JS ๊ต์œก์„ ์ฃผ๋„ํ•˜๋Š” ์—ญํ• ์„ ๋งก์•˜์Šต๋‹ˆ๋‹ค.
    • ํšŒ๊ณ ๋ก : https://itchipmunk.tistory.com/91

ํ•™๊ต

  • ์ค‘์•™๋Œ€ํ•™๊ต : 2016.03 ~ 2023.08
    • ์ฃผ์ „๊ณต : ์ „์ž์ „๊ธฐ๊ณตํ•™๋ถ€
    • ๋ณต์ˆ˜์ „๊ณต : ์ปดํ“จํ„ฐ๊ณตํ•™๋ถ€
  • ํ•œ๊ตญ๋””์ง€ํ„ธ๋ฏธ๋””์–ด๊ณ ๋“ฑํ•™๊ต : 2013.03 ~ 2016.01
    • ์ „๊ณต : ํ•ดํ‚น๋ฐฉ์–ด

์ˆ˜์ƒ

์žฌ์ƒ์—๋„ˆ์ง€ ๋ฐœ์ „๋Ÿ‰ ์˜ˆ์ธก ๊ฒฝ์ง„๋Œ€ํšŒ ์žฅ๋ ค์ƒ

ํ’๋ ฅ ๋ถ„์•ผ ๋ฐœ์ „๋Ÿ‰ ์˜ˆ์ธก ๋ถ„์•ผ์—์„œ ์žฅ๋ ค์ƒ

  • ๊ธฐ๊ฐ„ : 2019.07 ~ 2019.08
  • ์ฃผ์ตœ : ์ „๋ ฅ๊ฑฐ๋ž˜์†Œ

์ „๋ ฅ๋ฐ์ดํ„ฐ ์‹ ์„œ๋น„์Šค ๊ฐœ๋ฐœ ๊ฒฝ์ง„๋Œ€ํšŒ ์šฐ์ˆ˜์ƒ

ํ•œ๊ตญ์ „๋ ฅ์—์„œ ์ฃผ๊ด€ํ•˜๋Š” ์ „๋ ฅ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•œ ์‹ ์„œ๋น„์Šค ๊ฐœ๋ฐœ ๊ฒฝ์ง„๋Œ€ํšŒ์—์„œ '์†Œ์ƒ๊ณต์ธ์„ ์œ„ํ•œ ์ปจ์„คํŒ… ์„œ๋น„์Šค'๋ฅผ ์ถœํ’ˆ

  • ๊ธฐ๊ฐ„ : 2019.03
  • ์ฃผ์ตœ : ํ•œ๊ตญ ์ „๋ ฅ

About

๐Ÿฟ๏ธ ํŒ€์›๋“ค๊ณผ ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•˜๊ณ , ์ž์œ ๋กœ์šด ํ† ์˜๋ฅผ ์ข‹์•„ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ๊ธฐ์ˆ ์— ์—ด๋ ค์žˆ๋Š” ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published