Sanghoon Kim

Sanghoon Kim

Frontend Engineer at Lunit.

πŸ“ Daejeon, South Korea
https://seiker.kr https://twitter.com/seikerseiker
Front-end

create-react-app κΈ°λ³Έ λ²ˆλ“€λŸ¬μ—μ„œ Vite둜 λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ν•˜κΈ°

CRA(create-react-app)을 톡해 λΆ€νŠΈμŠ€νŠΈλž˜ν•‘λœ React μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 경우 λ²ˆλ“€λ§μ„ μœ„ν•΄ κΈ°λ³Έ μ œκ³΅λ˜λŠ” react-scripts을 μ‚¬μš©ν•©λ‹ˆλ‹€. 이 react-scripts λΌμ΄λΈŒλŸ¬λ¦¬λŠ” 쉽고 κ°„νŽΈν•˜μ§€λ§Œ, 라이브러리 λ‚΄λΆ€μ—μ„œ μ‚¬μš©λ˜λŠ” Webpack λ²ˆλ“€λŸ¬κ°€ 느리고 무거운 νŽΈμž…λ‹ˆλ‹€. 저희 νŒ€μ—μ„œ λ‹΄λ‹Ήν•˜κ³  μžˆλŠ” ν”„λ‘œμ νŠΈκ°€ Webpack에 크게 μ˜μ‘΄μ„±μ„ κ°€μ§€κ³  μžˆμ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμ— ꡳ이 Webpack(즉, react-scripts)을 κ³ μ§‘ν•΄μ•Ό ν•  μ΄μœ κ°€ μ—†μ–΄λ³΄μ˜€μŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ, μΆ©λΆ„νžˆ

νšŒμ‚¬ ν™λ³΄μ˜μƒμ— (5초 정도?) λ‚΄κ°€ λ‚˜μ™”λ‹€
μ·¨μ—…

νšŒμ‚¬ ν™λ³΄μ˜μƒμ— (5초 정도?) λ‚΄κ°€ λ‚˜μ™”λ‹€

ν™”μ œμ˜ κ·Έ ν™λ³΄μ˜μƒνšŒμ‚¬ ν™λ³΄μ˜μƒμ— μ§§κ²Œλ‚˜λ§ˆ (λŒ€μΆ© μ„Έλ³΄λ‹ˆκΉŒ 5초 정도 λ‚˜μ˜¨ 것 κ°™λ‹€) λ‚΄κ°€ λ“±μž₯ν–ˆλ‹€λŠ” μ†Œμ‹μ„ νŒ€μ›μ—κ²Œ μ „ν•΄ λ“€μ—ˆλ‹€. 기회λ₯Ό λ†“μΉ˜μ§€ μ•Šκ³  (?) λ‚΄κ°€ λ“±μž₯ν•œ μž₯면을 이 ν¬μŠ€νŒ…μ— λ°•μ œν•΄λ‘κ³ μž ν•œλ‹€. 2λΆ„ 27초 κ²½4λΆ„ 54초 경였λ₯Έμͺ½ λͺ¨λ‹ˆν„° μŠ€ν¬λ¦°μ„ 잘 보면, λ¦¬μ•‘νŠΈ μ»΄ν¬λ„ŒνŠΈκ°€ λ¦¬λ Œλ”λ§λ  λ•Œ highlightλ˜λŠ” κΈ°λŠ₯이 μΌœμ ΈμžˆμŒμ„ 확인할 수 μžˆλ‹€. μ € μ˜μƒμ„ μ΄¬μ˜ν• 

TypeScript

Overloaded function interface의 전체 νŒŒλΌλ―Έν„° νƒ€μž… μΆ”λ‘ 

TypeScriptμ—μ„œλŠ” Parameterλ₯Ό μ‚¬μš©ν•΄μ„œ overloaded function interface의 전체 νŒŒλΌλ―Έν„° νƒ€μž…μ„ μΆ”λ‘ ν•˜λŠ” 것에 ν•œκ³„κ°€ μžˆλ‹€. infer ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•΄μ„œ μ˜€λ²„λ‘œλ”©λœ ν•¨μˆ˜λ“€μ˜ νŒŒλΌλ―Έν„° νƒ€μž…μ„ μΆ”λ‘ ν•˜κ³ , 그것을 λ°”νƒ•μœΌλ‘œ union νƒ€μž…μ„ μ„ μ–Έν•  수 μžˆλ‹€.

μ·¨μ—…

νšŒμ‚¬μ—μ„œ 보낸 첫 μ£Όκ°„ 회고

8μ›” 24일, 첫 μΆœκ·Όμ„ 보낸 λ’€ 벌써 μ—΄ν˜ κ°€κΉŒμ΄ ν˜λ €λ‹€. 더 기얡이 μ§€μ›Œμ§€κΈ° 전에 첫 주간에 λŒ€ν•œ 기둝을 λ‚¨κ²¨λ‘κ³ μž ν•œλ‹€. νšŒμ‚¬ 업무 λ‚΄κ°€ λ‹€λ‹ˆλŠ” Lμ‚¬λŠ” 의료 인곡지λŠ₯ κΈ°μˆ μ„ μ—°κ΅¬ν•˜κ³  또 κ°œλ°œν•˜λŠ” 업체이닀. νšŒμ‚¬μ—μ„œλŠ” μ˜ν•™μ˜ μ—¬λŸ¬ μ„ΈλΆ€ 뢄야에 λŒ€ν•΄ 인곡지λŠ₯ κΈ°μˆ μ„ μ ‘λͺ©ν•˜λ €κ³  ν•˜λŠ”λ°, κ·Έ μ€‘μ—μ„œ λ‚΄κ°€ λ‹΄λ‹Ήν•˜λŠ” μ—…λ¬΄λŠ” "λ³‘λ¦¬ν•™μž(pathologist)

μ·¨μ—…

μ‹ μž… ν”„λ‘ νŠΈμ—”λ“œ 개발자의 λ©΄μ ‘ ν›„κΈ° - 3

이전 κ²Œμ‹œκΈ€μ—μ„œ 닀룬 Pμ‚¬μ˜ λ©΄μ ‘ 후기에 이어 Lμ‚¬μ˜ λ©΄μ ‘ ν›„κΈ°κ°€ λ„ˆλ¬΄λ‚˜λ„ κΈΈμ–΄μ§„ κ΄€κ³„λ‘œ, λ³„λ„μ˜ κ²Œμ‹œκΈ€λ‘œ λΆ„λ¦¬ν•˜μ—¬ μž‘μ„±ν•œλ‹€. L사Lμ‚¬λŠ” 의료 인곡지λŠ₯ κΈ°μˆ μ„ λ°”νƒ•μœΌλ‘œ ν•˜λŠ” μŠ€νƒ€νŠΈμ—…μ΄λ‹€. μ±„μš© ν”„λ‘œμ„ΈμŠ€μ„œλ₯˜ 제좜 β†’ 1μ°¨ μ‹€λ¬΄μž λ©΄μ ‘ β†’ 1μ°¨ 라이브 μ½”λ”© ν…ŒμŠ€νŠΈ β†’ 2μ°¨ 기술 과제 β†’ 3μ°¨ μž„μ› λ©΄μ ‘ β†’ μ΅œμ’… 합격 L사에 κ·Όλ¬΄ν•˜κ³  μžˆλŠ” μ§€μΈμ˜ μΆ”μ²œμœΌλ‘œ μ±„μš© ν”„λ‘œμ„ΈμŠ€κ°€ μ§„ν–‰λ˜μ—ˆλ‹€.

μ·¨μ—…

μ‹ μž… ν”„λ‘ νŠΈμ—”λ“œ 개발자의 λ©΄μ ‘ ν›„κΈ° - 2

이전 κ²Œμ‹œκΈ€μ—μ„œ μ΄μ–΄μ„œ, Pμ‚¬μ˜ λ©΄μ ‘ ν›„κΈ°λ₯Ό κ³΅μœ ν•˜κ³ μž ν•œλ‹€. P사Pμ‚¬λŠ” P2P κΈˆμœ΅μ„ 기반으둜 μ€‘κΈˆλ¦¬ λŒ€μΆœμƒν’ˆ 및 μ‹ μš©ν‰κ°€λͺ¨ν˜•을 κ°œλ°œν•˜λŠ” μŠ€νƒ€νŠΈμ—…μ΄λ‹€. μ±„μš© ν”„λ‘œμ„ΈμŠ€μ„œλ₯˜ 제좜 β†’ 사전 인터뷰 (메일) β†’ 1μ°¨ μž„μ› λ©΄μ ‘ β†’ 1μ°¨ μ‹€λ¬΄μž λ©΄μ ‘ β†’ 2μ°¨ λŒ€ν‘œ λ©΄μ ‘ β†’ μ΅œμ’… 합격 μ„œλ₯˜ 및 사전 인터뷰정해진 μ„œλ₯˜μ˜ 양식은 μ—†μ§€λ§Œ, λ‚˜λŠ” ν•œ νŽ˜μ΄μ§€ κ°€λŸ‰μ˜ 지원 동기 및 포뢀λ₯Ό

μ·¨μ—…

μ‹ μž… ν”„λ‘ νŠΈμ—”λ“œ 개발자의 λ©΄μ ‘ ν›„κΈ° - 1

μ§€λ‚œ κ²Œμ‹œκΈ€("μ·¨μ—… μ€€λΉ„ν•˜κΈ°")μ—μ„œλŠ” μ „λ°˜μ μœΌλ‘œ λ‚΄κ°€ μ–΄λ–»κ²Œ μ·¨μ—… ν”„λ‘œμ„ΈμŠ€λ₯Ό μ€€λΉ„ν•˜μ˜€λŠ”μ§€μ— λŒ€ν•΄ μ„€λͺ…ν–ˆλ‹€λ©΄, 이 κΈ€μ—μ„œλŠ” λ‚΄κ°€ 면접에 μ°Έμ„ν–ˆλ˜ κ°œλ³„ νšŒμ‚¬λ“€μ— λŒ€ν•œ ν›„κΈ°λ₯Ό μž‘μ„±ν•˜κ³ μž ν•œλ‹€. μ§€μ›ν•œ νšŒμ‚¬λŠ” λ„€ νšŒμ‚¬μ˜€μœΌλ©°, λͺ¨λ“  νšŒμ‚¬μ—μ„œ μ„œλ₯˜ 합격 톡보λ₯Ό λ°›μ•˜λ‹€. 이 μ€‘μ—μ„œ μ΅œμ’… 합격 톡보λ₯Ό 받은 νšŒμ‚¬λŠ” 두 κ³³μ΄μ—ˆλ‹€. λ‚΄κ°€ 면접을 μ§„ν–‰ν•œ μˆœμ„œλŒ€λ‘œ 각 νšŒμ‚¬μ— λŒ€ν•œ

μ‹ μž… ν”„λ‘ νŠΈμ—”λ“œ 개발자의 μ·¨μ—… μ€€λΉ„ν•˜κΈ°
μ·¨μ—…

μ‹ μž… ν”„λ‘ νŠΈμ—”λ“œ 개발자의 μ·¨μ—… μ€€λΉ„ν•˜κΈ°

λ‹€μ‚¬λ‹€λ‚œν–ˆλ˜ 석사과정 2년이 μ§€λ‚˜κ³ , μ „λ¬Έμ—°κ΅¬μš”μ›μœΌλ‘œ 근무할 νšŒμ‚¬λ₯Ό μ°Ύμ•„λ³Ό μ‹œκΈ°κ°€ λ˜μ—ˆλ‹€. ν”„λ‘œμ νŠΈ κ²½ν—˜μ΄ λ§Žμ§€ μ•Šμ€ μ‹ μž… ν”„λ‘ νŠΈμ—”λ“œ κ°œλ°œμžλ‘œμ„œ μ·¨μ—… κ³Όμ •μ—μ„œ μš°μ—¬κ³‘μ ˆμ΄ λ§Žμ•˜λ‹€. μ·¨μ—… μ€€λΉ„(일λͺ… "μ·¨μ€€") 기간이 μƒκ°ν–ˆλ˜ 것보닀 κΈΈμ–΄μ§„ 만큼 이미 κΈ°μ–΅ μ†μ—μ„œ μžŠν˜€μ§„ 정보도 λ§Žμ§€λ§Œ, 남은 κΈ°μ–΅μ΄λ‚˜λ§ˆ 기둝할 λͺ©μ μœΌλ‘œ 이 글에 정리해둔닀. 개발자의 μ·¨μ—… μ€€λΉ„λŠ” 크게 5개의 μ€€λΉ„ 과정을