Thiết bị mobile có tài nguyên hạn chế hơn máy tính (CPU/RAM/pin), và người dùng ít kiên nhẫn hơn với app giật lag — 1 khung hình bị drop (dưới 60fps) đã có thể cảm nhận được rõ ràng. Đây là lý do performance luôn là chủ đề trọng tâm phỏng vấn Mobile.
"App bị giật khi scroll danh sách dài, nguyên nhân có thể là gì?" — Thường do: tạo lại view không cần thiết mỗi lần scroll (thiếu cơ chế tái sử dụng view như RecyclerView ViewHolder pattern ở Android, hoặc ListView.builder ở Flutter thay vì render toàn bộ list cùng lúc), load ảnh không được cache/resize đúng kích thước hiển thị, hoặc tính toán nặng chạy trên main thread.
"Overdraw là gì và tại sao ảnh hưởng performance?" — Khi 1 điểm ảnh bị vẽ đè lên nhiều lần trong 1 frame (do layout lồng nhau nhiều lớp background không cần thiết) — GPU phải làm việc nhiều hơn cần thiết. Android Studio có công cụ debug overdraw trực quan để phát hiện vấn đề này.
"Làm sao xử lý ảnh lớn mà không gây OutOfMemory?" — Resize/downsample ảnh về đúng kích thước cần hiển thị trước khi load vào bộ nhớ (không load ảnh gốc độ phân giải cao rồi mới scale xuống ở UI), dùng thư viện quản lý cache ảnh hiệu quả (Glide/Coil ở Android, tương đương ở iOS/Flutter).
"Memory leak ở mobile thường xuất phát từ đâu?" — Giữ reference tới Context/Activity/ViewController lâu hơn cần thiết (trong singleton, static field, hoặc closure không release đúng cách) — khi object đó lẽ ra phải bị giải phóng nhưng vẫn bị giữ lại trong bộ nhớ do có tham chiếu còn sống.
"App khởi động (cold start) chậm, bạn tối ưu thế nào?" — Trì hoãn khởi tạo các thành phần không cần thiết ngay lúc mở app (lazy initialization), giảm công việc thực hiện trên main thread lúc startup, và cân nhắc dùng splash screen kèm skeleton loading thay vì màn hình trắng trong lúc chờ dữ liệu đầu tiên.
Android Profiler (CPU/Memory/Network profiling), Xcode Instruments (Time Profiler, Allocations để tìm memory leak) — nhắc tới công cụ cụ thể kèm cách dùng thể hiện kinh nghiệm thực chiến hơn nhiều so với chỉ nói lý thuyết chung chung.
Kể 1 case tối ưu thật: triệu chứng ban đầu (frame rate thấp, crash do OOM...), công cụ dùng để chẩn đoán, và kết quả đo được sau khi fix — số liệu cụ thể luôn thuyết phục hơn mô tả chung chung "đã tối ưu performance".