1. Nền tảng JavaScript & TypeScript – Gốc rễ của mọi vấn đề
React Native không phải chỉ là “kéo thả UI” – tất cả đều xoay quanh JavaScript.
Bạn cần hiểu sâu:
- ES6+ (arrow function, destructuring, spread/rest, module)
- Async/await, Promise, event loop
- Closure, scope, hoisting (rất hay bị hỏi interview)
TypeScript:
- Giúp tránh bug runtime
- Tăng khả năng scale codebase
- Là “must-have” ở các dự án lớn
Tip: Dev giỏi không phải là người code nhanh, mà là người hiểu code mình đang viết chạy như thế nào
2. React & React Native – Core skill quyết định level
Bạn cần vượt qua mức “biết dùng” → “hiểu bản chất”
Những thứ bắt buộc:
- Component lifecycle (mount, update, unmount)
- Hooks: useState, useEffect, useMemo, useCallback
- Re-render mechanism (tại sao component render lại?)
State management:
- Redux (phổ biến, phù hợp project lớn)
- Zustand (nhẹ, dễ dùng)
Navigation:
- React Navigation (stack, tab, deep linking)
Sai lầm phổ biến: dùng Hooks nhưng không hiểu dependency → gây bug khó debug
3. Làm việc với API & xử lý dữ liệu
App mobile gần như luôn là “client”
Bạn cần:
- Gọi API (RESTful, GraphQL)
- Handle loading, error, retry
- Authentication: JWT, refresh token
- Data caching (React Query, SWR…)
Tip: Trải nghiệm user phụ thuộc rất nhiều vào cách bạn xử lý data, không chỉ UI
4. Tối ưu performance – Yếu tố phân biệt Junior vs Senior
Một app chạy mượt sẽ giữ user lâu hơn
Những kỹ thuật quan trọng:
- Memoization (React.memo, useMemo)
- Tránh re-render không cần thiết
- FlatList optimization (keyExtractor, getItemLayout…)
- Lazy loading, code splitting
Case thực tế:
- Network yếu → cần loading skeleton + retry
- Danh sách dài → cần virtualization
Performance không phải “fix sau” → phải nghĩ ngay từ khi design
5. Hiểu Native (Android/iOS) – Không thể né
React Native là bridge → bạn cần hiểu 2 bên
Nên biết:
- Lifecycle của app mobile
- Native module (Java/Kotlin, Swift)
- Debug trên Xcode, Android Studio
Khi app crash → rất nhiều case phải debug native
6. CI/CD & Release – Đưa app ra production
Viết app xong chưa phải là hết
Bạn cần:
- Build app (APK, AAB, IPA)
- Deploy lên App Store / Google Play
- CI/CD (Fastlane, GitHub Actions)
- OTA update (CodePush)
Dev “thực chiến” phải biết deploy, không chỉ code
.png)