プッシュ通知の仕組みと、作るときに気をつけることを説明できますか

端末の宛先 (デバイストークン) を OS の配達の窓口に渡して送る仕組みと、宛先の入れ替わり、送りすぎ、送り損ねへの手当てを答える問い。

答えてみる

面接官に「プッシュ通知の仕組みと、作るときに気をつけることを説明できますか」と聞かれたつもりで、答えを見る前に自分の言葉で答えます。

声に出して答えた人は「書かずに答えを見る」で開けます。

解説を読む

聞かれ方から関連するコースまで、この問いの解説を全部ここに置いています。

こう聞かれます

  • 「プッシュ通知の仕組みと、作るときに気をつけることを説明できますか」
  • 「サーバーから利用者のスマホに、どうやって通知が届くのですか」
  • 「通知をオフにされないために、何をしますか」

面接官が見ている点

  • サーバーが端末に直接送るのではなく、OS の配達の窓口を通す、と分かっているか
  • 宛先が変わる、消える、を前提に管理しているか
  • 送る側の都合だけでなく、受け取る人の気持ちまで考えているか

短い答え

  • アプリが OS の配達の窓口 (Android なら FCM、iPhone なら APNs) から端末の宛先 (デバイストークン) をもらってサーバーに登録し、サーバーはその宛先を付けて窓口に送ります。
  • 宛先はアプリの入れ直しなどで変わるので、新しい宛先で上書きし、窓口から「もう届かない」と返った宛先は消します。
  • 送りすぎると通知ごと切られるので、利用者が種類ごとに選べるようにし、送る時間や回数も絞ります。

少し詳しい答え

届くまでの流れ

  1. アプリが起動したとき、OS に通知の許可を求め、許されたら OS の配達の窓口から宛先 (デバイストークン) をもらいます
  2. アプリはその宛先を、ログインしている利用者と結び付けてサーバーに送り、サーバーは DB に保存します
  3. 通知を出したいとき、サーバーは宛先と本文を付けて窓口に送ります
  4. 窓口が端末に届けます。端末の電源が切れていれば、窓口が預かってあとで届けることもあります

サーバーが端末に直接つなぐのではなく、OS ごとの窓口が間に立ちます。AWS の SNS のように、複数の窓口へまとめて送れるサービスもあります。

宛先の管理

宛先は、アプリを入れ直した、端末を替えた、などで変わります。アプリが起動するたびに宛先を確かめ、変わっていたらサーバー側を上書きします。1 人が何台も持つこともあるので、利用者と宛先は 1 対多で持ちます。

窓口に送ったとき「この宛先はもう無効」と返ってきたら、その宛先を消します。消さずに送り続けると、無駄な送信が積み上がり、届いた数の集計もずれていきます。ログアウトしたら、その端末の宛先と利用者の結び付きを外します。

送りすぎと送り損ね (トレードオフ)

通知は、送るほど見てもらえる物ではありません。関係の無い通知が続くと、OS の設定から通知ごと切られ、大事な連絡も届かなくなります。だから、お知らせ、返信、締め切りのように種類を分け、利用者が種類ごとに選べるようにします。許可を求めるのも、起動してすぐではなく、通知が役に立つ場面の直前にします。

送り損ねにも備えます。たくさんの人に送るときは、キューに積んで少しずつ送り、窓口の混み具合で失敗した分はやり直します。やり直しで同じ通知が 2 回届かないよう、通知に番号を付けて、送った記録を残します。逆に、大事な連絡を通知だけに頼ると、切られていた人には届きません。大事な物はメールやアプリの中のお知らせにも残します。

話すときは、自分が関わったアプリか、作るならどうするかの例を 1 つ用意し、どんな種類の通知を、誰に、いつ送るかで話します。

よくある間違い

  • 宛先を一度登録したら変わらないと思う入れ直しや端末の買い替えで変わります。起動のたびに確かめて上書きします
  • 無効になった宛先を消さない届かない宛先への送信が積み上がり、どれが届いているのか分からなくなります
  • 全部の通知を 1 つのスイッチにまとめる 要らない種類を止めたいだけの人が、全部を切ります。種類ごとに選べるようにします

深掘りの問い

  • 「通知の本文に、何を入れてはいけませんか」ロック画面に出るので、暗証の番号や個人の詳しい情報は入れず、アプリを開いてから見せる、と答えます
  • 「何十万人に一斉に送るとき、何に気をつけますか」キューで分けて送る、窓口の回数の制限を守る、通知から開いた人が一度にサーバーに来ても耐えられるようにする、と答えます
  • 「Web のブラウザにも通知を送れますか」 Web Push という仕組みがあり、ブラウザごとの許可と宛先の管理は同じように要る、と答えます

確認日 2026年10月24日

技術面接問題の一覧へ戻る