๐Ÿ“„

CV (Korean)

Last updated: 2023. 12. 13.

์•ˆ๋…•ํ•˜์„ธ์š”!

โ€ข
์ „ํ˜„์Šน (Hyunseung Jeon, ็”ฐ่ณขๆ‰ฟ)
โ€ข
์›น ํ”„๋ก ํŠธ์—”๋“œ์— ๊ด€์‹ฌ์ด ๋งŽ์€ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด์ž…๋‹ˆ๋‹ค.
โ€ข
์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ•ด๊ฒฐ(PS)์„ ์ฆ๊น๋‹ˆ๋‹ค.
2000. 06. 22.
๋Œ€ํ•œ๋ฏผ๊ตญ ๊ฒฝ๊ธฐ๋„ ๊ณ ์–‘์‹œ
dogdriip@gmail.com
github.com/Dogdriip

ํ•œ๋ˆˆ์— ์•Œ์•„๋ณด๊ธฐ

ย ๊ฑธ์–ด์˜จ ๊ธธ

โ€ข
ย ๋Œ€ํ•™์ƒ ์ƒˆ๋‚ด๊ธฐ ๋•Œ ์šฐ์—ฐ์ฐฎ์€ ๊ธฐํšŒ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ•ด๊ฒฐ์˜ ์žฌ๋ฏธ๋ฅผ ์•Œ์•˜์Šต๋‹ˆ๋‹ค. 2018๋…„, 2019๋…„, 2020๋…„ ACM-ICPC Asia-Seoul Regional์— ํ•™๊ต ๋Œ€ํ‘œ ํŒ€์œผ๋กœ ์ถœ์ „ํ•˜์˜€๊ณ , 2021๋…„์—๋Š” ๋ชจ์Šคํฌ๋ฐ”์—์„œ ๊ฐœ์ตœ๋˜๋Š” ICPC World Finals์— ์ดˆ์ฒญ๋ฐ›์•„ ์šฐ์ˆ˜ํ•œ ์„ฑ์ ์„ ๊ฑฐ๋‘์—ˆ์Šต๋‹ˆ๋‹ค. ๋™์‹œ์— ๊ต๋‚ด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋™์•„๋ฆฌ ํšŒ์žฅ์œผ๋กœ์„œ ์Šคํ„ฐ๋”” ์ง„ํ–‰, ๋ฌธ์ œ ์ถœ์ œ/๊ฒ€์ˆ˜ ๋“ฑ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฉด์—์„œ ํ™œ๋™ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ€ข
ย ์ˆ˜๋„๊ถŒ ์ง€์—ญ์ด ์•„๋‹Œ ๊ณณ์—์„œ์˜ ๋Œ€ํ•™ ์ƒํ™œ์€ ๋น„๊ต์  ์‰ฝ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์ฃผ์–ด์ง„ ํ™˜๊ฒฝ์—์„œ ์ตœ์„ ์„ ๋‹คํ•˜๊ณ ์ž ๋…ธ๋ ฅํ•œ ๊ฒฐ๊ณผ 2019๋…„, 2020๋…„, 2021๋…„ ๋Œ€๊ฒฝ๊ถŒ ๋Œ€ํ•™์ƒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์ง„๋Œ€ํšŒ์—์„œ ์šฐ์ˆ˜ํ•œ ์„ฑ์ ์„ ๊ฑฐ๋‘์—ˆ์œผ๋ฉฐ, ๋Œ€๊ตฌ์ฐฝ์กฐ๊ฒฝ์ œํ˜์‹ ์„ผํ„ฐ์—์„œ ์ฃผ๊ด€ํ•˜๋Š” "์ฝ”๋“œ ์ฝ์–ด์ฃผ๋Š” ์‚ฌ๋žŒ๋“ค" ํ”„๋กœ๊ทธ๋žจ์— ์ฐธ์—ฌํ•˜์—ฌ SW์ „๋ฌธ๊ฐ€ ์œ„์ด‰์„ ๋ฐ›๊ธฐ๋„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ€ข
๐Ÿซก 2ํ•™๋…„์—๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๋งˆ์—์ŠคํŠธ๋กœ ์—ฐ์ˆ˜์ƒ ๋ฐ ๊ณผํ•™๊ธฐ์ˆ ์ „๋ฌธ์‚ฌ๊ด€ ํ›„๋ณด์ƒ ์ƒํ™œ์„ ํ•˜๋ฉฐ ๋ฐ์ดํ„ฐ ๋ถ„์„๊ณผ ์˜์ƒ ์ฒ˜๋ฆฌ, ๋จธ์‹ ๋Ÿฌ๋‹/๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ๋ง ๋ฐ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ• ๋“ฑ์—๋„ ๋ฐœ์„ ๋ถ™์˜€์Šต๋‹ˆ๋‹ค. ํ”„๋กœ๋•ํŠธ ์ฝ”์–ด ๊ฐœ๋ฐœ, ์—ฐ๊ตฌ ๊ณผ์ œ ์ˆ˜ํ–‰ ์ด์™ธ์—๋„ ๋…ผ๋ฌธ ์ฝ๊ธฐ ์Šคํ„ฐ๋””๋ฅผ ๋น„๋กฏํ•œ ๊ฐœ์ธ ๊ณต๋ถ€์— ์‹œ๊ฐ„์„ ์•„๋ผ์ง€ ์•Š์•˜๊ณ , 2020 ๋Œ€๊ฒฝ๊ถŒ ๋Œ€ํ•™์ƒ AI ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์ง„๋Œ€ํšŒ์—์„œ ์ตœ์šฐ์ˆ˜์ƒ, ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ๋น…๋ฐ์ดํ„ฐ ์œตํ•ฉ ์•„์ด๋””์–ด ๋ฐ ๋…ผ๋ฌธ ๊ฒฝ์ง„๋Œ€ํšŒ์—์„œ ๋Œ€์ƒ์„ ์ˆ˜์ƒํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ€ข
ย 3ํ•™๋…„ ๊ฒจ์šธ๋ฐฉํ•™ ๋™์•ˆ ๋ฐ์ดํ„ฐ ํŒ€์—์„œ ์ฒซ ์ธํ„ด์‹ญ์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ๋•์…˜ ์ˆ˜์ค€์˜ Raw ๋ฐ์ดํ„ฐ๋กœ ๋‹ค์–‘ํ•œ ๊ฐ€์„ค์„ ์„ธ์šฐ๊ณ  ๊ฒ€์ฆํ•ด๋ณผ ์ˆ˜ ์žˆ์—ˆ์œผ๋ฉฐ, ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ์ •๋œ ์ž์›์œผ๋กœ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋…ธํ•˜์šฐ๋ถ€ํ„ฐ Competition ๋ฐ์ดํ„ฐ๊ฐ€ ์•„๋‹Œ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋กœ ๋ชจ๋ธ๋งํ•  ๋•Œ ์ฃผ์˜ํ•ด์•ผ ํ•  ์  ๋“ฑ ๋‹ค์–‘ํ•œ ๊ฒƒ๋“ค์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย 4ํ•™๋…„๋ถ€ํ„ฐ ์ •๊ทœ์ง ์ œ์•ˆ์ด ์˜จ ํšŒ์‚ฌ์—์„œ ํ”„๋ก ํŠธ์—”๋“œ ์—”์ง€๋‹ˆ์–ด๋กœ ์ฒ˜์Œ์œผ๋กœ ๊ทผ๋ฌดํ•˜์˜€๊ณ , ํ•™๊ต๋ฅผ ์กธ์—…ํ•œ ๋’ค ๋ช‡ ๊ฐœ์˜ ํšŒ์‚ฌ๋ฅผ ๊ฑฐ์ณ ์ง€๊ธˆ๋„ ์›น ํ”„๋ก ํŠธ์—”๋“œ ๋ถ„์•ผ์— ์ง‘์ค‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์‹œ๊ฐ„ ์Œ์„ฑ ์ฑ„ํŒ… ํ˜‘์—… ํˆด, HR ์†”๋ฃจ์…˜, ์‚ฌ๋‚ด ๋ฉ”์‹ ์ € + ์‹ค์‹œ๊ฐ„ ๊ณ ๊ฐ ์‘๋Œ€ ํ”Œ๋Ÿฌ๊ทธ์ธ + CRM ํˆด์ด ํ•ฉ์ณ์ง„ ์˜ฌ์ธ์› ๋น„์ฆˆ ๋ฉ”์‹ ์ € ๋“ฑ ๋‹ค์–‘ํ•œ ์ œํ’ˆ์„ ๋งŒ๋“ค๋ฉฐ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋‹ค์–‘ํ•œ ์‚ฌ์—… ๋„๋ฉ”์ธ ์ง€์‹์„ ์Šต๋“ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ๋„ ์›น ํ”„๋ก ํŠธ์—”๋“œ ์—”์ง€๋‹ˆ์–ด๋กœ์„œ์˜ ์—ญ๋Ÿ‰์„ ํ‚ค์›Œ๋‚˜๊ฐ€๋ฉฐ, ๋™์‹œ์— โ€˜์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ๋” ๋งŽ์ด ์‚ฌ๋ž‘๋ฐ›๋Š” ์ œํ’ˆ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์„์ง€โ€™๋ฅผ ๊ณ ๋ฏผํ•ฉ๋‹ˆ๋‹ค.

ย ๊ธฐ์ˆ  ์Šคํƒ

โ€ข
ย React์˜ Diffing ์•Œ๊ณ ๋ฆฌ์ฆ˜๋ถ€ํ„ฐ Stack/Fiber reconciler์˜ ๋™์ž‘ ์›๋ฆฌ, scheduler, prioritization, lane ๋“ฑ์˜ ๋‚ด๋ถ€ ๊ตฌ์กฐ๋ฅผ ๊นŠ๊ฒŒ ์ดํ•ดํ•˜๊ณ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
โ€ข
ย Redux์˜ ๊ธฐ๋ณธ์ธ flux ํŒจํ„ด์„ ์ดํ•ดํ•˜๊ณ  Best practices๋ฅผ ์ˆ™์ง€ํ•˜๋ฉฐ, Redux๊ฐ€ ํ•„์š”ํ•œ ๊ณณ๊ณผ ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ณณ์„ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์ด์šฉํ•œ ๋Œ€๊ทœ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒํƒœ ๊ด€๋ฆฌ์— ๋Šฅ์ˆ™ํ•˜๋ฉฐ, ํ•„์š” ์‹œ ๋ฆฌ๋“€์„œ๋ฅผ ๋ชจ๋“ˆํ™”ํ•˜์—ฌ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย Reselect์™€ Re-reselect ๋“ฑ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์™œ ํ•„์š”ํ•œ์ง€ ์ดํ•ดํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์…€๋ ‰ํ„ฐ๊ฐ€ ์‚ฌ์šฉ๋˜๋Š” ์ƒํ™ฉ๊ณผ ํ˜ธ์ถœ ์ฃผ๊ธฐ ๋“ฑ์„ ๊ณ ๋ คํ•˜์—ฌ ์ ์ ˆํ•œ ๋ฉ”๋ชจ์ด์ œ์ด์…˜ ์ „๋žต์„ ์ˆ™์ง€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย Redux-Saga์˜ ํ•ต์‹ฌ ์ปจ์…‰๊ณผ Fork model ๋“ฑ์„ ์ดํ•ดํ•˜๊ณ , Event channel์„ ์ด์šฉํ•œ WebSocket ์ฒ˜๋ฆฌ ๋“ฑ ๋‹ค์–‘ํ•œ ์ƒํ™ฉ์— Saga๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย Jest๋ฅผ ์ด์šฉํ•œ ๊ธฐ๋ณธ์ ์ธ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ถ€ํ„ฐ, ๋‹ค๋ฅธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ๊ฒฐํ•ฉํ•˜์—ฌ DOM์—์„œ์˜ User interaction ํ…Œ์ŠคํŠธ, Saga ํ…Œ์ŠคํŠธ ๋“ฑ ๋‹ค์–‘ํ•œ ์ƒํ™ฉ์˜ ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย TypeScript์˜ ๊ตฌ์กฐ์  ํƒ€์ดํ•‘๊ณผ ํƒ€์ž… ์ถ”๋ก  ๋ฐฉ์‹์„ ๊นŠ๊ฒŒ ์ดํ•ดํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ๋‹ค๋ฅธ ํƒ€์ž… ์–ธ์–ด์™€ ๋น„๊ตํ•˜์—ฌ ์„ค๋ช…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ณต์žกํ•œ ์กฐ๊ฑด๋ถ€ ํƒ€์ž…์„ ๋น„๋กฏํ•œ ๋‹ค์–‘ํ•œ ํƒ€์ž…์„ ์‰ฝ๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย Webpack, Rollup ๋“ฑ์˜ ๋ฒˆ๋“ค๋Ÿฌ ์„ค์ •์„ ๋‹ค์ˆ˜ ๊ฒฝํ—˜ํ•ด ๋ณด์•˜์œผ๋ฉฐ, ์›ํ™œํ•œ Tree-shaking์„ ์œ„ํ•œ ์ฝ”๋“œ๊ฐ€ ๋ฌด์—‡์ธ์ง€, PURE annotations์˜ ์ ์ ˆํ•œ ์‚ฌ์šฉ๋ฒ•๊ณผ ๋ฒˆ๋“ค๋ง ๊ณผ์ • ๋“ฑ์„ ์ดํ•ดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย Babel์ด ์ตœ์‹  ๋ฌธ๋ฒ• ๋ฐ JSX๋ฅผ ์–ด๋–ป๊ฒŒ transformํ•˜๋Š”์ง€, core-js์˜ ์—ญํ• ์ด ๋ฌด์—‡์ธ์ง€ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย Recoil, Jotai ๋“ฑ์˜ minimal, atomicํ•œ ์ƒํƒœ ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์žฅ๋‹จ์ ์„ ์•Œ๊ณ , ์‚ฌ์šฉํ•ด ๋ณธ ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย Apollo Client๋ฅผ ์ด์šฉํ•ด GraphQL๋กœ ์„œ๋ฒ„์™€ ํ†ต์‹ ํ•˜๋Š” Data-driven application์—์„œ์˜ ์ƒํƒœ ๊ด€๋ฆฌ, ์บ์‹ฑ, Subscription์„ ์ด์šฉํ•œ WebSocket ์ฒ˜๋ฆฌ ๋“ฑ์„ ๊ฒฝํ—˜ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ย Storybook์œผ๋กœ ๋””์ž์ธ ์‹œ์Šคํ…œ ์ปดํฌ๋„ŒํŠธ์˜ ์ ‘๊ทผ์„ฑ ํ…Œ์ŠคํŠธ, Interaction ํ…Œ์ŠคํŠธ ๋“ฑ์„ ์ž‘์„ฑํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.
โ€ข
ย Electron์˜ Multi-process model๊ณผ Main-Renderer ํ”„๋กœ์„ธ์Šค ๊ฐ„์˜ IPC ๊ณผ์ • ๋“ฑ์„ ์ดํ•ดํ•˜๊ณ , cross-platform web application์„ ์œ ์ง€๋ณด์ˆ˜ํ•œ ๊ฒฝํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฝ๋ ฅ

โ€ข
2022.05 ~ ์ฃผ์‹ํšŒ์‚ฌ ์ฑ„๋„์ฝ”ํผ๋ ˆ์ด์…˜ ํ”„๋ก ํŠธ์—”๋“œ ์—”์ง€๋‹ˆ์–ด
โ—ฆ
ํ”„๋กœ์ ํŠธ: "Channel.io โ€” The all-in-one biz messenger"
โ–ช
React, TypeScript๋กœ ์ž‘์„ฑ๋œ ์ฑ„ํŒ… + CRM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
ํŒ€์ฑ—, ์ƒ๋‹ด ์ธ์ž…, OTM ๋ฉ”์‹œ์ง€ ๋ฐœ์†ก ๋“ฑ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ all-in-one์œผ๋กœ ์ง€์›ํ•˜๋Š” ๋Œ€๊ทœ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ์˜ ์ƒํƒœ ๊ด€๋ฆฌ ๋ฐฉ๋ฒ•๋ก ๊ณผ ์Šคํ‚ฌ์— ๋Œ€ํ•ด ๋งŽ์€ ์ธ์‚ฌ์ดํŠธ๋ฅผ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Data fetch์™€ ๋ Œ๋”๋ง ์‹œ์ ์˜ ๋ถˆ์ผ์น˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ฉฐ, ๊ฐ ๋„๋ฉ”์ธ์˜ ๋ฆฌ๋“€์„œ๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ Dynamicํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ธฐ์ˆ ์„ ์Šต๋“ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Redux, Redux-Saga๋ฅผ ์ด์šฉํ•ด ์‹ค์‹œ๊ฐ„์„ฑ์„ ๋„๋Š” ๋ถ€๋ถ„์˜ ๊ตฌํ˜„๊ณผ ๋ฌธ์ œ ํ•ด๊ฒฐ์— ์ง‘์ค‘ํ•˜์˜€์œผ๋ฉฐ, ๋™์‹œ์— ์›น๊ณผ ๊ฐ™์ด ๋ฐฐํฌํ•˜๊ณ  ์žˆ๋Š” Electron ๋ฐ์Šคํฌํƒ‘ ์•ฑ์˜ ๋ฌธ์ œ ํ•ด๊ฒฐ์—๋„ ์ ๊ทน ๊ธฐ์—ฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ–ช
๋‹จ์ˆœ hang, ๋žจ ๋ถ€์กฑ, ์•Œ๋ฆผ ์†Œ๋ฆฌ ์„ค์ •์ด OS์˜ Do not disturb ๋“ฑ์˜ ์„ค์ •์— ์˜ํ–ฅ๋ฐ›์ง€ ์•Š๋˜ ์ด์Šˆ ๋“ฑ์„ troubleshootingํ•˜๋ฉฐ, Electron ํ™˜๊ฒฝ์ด ๋ธŒ๋ผ์šฐ์ € ํ™˜๊ฒฝ๊ณผ ๋‹ค๋ฅธ ์ , Sentry ๋“ฑ์œผ๋กœ ์ˆ˜์ง‘๋˜์ง€ ์•Š๋Š” ์œ ์ € ํ™˜๊ฒฝ(์‚ฌ์šฉํ•˜๋Š” IME ๋“ฑ)์„ ์ถ”๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•, ๋‚˜์•„๊ฐ€ ์ตœ์‹  ๋ฒ„์ „์˜ Context isolation, Process sandboxing ๋“ฑ ๋‹ค์–‘ํ•œ ์ง€์‹์„ ์Šต๋“ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
ํ”„๋กœ์ ํŠธ: "Bezier Design Systemโ€
โ–ช
์‚ฌ๋‚ด ๋””์ž์ธ ์‹œ์Šคํ…œ์˜ React ๊ตฌํ˜„์ฒด์ธ bezier-react์— ์ ๊ทน ๊ธฐ์—ฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ–ช
Headless UI ์ปดํฌ๋„ŒํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ Radix UI๋ฅผ ๋„์ž…ํ•˜์—ฌ Popover, Tooltip ๋“ฑ floating component๊ฐ€ ๊ฐ–๋Š” ๊ณ ์งˆ์ ์ธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์˜€์œผ๋ฉฐ, ๋™์‹œ์— ์ ‘๊ทผ์„ฑ์„ ์ฑ™๊ธฐ๋Š” ๋ฐ์— ๋“œ๋Š” ๋น„์šฉ์„ ์ตœ์†Œํ™”ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ–ช
๋‹จ์ˆœ Storybook ์Šคํ† ๋ฆฌ ์ž‘์„ฑ์—์„œ ๋ฒ—์–ด๋‚˜ MDX, JSDoc ๋“ฑ์„ ์ด์šฉํ•ด anatomy๋ฅผ ๋ช…์‹œํ•˜๋Š” ๋“ฑ, ์œ ์ €๊ฐ€ ์˜ฌ๋ฐ”๋ฅธ ์‚ฌ์šฉ์ฒ˜์— ์˜ฌ๋ฐ”๋ฅธ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋‹ค๊ฐ๋„๋กœ ๋ฌธ์„œ๋ฅผ ๊ณ ๋„ํ™”ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ–ช
๊ทธ ์™ธ์—๋„ ํ”„๋กœ์ ํŠธ์— ์• ์ •์„ ๊ฐ–๊ณ , ๊ทธ๋™์•ˆ ๋ช…์‹œ๋˜์–ด ์žˆ์ง€ ์•Š๋˜ ์˜คํ”ˆ์†Œ์Šค ๋ผ์ด์„ผ์Šค๋ฅผ ๋ช…์‹œํ•˜๋Š” ๋“ฑ ์‚ฌ์†Œํ•˜์ง€๋งŒ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์— ์ง‘์ค‘ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ€ข
2021.08 ~ 2022.04 ์ฃผ์‹ํšŒ์‚ฌ ๋‘๋“ค๋ฆฐ ํ”„๋ก ํŠธ์—”๋“œ ์—”์ง€๋‹ˆ์–ด
โ—ฆ
ํ”„๋กœ์ ํŠธ: "๊ทธ๋ฆฌํŒ… โ€” ์‰ฝ๊ณ  ํŽธํ•œ ์ฑ„์šฉ ์†”๋ฃจ์…˜"
โ–ช
React, TypeScript๋ฅผ ์ด์šฉํ•œ SPA ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Apollo Client๋ฅผ ์ด์šฉํ•ด GraphQL ํ†ต์‹ , ์„œ๋ฒ„ ์ƒํƒœ๊ด€๋ฆฌ, ํด๋ผ์ด์–ธํŠธ ์ƒํƒœ๊ด€๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ–ˆ์œผ๋ฉฐ, Caching, Query Batching ๋“ฑ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์—์„œ ์ œ๊ณตํ•˜๋Š” ์ตœ์ ํ™” ๋ฐฉ๋ฒ•๋“ค์„ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•˜๋ ค ๋…ธ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
TypeScript๋ฅผ ๋” ์ž˜ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ReturnType์„ ๋น„๋กฏํ•œ Utility Types์„ ์ ๊ทน ์‚ฌ์šฉํ•˜๊ณ , ๊ตฌ์กฐ์  ํƒ€์ž… ์‹œ์Šคํ…œ์—์„œ ๋ฒ—์–ด๋‚˜ Opaque Types ๋“ฑ ๋‹ค์–‘ํ•œ ํƒ€์ž… ์‹œ์Šคํ…œ์„ ์ ์šฉํ•˜๋ ค ์‹œ๋„ํ–ˆ์œผ๋ฉฐ, ์ด๋Ÿฌํ•œ ์ผ๋ จ์˜ ๊ฒฝํ—˜๋“ค์„ ํŒ€ ๋‚ด์— ์ „ํŒŒํ•˜์—ฌ ํŒ€์ด TypeScript๋ฅผ ๋” ์ž˜ ์ดํ•ดํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋…ธ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
์›น ์ ‘๊ทผ์„ฑ ํ–ฅ์ƒ์„ ์œ„ํ•ด ์‹œ๋งจํ‹ฑ ํƒœ๊ทธ, tabindex ์†์„ฑ ๋“ฑ์„ ์ ๊ทน ์‚ฌ์šฉํ•˜๊ณ  ์ปจ๋ฒค์…˜์„ ์‚ฌ๋‚ด ์ฝ”๋“œ์— ์ ์šฉ์‹œํ‚ค๋ ค ๋…ธ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Jira, Slack ๋“ฑ์„ ์ด์šฉํ•œ ๋น ๋ฅธ ์—…๋ฌด ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜์— ๋Šฅ์ˆ™ํ•ด์กŒ์œผ๋ฉฐ, ๋น ๋ฅด๊ฒŒ ๋ณ€ํ™”ํ•˜๋Š” ์Šคํƒ€ํŠธ์—… ์กฐ์ง ๋ฌธํ™”์— ์ ์‘ํ•˜๋ ค ๋…ธ๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
์…€ ์ˆ˜ ์—†์ด ๋‹ค์–‘ํ•œ โ€œ๊ธฐ์ˆ ์ ์œผ๋กœ ๋„์ „ํ•ด๋ณผ ๋งŒํ•œ" ๊ณผ์ œ๋“ค์„ ํ•ด๊ฒฐํ–ˆ์œผ๋ฉฐ, ๋™์‹œ์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‚ฌ์šฉ์„ฑ์„ ๋Œ€ํญ ๊ฐœ์„ ํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ—ฆ
ํ”„๋กœ์ ํŠธ: โ€œ๊ทธ๋ฆฌํŒ… ์ปค๋ฆฌ์–ดโ€
โ–ช
๊ธฐ์กด์— create-react-app์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ ๋ ˆ๊ฑฐ์‹œ ํ”„๋กœ์ ํŠธ๋ฅผ Next.js ๊ธฐ๋ฐ˜์˜ ํ”„๋กœ์ ํŠธ๋กœ ์ƒˆ๋กœ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
์ฒ˜์Œ๋ถ€ํ„ฐ SSG๊ฐ€ ํ•„์š”ํ•œ ์ƒํ™ฉ์„ ๊ฐ€์ •ํ•˜๊ณ  ์ด์— ๋Œ€์‘ํ•˜๋ฉฐ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ–ˆ์œผ๋ฉฐ, ์ดํ›„ ํ•„์š”์— ๋”ฐ๋ผ ISR ๋ฐฉ์‹์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์กฐ ๋ฐ ๋ฒˆ๋“ค๋ง ์„ค์ •, ์Šคํƒ€์ผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ ์ปจ๋ฒค์…˜ ์ง€์ •, husky๋ฅผ ์ด์šฉํ•œ Commit ์‹œ ESLint ์ž๋™ํ™”, ๋ธŒ๋žœ์น˜ ์ „๋žต์— ๋งž๋Š” CircleCI ์ž๋™ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ ์„ค์ • ๋“ฑ ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐ ์…‹์—…์— ์ ๊ทน ๊ธฐ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
ํ”„๋กœ์ ํŠธ: "Doodlin Design System"
โ–ช
Sass๋ฅผ ์‚ฌ์šฉํ•œ ์‚ฌ๋‚ด ๋””์ž์ธ ์‹œ์Šคํ…œ ์œ ์ง€๋ณด์ˆ˜์— ์ ๊ทน ๊ธฐ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
๊ธฐ์กด์— ์‚ฌ์šฉํ•˜๋˜ Storybook์„ ๋” ์ž˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก Stories๋ฅผ ๊ตฌ์กฐํ™”ํ–ˆ๊ณ , ์—ฃ์ง€ ์ผ€์ด์Šค๋ฅผ ํฌํ•จํ•ด ๋‹ค์–‘ํ•œ ์ƒํ™ฉ์— ๋Œ€ํ•œ UI ํ…Œ์ŠคํŠธ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋„๋ก ํ…Œ์ŠคํŠธ๋ฅผ ๊ฐ•ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Rollup์„ ์ด์šฉํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฒˆ๋“ค๋งํ•˜๊ณ , ์ด๋ฅผ npm์— ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์—์„œ ์ƒ๊ธฐ๋Š” ๋‹ค์–‘ํ•œ ์—๋Ÿฌ๋“ค์— ๋Œ€ํ•œ ํ•ด๊ฒฐ ๊ฒฝํ—˜์„ ์Œ“์•˜์Šต๋‹ˆ๋‹ค.
โ€ข
2021.03 ~ 2021.07 ์œ ํ•œํšŒ์‚ฌ ํ”„๋ ˆ์„ผ์Šค์•„์‹œ์•„ ํ”„๋ก ํŠธ์—”๋“œ ์—”์ง€๋‹ˆ์–ด
โ—ฆ
ํ”„๋กœ์ ํŠธ: "Presence โ€” Drop-in live & async voice collaboration for remote teams"
โ–ช
Electron, React, TypeScript, WebRTC (Agora SDK)๋ฅผ ์ด์šฉํ•œ ์‹ค์‹œ๊ฐ„ ํ˜‘์—… ๋ฐ์Šคํฌํƒ‘ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Redux๋ฅผ ์ด์šฉํ•ด ๋ณต์žกํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ƒํƒœ๋ฅผ ์ •๊ทœํ™”ํ•˜์—ฌ ๊ด€๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ–ช
Redux-Saga ๋ฐ ๋™ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ Event Channel์„ ํ™œ์šฉํ•ด ์‹ค์‹œ๊ฐ„์„ฑ์ด ํ•„์š”ํ•œ API ๋น„๋™๊ธฐ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Webpack์„ ์ด์šฉํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฒˆ๋“ค๋งํ•˜์˜€์œผ๋ฉฐ, ํ•„์š”์— ๋”ฐ๋ผ webpack.config.js๋ฅผ ์ง์ ‘ ์ˆ˜์ •ํ•˜์—ฌ ๊ฐ์ข… ์ตœ์ ํ™” ๋ฐ ๋ฒˆ๋“ค๋ง ์˜ค๋ฅ˜๋“ค์„ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
ํ”„๋กœ๋•์…˜ ๋ฐฐํฌ ์ „ Jest๋กœ ๊ธฐ๋Šฅ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋ฅผ, Storybook์œผ๋กœ UI ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŒ…์„ ๋ฏธ๋ฆฌ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Lerna๋ฅผ ์ด์šฉํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋ชจ๋…ธ๋ ˆํฌ๋กœ ๊ด€๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.
โ€ข
2020.12 ~ 2021.02 ์ฃผ์‹ํšŒ์‚ฌ ์ด์ œ์ด์—” Data Team ์ธํ„ด์‹ญ
โ—ฆ
ํ”„๋กœ์ ํŠธ: "๋จธ์‹ ๋Ÿฌ๋‹์„ ์ด์šฉํ•˜์—ฌ ์ถ”์ฒœ ์„œ๋น„์Šค์— ๋ถ€์ ํ•ฉํ•œ ํŠธ์œ„์น˜ ์ŠคํŠธ๋ฆฌ๋จธ ํŒ๋ณ„"
โ–ช
PySpark(AWS EMR) ํ™˜๊ฒฝ์„ ์ง์ ‘ ์…‹์—…ํ•˜๊ณ , Raw ๋ฐ์ดํ„ฐ์…‹์˜ ๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ ๋ฐ EDA, Plotting ๊ณผ์ •์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
AWS SageMaker ํ™˜๊ฒฝ์„ ์ง์ ‘ ์…‹์—…ํ•˜๊ณ , PyCaret ๋ฐ XGBoost๋กœ ๋จธ์‹ ๋Ÿฌ๋‹ ๊ณผ์ •์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Normalization, Oversampling/Undersampling, Feature Vectorization ๋“ฑ ๋จธ์‹ ๋Ÿฌ๋‹ ์ „ ๊ณผ์ •์— ์‚ฌ์šฉ๋˜๋Š” ๋‹ค์–‘ํ•œ ๊ฐœ๋… ๋ฐ ๊ธฐ๋ฒ•๋“ค์„ ์ตํ˜”์Šต๋‹ˆ๋‹ค.
โ€ข
2018.09 ~ 2018.11 ์ฃผ์‹ํšŒ์‚ฌ ํ•„๋กœ์šฐ์ŠคํŠœ๋””์˜ค ํ’€์Šคํƒ ์—”์ง€๋‹ˆ์–ด
โ—ฆ
ํ”„๋กœ์ ํŠธ: A (๋น„๊ณต๊ฐœ)
โ–ช
openpyxl๋กœ Microsoft Excel ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถˆ๋Ÿฌ์™€ sqlite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๊ด€๋ฆฌํ–ˆ์œผ๋ฉฐ, ์ด๋ฅผ ์ œ์–ดํ•˜๋Š” ํŽ˜์ด์ง€๋ฅผ Flask๋กœ ์ œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
venv๋กœ Python ํŒจํ‚ค์ง€ ๋ฐ ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ๊ด€๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
ํ”„๋กœ์ ํŠธ: B (๋น„๊ณต๊ฐœ)
โ–ช
JSP ๋ฐ MySQL๋กœ ์›น ๊ธฐ๋ฐ˜ ๊ฒŒ์‹œํŒ์„ ๋ณ„๋„์˜ ํ”„๋ ˆ์ž„์›Œํฌ ์—†์ด ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ–ช
Java๋กœ ์ด์ค‘ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ง์ ‘ ๊ตฌํ˜„ํ•˜์—ฌ ์ด์ „/๋‹ค์Œ ๊ธ€ ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜์˜€๊ณ , ์ด์™ธ์—๋„ ํŽ˜์ด์ง€๋„ค์ด์…˜ ๋“ฑ์˜ ๋ถ€๊ฐ€ ๊ธฐ๋Šฅ๋“ค์„ ์ง์ ‘ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ˆ˜์ƒ๋‚ด์—ญ

โ€ข
2021.10 ์ œ3ํšŒ ๋Œ€๊ตฌ ๋น…๋ฐ์ดํ„ฐ ๋ถ„์„ ๊ฒฝ์ง„๋Œ€ํšŒ โ€” ๊ณต๊ณต๋ถ€๋ฌธ
โ—ฆ
์ž…์ƒ ยท ํŒ€ "์Šคํฌ๋ฅ˜ ๋“œ๋ผ์ด๋ฒ„" ยท ๋Œ€๊ตฌ๋””์ง€ํ„ธ์‚ฐ์—…์ง„ํฅ์›
โ€ข
2021.10 ICPC World Finals Moscow (44th Annual World Finals of the International Collegiate Programming Contest)
โ—ฆ
77๋“ฑ ยท Honorable Mention ยท ํŒ€ "Catdriip"
โ€ข
2021.05 2021 ๋Œ€๊ฒฝ๊ถŒ ๋Œ€ํ•™์ƒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์ง„๋Œ€ํšŒ
โ—ฆ
๋Œ€์ƒ ยท ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ์†Œํ”„ํŠธ์›จ์–ด๊ต์œก์„ผํ„ฐ
โ€ข
2021.03 โ€˜๋น…๋ฐ์ดํ„ฐ ์œตํ•ฉโ€™ ์•„์ด๋””์–ด ๋ฐ ๋…ผ๋ฌธ ๊ฒฝ์ง„๋Œ€ํšŒ (2020)
โ—ฆ
๋Œ€์ƒ ยท ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ๋ฐ์ดํ„ฐ์œตํ•ฉ์ปดํ“จํŒ…ํ•™๊ณผ
โ€ข
2021.01 2020-2021 NHํˆฌ์ž์ฆ๊ถŒ ๋น…๋ฐ์ดํ„ฐ ๊ฒฝ์ง„๋Œ€ํšŒ "๋ฐ์ดํ„ฐ, ๋ฌธํ™”๊ฐ€ ๋˜๋‹ค" โ€” League 1. ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋ฐœ "AI์•ผ, ์ง„์งœ ๋‰ด์Šค๋ฅผ ์ฐพ์•„์ค˜!"
โ—ฆ
๋ณธ์„  ์ง„์ถœ ยท NHํˆฌ์ž์ฆ๊ถŒ
โ€ข
2020.11 2020 ๋Œ€๊ฒฝ๊ถŒ ๋Œ€ํ•™์ƒ AI ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์ง„๋Œ€ํšŒ
โ—ฆ
์ตœ์šฐ์ˆ˜์ƒ (์ด์žฅ์ƒ) ยท ๊ฒฝ๋ถ๋Œ€ํ•™๊ต
โ€ข
2020.11 ์ œ20ํšŒ ํ•œ๊ตญ ๋Œ€ํ•™์ƒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์‹œ๋Œ€ํšŒ (2020 ACM-ICPC Asia-Seoul Regional)
โ—ฆ
51๋“ฑ (ICPC 32๋“ฑ) ยท Honorable Mention ยท ํŒ€ "3mipil" ยท ๊ณผํ•™๊ธฐ์ˆ ์ •๋ณดํ†ต์‹ ๋ถ€
โ€ข
2020.07 [ํฌ์ŠคํŠธ ์ฝ”๋กœ๋‚˜ ์‹œ๋Œ€๋ฅผ ๋Œ€๋น„ํ•œ] ๋น„๊ต๊ณผ ํ”„๋กœ๊ทธ๋žจ ์•„์ด๋””์–ด ๊ณต๋ชจ์ „
โ—ฆ
์šฐ์ˆ˜์ƒ ยท ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ์†Œํ”„ํŠธ์›จ์–ด๊ต์œก์„ผํ„ฐ
โ€ข
2020.05 ~ 2020.12 SW๋งˆ์—์ŠคํŠธ๋กœ 11๊ธฐ ์—ฐ์ˆ˜์ƒ
โ—ฆ
๊ณผํ•™๊ธฐ์ˆ ์ •๋ณดํ†ต์‹ ๋ถ€
โ€ข
2020.05 ~ 2022.04 ๊ณผํ•™๊ธฐ์ˆ ์ „๋ฌธ์‚ฌ๊ด€ 6๊ธฐ ํ›„๋ณด์ƒ (๋ณธ์ธ ์˜์‚ฌ์— ์˜ํ•œ ์ž๊ฒฉ ํฌ๊ธฐ)
โ—ฆ
๊ณผํ•™๊ธฐ์ˆ ์ •๋ณดํ†ต์‹ ๋ถ€
โ€ข
2020.06 2020 ๋Œ€๊ฒฝ๊ถŒ ๋Œ€ํ•™์ƒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์ง„๋Œ€ํšŒ
โ—ฆ
์šฐ์ˆ˜์ƒ ยท ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ์†Œํ”„ํŠธ์›จ์–ด๊ต์œก์„ผํ„ฐ
โ€ข
2019.11 2019 ๋Œ€๊ฒฝ๊ถŒ ๋Œ€ํ•™์ƒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์ง„๋Œ€ํšŒ
โ—ฆ
์ตœ์šฐ์ˆ˜์ƒ ยท ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ์†Œํ”„ํŠธ์›จ์–ด๊ต์œก์„ผํ„ฐ
โ€ข
2019.11 ์ œ19ํšŒ ํ•œ๊ตญ ๋Œ€ํ•™์ƒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์‹œ๋Œ€ํšŒ (2019 ACM-ICPC Asia-Seoul Regional)
โ—ฆ
19๋“ฑ (ICPC 11๋“ฑ) ยท ์‚ผ์„ฑSDS ํŠน๋ณ„์ƒ ยท ํŒ€ "Catdriip" ยท ๊ณผํ•™๊ธฐ์ˆ ์ •๋ณดํ†ต์‹ ๋ถ€
โ€ข
2019.09 ~ 2020.09 "์ฝ”๋“œ ์ฝ์–ด์ฃผ๋Š” ์‚ฌ๋žŒ๋“ค" SW์ „๋ฌธ๊ฐ€ ์œ„์ด‰
โ—ฆ
๋Œ€๊ตฌ์ฐฝ์กฐ๊ฒฝ์ œํ˜์‹ ์„ผํ„ฐ
โ€ข
2019.08 2019 ์˜คํ”ˆ ์ธํ”„๋ผ ๊ฐœ๋ฐœ ๊ฒฝ์ง„๋Œ€ํšŒ
โ—ฆ
๋™์ƒ ยท ํŒ€ "๋ฉ”์•„๋ฆฌ" ยท ์ฃผ์‹ํšŒ์‚ฌ ๋งจํ…
โ€ข
2019.08 ์ œ2ํšŒ ํ•œ๊ตญ ๋ฉ”์ด์ปค&์ฝ”๋”ฉ ๊ฒฝ์ง„๋Œ€ํšŒ
โ—ฆ
๋ณธ์„  ์ง„์ถœ ยท ๊ต์œก๋ถ€
โ€ข
2019.05 2019 ๋Œ€๊ฒฝ๊ถŒ ๋Œ€ํ•™์ƒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์ง„๋Œ€ํšŒ
โ—ฆ
์ตœ์šฐ์ˆ˜์ƒ ยท ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ์†Œํ”„ํŠธ์›จ์–ด๊ต์œก์„ผํ„ฐ
โ€ข
2018.11 ์ œ18ํšŒ ํ•œ๊ตญ ๋Œ€ํ•™์ƒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝ์‹œ๋Œ€ํšŒ (2018 ACM-ICPC Asia-Seoul Regional)
โ—ฆ
34๋“ฑ (ICPC 20๋“ฑ) ยท NAVER ํŠน๋ณ„์ƒ ยท ํŒ€ "1gunpil2mipil" ยท ๊ณผํ•™๊ธฐ์ˆ ์ •๋ณดํ†ต์‹ ๋ถ€

์žฅํ•™๋‚ด์—ญ

๊ตญ๊ฐ€์žฅํ•™๊ธˆ(I, II์œ ํ˜•) ๋“ฑ์˜ ์žฅํ•™๊ธˆ์€ ๊ธฐ์žฌํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
โ€ข
2020.10 2020 ์ปดํ“จํ„ฐํ•™๋ถ€ '๋“œ๋ฆผ ์•ค ๋””์ž์ธ(Dream and Design)' ์žฅํ•™๊ธˆ โ€” ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ์ปดํ“จํ„ฐํ•™๋ถ€
โ€ข
2020.05 ๊ฒฝ๋ถ๋Œ€ํ•™๊ต์žฅํ•™ํšŒ ์ œ7ํšŒ ์˜์˜ˆ์žฅํ•™์ƒ โ€” (์žฌ)๊ฒฝ๋ถ๋Œ€ํ•™๊ต์žฅํ•™ํšŒ
โ€ข
2020 ~ 2022 ๊ตญ๊ฐ€์šฐ์ˆ˜์žฅํ•™๊ธˆ(์ด๊ณต๊ณ„) โ€” ํ•œ๊ตญ์žฅํ•™์žฌ๋‹จ
โ€ข
2019-2 ์„ฑ์ ์šฐ์ˆ˜์žฅํ•™๊ธˆ โ€” ๊ฒฝ๋ถ๋Œ€ํ•™๊ต
โ€ข
2019-1 ์„ฑ์ ์šฐ์ˆ˜์žฅํ•™๊ธˆ โ€” ๊ฒฝ๋ถ๋Œ€ํ•™๊ต
โ€ข
2018-2 ์„ฑ์ ์šฐ์ˆ˜์žฅํ•™๊ธˆ โ€” ๊ฒฝ๋ถ๋Œ€ํ•™๊ต
โ€ข
2018-1 ์„ฑ์ ์šฐ์ˆ˜์žฅํ•™๊ธˆ โ€” ๊ฒฝ๋ถ๋Œ€ํ•™๊ต
โ€ข
2018-1 ์ž…ํ•™์„ฑ์ ์šฐ์ˆ˜์žฅํ•™๊ธˆ โ€” ๊ฒฝ๋ถ๋Œ€ํ•™๊ต

ํ”„๋กœ์ ํŠธ ๋ฐ ํ™œ๋™

โ€ข
2020.05 ~ 2020.12 ํ”„๋กœ์ ํŠธ: "Excalibur: ๋น„๋Œ€๋ฉด ๊ฐ•์˜ ์ˆ˜๊ฐ•์ƒ-๊ฐ•์˜์ž ๋„์šฐ๋ฏธ ํ”Œ๋žซํผ" SW๋งˆ์—์ŠคํŠธ๋กœ
โ—ฆ
AI ์—”์ง€๋‹ˆ์–ด๋กœ ํ™œ๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
OpenCV๋ฅผ ์ด์šฉํ•œ ์–ผ๊ตด ์ธ์‹ ์กธ์Œ ๊ฐ์ง€ ๋ชจ๋“ˆ์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
TextRank๋ฅผ ์ด์šฉํ•œ ํ‚ค์›Œ๋“œ ์ถ”์ถœ์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
2020.05 ~ 2020.10 ์—ฐ๊ตฌ ํ”„๋กœ์ ํŠธ: "๊ฐ์‹œยท์ •์ฐฐ์„ ์œ„ํ•œ ๋”ฅ๋Ÿฌ๋‹ ๊ธฐ๋ฐ˜ ํ‘œ์  ์ธ์‹ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์—ฐ๊ตฌ" ๊ณผํ•™๊ธฐ์ˆ ์ „๋ฌธ์‚ฌ๊ด€
โ—ฆ
์ปดํ“จํ„ฐ ๋น„์ „์˜ ๊ธฐ์ดˆ์™€ Image Classification, Object Detection์„ ์œ„ํ•œ ๊นŠ์€ ์‹ ๊ฒฝ๋ง์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
SSD(SIngle Shot Multibox Detector), Retinex ๋“ฑ์„ ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
2019.09 2019ํ•™๋…„๋„ ์ „๊ณต ํ•™์Šต๋ฒ• ์˜์ƒ๊ฐœ๋ฐœ ์‚ฌ์—… ํ•™์Šต๋ฒ• ์ธํ„ฐ๋ทฐ ์ž๋ฃŒ๊ตฌ์กฐ, ์ž๋ฃŒ๊ตฌ์กฐ์‘์šฉ ยท ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ์†Œํ”„ํŠธ์›จ์–ด๊ต์œก์„ผํ„ฐ
โ€ข
2019.09 ~ 2019.10 ์ฝ”๋“œ ์ฝ์–ด์ฃผ๋Š” ์‚ฌ๋žŒ๋“ค 'React.js ์‹ค์Šต' ๊ทธ๋ฃน ์Šคํ„ฐ๋””์žฅ ๋Œ€๊ตฌ์ฐฝ์กฐ๊ฒฝ์ œํ˜์‹ ์„ผํ„ฐ
โ—ฆ
React์˜ ๊ธฐ์ดˆ๋ถ€ํ„ฐ express์™€ ํ•จ๊ป˜ ์ž์‹ ๋งŒ์˜ ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค์–ด๋ณด๋Š” ๊ณผ์ •๊นŒ์ง€ ๊ทธ๋ฃน ์Šคํ„ฐ๋””๋ฅผ ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
2019.03 ~ 2020.07 ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œํ•ด๊ฒฐ ๋™์•„๋ฆฌ "๊ณ ๋ฆฌ" ํšŒ์žฅ ๊ฒฝ๋ถ๋Œ€ํ•™๊ต
โ—ฆ
์ž„๊ธฐ ์ค‘ ์ˆ˜์ƒ: 2019.11 2019 SW์ „๊ณต๋™์•„๋ฆฌ ๊ฒฝ์ง„๋Œ€ํšŒ ์ตœ์šฐ์ˆ˜์ƒ
โ—ฆ
์•Œ๊ณ ๋ฆฌ์ฆ˜ ์Šคํ„ฐ๋””๋ฅผ ๊ธฐํšํ•˜๊ณ  ์ง„ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ์Šฌ๋ผ์ด๋“œ๋“ค์€ ๋‹ค์Œ ๋งํฌ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค: driip.me/slides
โ€ข
2019 ~ 2020 ๊ต๋‚ด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋Œ€ํšŒ Operator ๊ฒฝ๋ถ๋Œ€ํ•™๊ต
โ—ฆ
๊ต๋‚ด ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋Œ€ํšŒ์˜ ์šด์˜์ง„๊ณผ ๋ฌธ์ œ ์ œ์ž‘์ž/๊ฒ€์ˆ˜์ž๋กœ ํ™œ๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
2020.10 ~ 2020.11 '์Šฌ๊ธฐ๋กœ์šด ์ปดํ•™๋Œ€ํšŒ' ์šด์˜์ง„
โ—ฆ
2020.10 ~ 2020.11 '2020 Goricon' ๋ฌธ์ œ ์ œ์ž‘์ž & ๋ฌธ์ œ ๊ฒ€์ˆ˜์ž
โ—ฆ
2019.08 ~ 2019.09 '2019 Goricon' ๋ฌธ์ œ ๊ฒ€์ˆ˜์ž
โ€ข
2019 ~ 2020 ํ•™๋ถ€ ํŠœํ„ฐ ๊ฒฝ๋ถ๋Œ€ํ•™๊ต ์ปดํ“จํ„ฐํ•™๋ถ€
โ—ฆ
ํ•™๋ถ€ ๊ณผ๋ชฉ์˜ ํŠœํ„ฐ(TA)๋ฅผ ๋‹ด๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
2021.03 2021-1 '์ž๋ฃŒ๊ตฌ์กฐ๋ฐ์‘์šฉ' ํŠœํ„ฐ
โ—ฆ
2020.03 ~ 2020.06 2020-1 '์•Œ๊ณ ๋ฆฌ์ฆ˜์‹ค์Šต' ํŠœํ„ฐ
โ—ฆ
2019.09 ~ 2019.12 2019-2 '์ž๋ฃŒ๊ตฌ์กฐ์‘์šฉ' ํŠœํ„ฐ
โ—ฆ
2019.06 ~ 2019.07 2019-S 'ํŒŒ์ด์„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ' ํŠœํ„ฐ
โ€ข
2018.11 ~ 2018.12 '์†Œํ”„ํŠธ์›จ์–ด๋กœ ๋‚˜๋ฅด์ƒค' ๋ณด์กฐ ๊ฐ•์‚ฌ ๋Œ€๊ตฌ์†Œํ”„ํŠธ์›จ์–ด๋งˆ์ด์Šคํ„ฐ๊ณ ๋“ฑํ•™๊ต
โ—ฆ
๊ณ ๋“ฑํ•™์ƒ๋“ค์—๊ฒŒ HTML/CSS ๊ธฐ์ดˆ์™€ JavaScript ์‹ฌํ™”๋ฅผ ๊ฐ€๋ฅด์ณค์Šต๋‹ˆ๋‹ค.
โ—ฆ
๋น„๋™๊ธฐ API ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ณ , MediaDevices API๋ฅผ ์ด์šฉํ•ด ์›น์บ ์„ ์‚ฌ์šฉํ•˜๋Š” ์–ผ๊ตด ์ธ์‹ ์›น ํ”„๋กœ์ ํŠธ์˜ ์™„์„ฑ์„ ๋„์™”์Šต๋‹ˆ๋‹ค.

ํ•™๋ ฅ

โ€ข
2018.03 ~ 2022.02 ๊ฒฝ๋ถ๋Œ€ํ•™๊ต
โ—ฆ
์กธ์—… (์ปดํ“จํ„ฐํ•™๋ถ€ ์‹ฌํ™”์ปดํ“จํ„ฐ๊ณตํ•™ ํ•™์‚ฌ)
โ—ฆ
์ „๊ณต ํ‰์ : 4.03 / 4.5
โ€ข
2015.03 ~ 2018.02 ํ–‰์‹ ๊ณ ๋“ฑํ•™๊ต
โ—ฆ
์กธ์—…

๊ธฐํƒ€ ํ™œ๋™

ย ์ปจํผ๋Ÿฐ์Šค ์ฐธ์—ฌ

โ€ข
2023.04 GDSC KNU 2023 Dev ํ† ํฌ์ฝ˜์„œํŠธ Frontend ํŒจ๋„

์˜จ๋ผ์ธ ๊ต์œก

โ€ข
2020.08 ~ 2020.11 Udacity Deep Learning Nanodegree

ย ์˜คํ”ˆ์†Œ์Šค ๊ธฐ์—ฌ

โ€ข
type-challenges โ€” Collection of TypeScript type challenges with online judge
โ—ฆ
TypeScript ํƒ€์ž… ์ฑŒ๋ฆฐ์ง€ ๋ฌธ์ œ๋“ค์„ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ–ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
misskey โ€” An interplanetary microblogging platform
โ—ฆ
Messaging room์—์„œ Cmd + Enter ํ‚ค ์กฐํ•ฉ์ด ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ† ์ด ํ”„๋กœ์ ํŠธ

Created at
Name
Tech stack
Repository
Link

ํ•™๋ถ€ ํ”„๋กœ์ ํŠธ

โ€ข
2020.09 ~ 2020.12 COVID-19 ๋„์šฐ๋ฏธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ITEC402 ์ข…ํ•ฉ์„ค๊ณ„ํ”„๋กœ์ ํŠธ2
โ—ฆ
Kotlin์„ ์ด์šฉํ•œ ์•ˆ๋“œ๋กœ์ด๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
MPAndroidChart์™€ XmlPullParser๋ฅผ ์ด์šฉํ•ด ์ผ๋ณ„ ํ™•์ง„์ž ๊ทธ๋ž˜ํ”„, ์ผ๋ณ„ ๊ฒฉ๋ฆฌํ•ด์ œ ๊ทธ๋ž˜ํ”„๋ฅผ ๋ Œ๋”๋งํ•˜๋Š” ๋ถ€๋ถ„์„ ๋‹ด๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
2020.03 ~ 2020.06 ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ ๊ธฐ๋ฐ˜์˜ ๋‹ค์ค‘์ ‘์† ์ฑ„ํŒ… ํ”„๋กœ๊ทธ๋žจ EECS312 ๋„คํŠธ์›Œํฌํ”„๋กœ๊ทธ๋ž˜๋ฐ
โ—ฆ
Winsock ๊ธฐ๋ฐ˜์˜ ์ฝ˜์†” ์ฑ„ํŒ… ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
๋‹ค์ค‘์ ‘์†, 1:1 ์ฑ„ํŒ… ๋“ฑ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
โ€ข
2020.03 ~ 2020.06 ์‹œ๊ฐ„์ œ ์ผ์ž๋ฆฌ ๊ณต์œ  ํ”Œ๋žซํผ ๊ฐœ๋ฐœ ๋ฐ ์—…๊ทธ๋ ˆ์ด๋“œ ITEC401 ์ข…ํ•ฉ์„ค๊ณ„ํ”„๋กœ์ ํŠธ1
โ—ฆ
Kotlin์„ ์ด์šฉํ•œ ์•ˆ๋“œ๋กœ์ด๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
2019.09 ~ 2019.12 ํ•™์ƒ ๊ฒฝ๋ ฅ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ COMP224 ์†Œํ”„ํŠธ์›จ์–ด์„ค๊ณ„
โ—ฆ
Python์„ ์ด์šฉํ•ด GUI ๊ธฐ๋ฐ˜์˜ CRUD ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ๋ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
์†Œํ”„ํŠธ์›จ์–ด ์„ค๊ณ„์˜ ๊ธฐ์ดˆ(์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•๋ก , ์š”๊ตฌ ์‚ฌํ•ญ ์ •์˜, Functional/Structural/Behavioral Modeling, ํด๋ž˜์Šค ์„ค๊ณ„)์— ๋Œ€ํ•ด ๋ฐฐ์šฐ๊ณ  ํ”„๋กœ์ ํŠธ์— ์ง์ ‘ ์ ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„ ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ๋ฅผ ๋‹ด๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค.
โ€ข
2019.09 ~ 2019.12 Battle Typing - ๋Œ€์ „ํ˜• ํƒ€์ž์—ฐ์Šต ๊ฒŒ์ž„ ELEC462 ์‹œ์Šคํ…œํ”„๋กœ๊ทธ๋ž˜๋ฐ
โ—ฆ
C๋ฅผ ์ด์šฉํ•œ ์ฝ˜์†” ๊ธฐ๋ฐ˜์˜ ํƒ€์ž์—ฐ์Šต ๊ฒŒ์ž„ ๊ฐœ๋ฐœ์— ์ฐธ์—ฌํ–ˆ์Šต๋‹ˆ๋‹ค.
โ—ฆ
2์ธ ๋ฉ€ํ‹ฐํ”Œ๋ ˆ์ด, ์˜จ๋ผ์ธ ๋žญํ‚น ์‹œ์Šคํ…œ ๋“ฑ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
โ—ฆ
๋ฆฌ๋ˆ…์Šค ์†Œ์ผ“ ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ์‹œ๊ทธ๋„ ์ฒ˜๋ฆฌ, ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ncurses๋ฅผ ์ด์šฉํ•œ ์ฝ˜์†” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋“ฑ์— ๋Œ€ํ•ด ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.
โ€ข
2018.09 ~ 2018.12 ๊ตญ๋‚ด ๋Œ€ํ•™๊ต๋“ค์˜ 'ํƒ€๋Œ€ํ•™ ํ•™์ ๊ต๋ฅ˜' ํ˜‘์ • ํ˜„ํ™ฉ์„ ํ†ตํ•ด ๋ณด๋Š” ๋Œ€ํ•™ ๊ฐ„ ๊ด€๊ณ„์™€ ๊ฐ ๋Œ€ํ•™์˜ ํŠน์„ฑ CLTR264 ์†Œ์…œ๋„คํŠธ์›Œํฌ
โ—ฆ
UCINET์„ ์ด์šฉํ•œ ๊ทธ๋ž˜ํ”„ ๋„คํŠธ์›Œํฌ ์‹œ๊ฐํ™” ํ”„๋กœ์ ํŠธ๋ฅผ ๋งก์•˜์Šต๋‹ˆ๋‹ค.
โ—ฆ
๊ทธ๋ž˜ํ”„ ์ด๋ก , ๋„คํŠธ์›Œํฌ ์ด๋ก ์˜ ๊ธฐ์ดˆ์— ๋Œ€ํ•ด ๋ฐฐ์› ์Šต๋‹ˆ๋‹ค.