Start here. This is the direct spoken answer to practice first.
Why this question matters
A successful deployment command only proves that an artifact was placed somewhere. Smoke checks establish that the deployed version can start, reach required dependencies, authenticate safely, and serve the smallest critical user journey.
I run a small deterministic set of checks against the deployed environment: confirm the expected version, verify liveness and readiness separately, authenticate with a dedicated test identity, call one representative read, and exercise the safest critical business path. The checks are fast, time-bounded, and return clear evidence. They use isolated synthetic data or a non-destructive operation, so repeating them during retries or across instances does not charge users, send real notifications, or corrupt production state.