About

About

๐Ÿ˜Š ์ž๊ธฐ์†Œ๊ฐœ


์ €๋Š” ์‚ผ์„ฑ ์ „์ž DS ์†Œํ”„ํŠธ์›จ์–ด ์—ฐ๊ตฌ์†Œ์˜ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋ง Lab์—์„œ ๊ทผ๋ฌดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • ํšŒ์‚ฌ ๋‚ด ์†Œํ”„ํŠธ์›จ์–ด์— ๋‚ ๊ฐœ๋ฅผ ๋‹ฌ์•„์ฃผ๋Š” ์„œ๋น„์Šค๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ์ด ์ œ ์—…๋ฌด์ž…๋‹ˆ๋‹ค.
  • GitHub์™€ Bitbucket์˜ PR ์ฝ”๋“œ ๋ฆฌ๋ทฐ ์ž๋™ํ™” ์„œ๋น„์Šค ๊ฐœ๋ฐœ์„ ํ†ตํ•ด ๊ฐœ๋ฐœ ์ƒ์‚ฐ์„ฑ์„ ํ–ฅ์ƒ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.
  • ๋ถ€์„œ ๋‚ด์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋„๋ก ReviewSystem ๊ณต์šฉ API ๊ฐœ๋ฐœ์„ ๋‹ด๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค.
  • Java ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ๊ฐ•ํ™”๋ฅผ ์œ„ํ•œ ์„œ๋น„์Šค ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ•˜์—ฌ ์†Œํ”„ํŠธ์›จ์–ด ํ’ˆ์งˆ ํ–ฅ์ƒ์— ๊ธฐ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ํ˜„์žฌ๋Š” ์‚ฌ๋‚ด SW Q&A ํ”Œ๋žซํผ (DSDN, ํšŒ์›์ˆ˜ 5๋งŒ๋ช… ์ด์ƒ)์˜ ๊ฐœ๋ฐœ ๋ฐ ์šด์˜์„ ์ฑ…์ž„์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

โญ ์ง„ํ–‰ํ•œ ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ


์‚ฌ๋‚ด SW Q&A ํ”Œ๋žซํผ ๊ฐœ๋ฐœ ๋ฐ ์šด์˜ (2022-10 ~ ํ˜„์žฌ)

ํ˜„์žฌ๋Š” ํšŒ์›์ˆ˜ 50000๋ช… ์ด์ƒ์˜ ์‚ฌ๋‚ด Q&A ํ”Œ๋žซํผ ๊ฐœ๋ฐœ ๋ฐ ์šด์˜์„ ์ฑ…์ž„์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์‚ฌ๋‚ด SW Q&A ํ”Œ๋žซํผ ๊ฐœ๋ฐœ ๋ฐ ์—…๋ฐ์ดํŠธ (1000+ commit)
  • ์‚ฌ๋‚ด SW Q&A ํ”Œ๋žซํผ ๊ฐœ๋ฐœ ๋ฐ ์ฒซ๋ฒˆ์งธ ๋ฒ„์ „ 1.0 release
  • ๋Œ“๊ธ€์† ๋Œ“๊ธ€ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ์•Œ๋ฆผ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ์ผ๋ณ„ ์ธ๊ธฐ๊ฒŒ์‹œ๋ฌผ, ์ธ๊ธฐํƒœ๊ทธ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ๊ฒŒ์‹œํŒ Grid View UI ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ํ™•์žฅ์„ฑ์„ ๊ณ ๋ คํ•œ ๊ฒŒ์‹œํŒ ์ถ”๊ฐ€ ๋ฐ ์‚ญ์ œ Admin ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • User ์„ฑ์ทจ๊ฐ ๊ณ ์ทจ๋ฅผ ์œ„ํ•œ ํ‰ํŒ ์‹œ์Šคํ…œ, Custom Badge ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ ๋ฐ ์œ ์ง€ ๋ณด์ˆ˜
  • Web ์„ฑ๋Šฅ ๊ฐœ์„ ์„ ์œ„ํ•œ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ๊ฐœ์„ 
  • Mysql indexi ์„ค์ •์„ ํ†ตํ•œ ๊ฐœ์„ 
  • ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ Elastic Search ์‚ฌ์šฉํ•˜์—ฌ ๊ณ ๋„ํ™”
  • WebSocket์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ… ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ
  • Ehcache๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ฑ๋Šฅ ๊ฐœ์„  (5์ดˆ โ†’ 1์ดˆ ์ด๋‚ด)
  • SSE๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ € ์•Œ๋ฆผ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
  • ์‚ฌ๋‚ด SSO ์„œ๋น„์Šค์™€ ์—ฐ๊ฒฐ
  • ์ค‘๊ตญ,์ธ๋„ ๋ฒ•์ธ ์˜คํ”ˆ์„ ์œ„ํ•œ ๋ฒˆ์—ญ๊ธฐ๋Šฅ (์ „์ฒด ๋ฒˆ์—ญ, ์ผ๋ถ€ ๋ฒˆ์—ญ, ์›๋ฌธ ๋Œ์•„๊ฐ€๊ธฐ) ์ถ”๊ฐ€

๊ธฐ์ˆ  ์Šคํƒ: Springboot, Javascript, Mysql, Elastic Search


Java Unit Test ์ง€์› (2022-05 ~ 2022-10)

JAVA ํ”„๋กœ์ ํŠธ ๋Œ€์ƒ Unit Test ๊ฐœ๋ฐœ ๋ฐ ์ง€์›์— ์ฐธ์—ฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.

  • ์‚ฌ๋‚ด 20์—ฌ๊ฐœ Java ํ”„๋กœ์ ํŠธ ๋Œ€์ƒ์œผ๋กœ Sample Junit TC ๊ฐœ๋ฐœ ๋ฐ ๋ฐฐํฌ
  • ์˜คํ”ˆ์†Œ์Šค ํ™œ์šฉ ์‚ฌ๋‚ด Java ํ”„๋กœ์ ํŠธ ๋Œ€์ƒ Test Case์™€ Teset๋Œ€์ƒ Method ์ถ”์ถœ ๋ฐ Elastic Search ํ™œ์šฉ TC ์ถ”์ฒœ Web ์„œ๋น„์Šค ๊ฐœ๋ฐœ
  • Pull Request ๋ฐœ์ƒ์‹œ Unit Test ์ž๋™ ์‹คํ–‰ CI ํ™˜๊ฒฝ ๊ตฌ์ถ•๊ณผ Coverage Report ๋ฐœํ–‰ ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ

๊ธฐ์ˆ  ์Šคํƒ: JAVA, Junit, Mockito, Springboot, Elastic Search, Jenkins, Python


Review System ๊ณต์šฉ API ๊ฐœ๋ฐœ (2022-01 ~ 2022-05)

Review System (Github, Bitbucket, Crucible ๋“ฑ)์˜ Event์™€ RestApi ํ˜•์‹ ํ†ต์ผ์„ ์œ„ํ•œ ๊ณต์šฉ API ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

  • Review System์˜ Event ํ†ต์ผํ™” ๋ฐ Event Subscription ์„œ๋น„์Šค ๊ฐœ๋ฐœ
  • Review System์˜ Comments, Approve ๋“ฑ์˜ ํ†ต์ผํ™”๋œ ๊ณต์šฉ API๊ฐœ๋ฐœ

๊ธฐ์ˆ  ์Šคํƒ: springboot, MongoDB, Django


์ฝ”๋“œ๋ฆฌ๋ทฐ ์ž๋™ํ™” ์‹œ์Šคํ…œ (2021-02 ~ 2022-01)

์‚ฌ๋‚ด ์ฝ”๋”ฉ ์Šคํƒ€์ผ ํ†ต์ผํ™”๋ฅผ ์œ„ํ•ด PR์„ ์ž๋™์œผ๋กœ ๋ฆฌ๋ทฐํ•ด์ฃผ๋Š” ์ฝ”๋“œ๋ฆฌ๋ทฐ ์ž๋™ํ™” ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.

  • Jenkins์˜ shell script์™€ groovy script๋ฅผ ํ™œ์šฉํ•˜์—ฌ Github๊ณผ Bitbucket์˜ Pull Requset ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒ ์‹œ ์ž๋™์œผ๋กœ ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ™˜๊ฒฝ ๊ตฌ์ถ•
  • ์ฝ”๋“œ๋ฆฌ๋ทฐ ์ž๋™ํ™” ์‹œ์Šคํ…œ์˜ ์•ˆ์ •๋œ ์šด์˜์„ ์œ„ํ•œ ๋ชจ๋‹ˆํ„ฐ๋ง ์‹œ์Šคํ…œ ๊ตฌ์ถ• ๋ฐ ์›น ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ๊ฐœ๋ฐœ
  • ์ฝ”๋”ฉ์Šคํƒ€์ผ ์ฒด์ปค ์˜คํ”ˆ์†Œ์Šค์ธ Cpplint์™€ Cppcheck์˜ False Positive๋ฅผ ๊ฐœ์„ 
  • Jenkins์™€ Docker๋ฅผ ํ™œ์šฉํ•œ ์‹œ์Šคํ…œ Deploy ํ™˜๊ฒฝ ๊ฐœ์„ 
  • ์•ˆ์ •๋œ ์‹œ์Šคํ…œ ์šด์˜์„ ์œ„ํ•œ Python Unittest ๊ฐœ๋ฐœ ๋ฐ CIํ™˜๊ฒฝ ๊ตฌ์ถ•
  • Pull Request ๋Œ€์ƒ ํŒŒ์ผ ์ฝ”๋”ฉ์Šคํƒ€์ผ ์ž๋™ ๊ต์ • ๋„๊ตฌ Web ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ

๊ธฐ์ˆ  ์Šคํƒ: Jenkins, groovy script, Django, Github RestApi, MongoDB, Python, C++