Build a function that fetches user data from JSONPlaceholder API, then fetches that user's posts. Handle: network errors, non-200 responses, empty results, and timeout (abort after 5s). Use try/catch with async/await. Add retry logic (max 3 attempts).