管理画面系で時間がかかりそうな処理をJobに切り出して、そのJobの中ですべての処理が終わったらログインしているユーザに通知メールを送信しようと以下のようなコードを書きました。

Notification::send(auth()->user(), new NotificationClassName());

ローカル環境ではキューの設定(QUEUE_CONNECTION)がジョブが即時に実行される設定(sync)になっていて、それだと動いたのにデータベース(database)に変更したら動きませんでした。Laravelのログを確認したら

Call to a member function routeNotificationFor() on null

の文字が。キューがバックエンドで実行される事になって auth() が取得できなくなったという、当たり前といえば当たり前な出来事でした。
ログインユーザのインスタンスを別途受け渡して解決しました。確認したLaravelのバージョンは5.7です。