"μλ²½ν μ½λλ μλ€. λ¬Έμ λ₯Ό ν΄κ²°ν μ μμΌλ©΄ κ·Έκ² μ΅κ³ μ μ½λλ€." - μΌ ν°μ¨
- κ·Ήμ΄κΈ° μ€ννΈμ μμ κ³ μ(?)νλ νλ‘ νΈμλ κ°λ°μμ λλ€.
- νμ€ν κ°λ° κ²½νμ κ°μΆ νλ‘ νΈμλ(κ·Έλ¬λκΉ μ‘νꡬ리λ λ»)
- INTJ μ±ν₯μΌλ‘ λΆμκ³Ό μ λ΅μ μ’μνμ§λ§,
- 무μλ³΄λ€ ν¨κ» μΌνλ λλ£λ€κ³Όμ ν°ν€νμΉ΄ + λ―Έμκ° μ μ μλλ ₯μ λλ€.
- React: 16.8λ²μ λΆν° μ¬μ©. κ±°μ λͺ¨λ νλ‘μ νΈμμ νμ©. μ»΄ν¬λνΈ μ΅μ ν, λ λλ§ μ±λ₯ κ°μ , 컀μ€ν ν κ°λ°
- TypeScript: κ³ κΈ νμ (μ λ€λ¦, μ λμ¨, μΈν°μΉμ , 맡 νμ )μ νμ©ν μμ ν μ½λλ² μ΄μ€ ꡬμΆ, νμ μΆλ‘ , μΈν°νμ΄μ€ μ€κ³
- Electron: IPC ν΅μ , λ©ν° μλμ° κ΄λ¦¬, ν¬λ‘μ€ νλ«νΌ λ°°ν¬, λ‘컬 νΌμ€νΈ μνκ΄λ¦¬
- Next.js: νμΌ λΌμ°ν μμ€ν + SSRμ μ©
- Zustand: 볡μ‘ν μν κ΄λ¦¬ μ€κ³, λ―Έλ€μ¨μ΄λ₯Ό ν΅ν μꡬ μ μ₯μ, λλ©μΈλ³ μ¬λΌμ΄μ€λ‘ ꡬμ±λ μ€ν μ΄ μ€κ³
- Tailwind: 컀μ€ν ν λ§ κ΅¬ν, λ°μν λμμΈ, λ€ν¬λͺ¨λ μ§μ
- Shadcn/ui: 3λ μ°¨, figmaμ μ°λνμ¬ λμμΈ ν ν°ν - λμμΈμμ€ν λ³ν μ μ©
- Million.js: μ΄λ²€νΈ λ²λΈλ§ λ¬Έμ ν΄κ²°, λ λλ§ κ°μ
- React-Query: μΊμ±, λ°±κ·ΈλΌμ΄λ κ°±μ , λκ΄μ μ λ°μ΄νΈ, 무ν μ€ν¬λ‘€ ꡬν
- Vitest: λ¨μ λ° ν΅ν©ν μ€νΈ, ν μ€νΈ μΌμ΄μ€ λ€μνλ‘ ν΅μ¬ λΉμ¦λμ€ λ‘μ§ λ³΄νΈ
- Playwright: Electronμ λ§λ λ 립μ ν μ€νΈ νκ²½ ꡬμ±, μκ°μ νκ· ν μ€νΈ
- ESLint: 20+ νλ¬κ·ΈμΈ λ° μ»€μ€ν κ·μΉμΌλ‘ νλ‘μ νΈ νμ€ μ μ©
- OpenAI API ν΅ν©: AI κΈ°λ° μ½ν μΈ μμ± λ° ν μ€νΈ λΆμ, λ¬Έμ μμ½ κΈ°λ₯ ꡬν
- Xenova/transformers: ν΄λΌμ΄μΈνΈ μ¬μ΄λ ML λͺ¨λΈ ꡬν, λ‘컬 λͺ¨λΈ μΆλ‘
- Docker: 4λ μ°¨, CI/CD νμ΄νλΌμΈ ꡬμΆμ νμ©
- Kubernetes: EKS μ¬μ©κ²½ν λ° λ² μ΄λ©νμμ K8S μ¬λ €λ³Έ κ²½ν. Helm 맀λμ νμ©
- AWS: 5λ μ°¨, EC2, S3, Route53, Lambda λ± κ²½ν
- Firebase: 3λ μ°¨, Firestore, Authentication λ± μ€μκ° λ°μ΄ν° μ²λ¦¬μ νμ©
- Supabase: μ€μκ° κ΅¬λ μ ν΅ν νμ κΈ°λ₯ ꡬν
- ν©μ±(Composition) ν¨ν΄: λ¨μΌ μ± μ μμΉμ λ°λ₯΄λ μμ μ»΄ν¬λνΈλ€μ μ‘°ν©ν΄ 볡μ‘ν UI ꡬμ±
- Headless UI ν¨ν΄: Radix UI κΈ°λ° λ‘μ§κ³Ό UIλ₯Ό λΆλ¦¬νμ¬ μ κ·Όμ±κ³Ό μ€νμΌλ§ μμ λ ν보
- 컀μ€ν
ν
ν¨ν΄: λ‘μ§ μ¬μ¬μ©μ μν 35+ 컀μ€ν
ν
κ°λ° (μ:
useKeyboardManager
,useElectronIPC
) - μλ¬ λ°μ΄λ리 ν¨ν΄: React Error Boundaryλ₯Ό νμ©ν μ€λ₯ 격리 λ° μ€ν¨ μ²λ¦¬
- μ¬λΌμ΄μ€ ν¨ν΄: Zustand μ€ν μ΄λ₯Ό λλ©μΈλ³ μ¬λΌμ΄μ€λ‘ λΆλ¦¬νμ¬ λͺ¨λν (10+ μ¬λΌμ΄μ€)
- μ λ ν° ν¨ν΄: λ©λͺ¨μ΄μ μ΄μ κΈ°λ° μ λ ν°λ‘ λΆνμν λ λλ§ μ΅μν
- μ΄λ²€νΈ κΈ°λ° μν€ν μ²: Observer ν¨ν΄μ νμ©ν λμ¨νκ² κ²°ν©λ μ»΄ν¬λνΈ κ° ν΅μ
- λΉλκΈ° μ‘μ ν¨ν΄: λΉλκΈ° μμ μ νμ€νλ λ°©μμΌλ‘ μ²λ¦¬νλ ν¨ν΄ ꡬν
- κΈ°λ₯ κΈ°λ° λͺ¨λν: κΈ°λ₯λ³ ν΄λ κ΅¬μ‘°λ‘ μμ§λ λμ μ½λ μ‘°μ§ν, ν΄λ λμ€ μ΅μ ν, λ¨λ°©ν₯ μμ‘΄μ±
app/ βββ space/ # μ€νμ΄μ€ κ΄λ ¨ λͺ¨λ κΈ°λ₯ β βββ components/ # μ»΄ν¬λνΈ β βββ hooks/ # 컀μ€ν ν β βββ create-slice.ts # μν κ΄λ¦¬ β βββ utils.ts # μ νΈλ¦¬ν° ν¨μ βββ tab-group/ # ν κ·Έλ£Ή κ΄λ ¨ κΈ°λ₯ βββ ...
- κ³μΈ΅ν μν€ν μ²: UI, λΉμ¦λμ€ λ‘μ§, λ°μ΄ν° μ κ·Ό κ³μΈ΅μ λͺ νν λΆλ¦¬
- μλΉμ€ μΆμν: μΈλΆ APIμμ ν΅μ μ μλΉμ€ κ³μΈ΅μΌλ‘ μΆμννμ¬ κ΅μ²΄ μ©μ΄μ± ν보
- μ΄λν° ν¨ν΄: μΌλ νΈλ‘ APIλ₯Ό μΆμννμ¬ ν μ€νΈ μ©μ΄μ±κ³Ό μΉ νκ²½ νΈνμ± ν₯μ
- λ©λͺ¨μ΄μ μ΄μ μ λ΅: React.memo, useMemo, useCallbackμ νμ©ν 체κ³μ μΈ λ©λͺ¨μ΄μ μ΄μ
- μ½λ λΆν : κΈ°λ₯λ³ μ§μ° λ‘λ©μΌλ‘ μ΄κΈ° λ‘λ μκ° μ΅μν
- 리μμ€ μΊμ±: API μλ΅, μ΄λ―Έμ§, κ³μ° κ²°κ³Όμ ν¨μ¨μ μΈ μΊμ± μ λ΅ κ΅¬ν
- κ°μ DOM μ΅μ ν: Million.jsμ ν¨κ» 컀μ€ν μ΅μ ν κΈ°λ² μ μ©
- ν μ€νΈ νΌλΌλ―Έλ: λ¨μ(50+), ν΅ν©(30+), E2E(15+) ν μ€νΈμ κ· ν μλ ꡬμ±
- ν μ€νΈ μ£Όλ κ°λ°: νμμ λ°λΌ ν΅μ¬ κΈ°λ₯μ TDD μ μ©μΌλ‘ μμ μ± ν보
- μ μ μ½λ λΆμ: ESLint, TypeScript, Sonar λ±μ νμ©ν μ½λ νμ§ λ³΄μ₯
- μ μμΌ κ°λ° νλ‘μΈμ€
- 1μ£Ό λ¨μ μ€νλ¦°νΈλ‘ μ§νλλ μ¦λΆμ κ°λ°(λͺ©μμΌ μ°¨μ£Ό μ€νλ¦°νΈ νμ , κΈμμΌ κΈμ£Ό μ½λ λ°°ν¬)
- μΌμΌ μ€ν λμ λ° μ£Όκ° νκ³ λ‘ μ§μμ μΈ νλ‘μΈμ€ κ°μ
- νΈλ ν¬ κΈ°λ° κ°λ°
- κΈ°λ₯ νλκ·Έλ₯Ό νμ©ν μ§μμ ν΅ν©
- 짧μ μλͺ μ λΈλμΉλ‘ μμ μ μΈ μ½λλ² μ΄μ€ μ μ§
- PR ν νλ¦Ώ λ° μλνλ μ½λ 리뷰 νλ‘μΈμ€
- CI/CD νμ΄νλΌμΈ
- GitHub Actions κΈ°λ° μλνλ λΉλ λ° ν μ€νΈ
- νκ²½λ³(κ°λ°, νλ‘λμ ) μλ λ°°ν¬
- μ½λ νμ§ κ΄λ¦¬
- μ§ νλ‘κ·Έλλ°μΌλ‘ μ½λ νμ§ λ° μ§μ 곡μ ν₯μ
- μ κΈ°μ μΈ μ½λ 리ν©ν λ§ μΈμ
- λ¦°ν° λ° ν¬λ§·ν°λ₯Ό νμ©ν μΌκ΄λ μ½λ μ€νμΌ μ μ©
- λ¬Έμν
- λ Έμ , Clickupμ ν΅ν κ°λ°μ λ¬Έμν
- API λ¬Έμ μλν λκ΅¬λ‘ μ΅μ λ¬Έμ μ μ§
- μ±λ₯ λ° μ¬μ©μ κ²½ν μ΅μ ν
- Core Web Vitals λͺ¨λν°λ§ μμ€ν ꡬμΆ
- νΌν¬λ¨Όμ€ λ²μ§ μ€μ λ° μ κΈ°μ μΈ μ±λ₯ μ κ²
- μ¬μ©μ μΈν°λ·° λΆμμ ν΅ν UX κ°μ
- λΈλΌμ°μ κΈ°λ° μμ°μ± λꡬ - λλ¦° UIλ₯Ό 70% λΉ λ₯΄κ² λ§λ€μμ΅λλ€ (κΈ°μ μ΄μ£ ?)
- λλ¬Όλ³μ μμ½ νλ«νΌ - AWS λΉμ©μ 80% μ€μ¬μ λνλμ λ―Έμλ₯Ό μ΄λμ΄λμ΅λλ€
- RTB μμ€ν - μ΄λΉ 10,000κ° μμ² μ²λ¦¬... μ¬μ€μ μ λ μ΄κ² μ΄λ»κ² λ κ±΄μ§ λͺ¨λ¦ λλ€ π
- AR μ± - μ΄κ±Έ λ§λ€λ©΄μ μ λ§ λ§μ΄ λ°°μ μ΅λλ€ (=λ§μ΄ κ³ μνμ΅λλ€)
"μλ²½ν μ½λλ μμ΅λλ€. κ·Έμ λ§κ° μκ°μ λ§μΆμ΄ λμνλ μ½λκ° μμ λΏ..."