How would you implement a resilient retry mechanism with exponential backoff and jitter for a flaky third-party API?