演習
記事とケースの演習を、まとめて一覧します。正解を選ぶクイズではありません。制約のついた要件を読んで、自分ならどう決めるかと、その根拠を書きます。模範解答は 「唯一の正解」ではなく、判断の軸として置いています。
- ぜんぶ
- 478問
- 無料
- 236問
- 有料
- 242問
仕組みの解説はすべて無料です。各種類の最初の演習も無料で試せます。有料の演習は、設問だけ伏せて一覧に並べています(月額 980 円(税込))。手応えが薄かったものを忘れた頃に出し直す復習は、この一覧とは別の画面です。
478 / 478 問
- 確認DNS
A レコードを新しい IP に変えた直後、dig example.com @8.8.8.8 で新しい IP が返りました。切り替えは完了したと言えますか?
- 確認DNS
TTL 300 で運用しているレコードを変更しました。全利用者に行き渡るまでの最大時間は?
- 設計DNS
この条件で、切り替え計画の TTL をどう設計しますか?
- 説明DNS
「DNS の変更が反映されない」と相談してきた同僚に、何が起きているかを説明してください
- 設計有料DNS
DNS の設計の演習
- 設計有料DNS
DNS の設計の演習
- 説明有料DNS
DNS の説明の演習
- 確認TCP/IP
サーバー上では curl localhost:3000 が 200 を返すのに、外からは接続できません。届いていないのはどこですか?
- 確認TCP/IP
TCP が UDP に対して提供しているものは何ですか?
- 設計TCP/IP
この症状から、どの層に原因があると切り分けますか?
- 説明TCP/IP
「API が落ちています」とだけ報告してきた後輩に、次に何を確認すべきかを説明してください
- 設計有料TCP/IP
TCP/IP の設計の演習
- 設計有料TCP/IP
TCP/IP の設計の演習
- 説明有料TCP/IP
TCP/IP の説明の演習
- 確認HTTP/1.1 → 2 → 3
HTTP/2 で解消された HOL ブロッキングは、どの層のものですか?
- 確認HTTP/1.1 → 2 → 3
HTTP/1.1 向けにドメインを4つに分けていた構成を、HTTP/2 でそのままにするとどうなりますか?
- 設計HTTP/1.1 → 2 → 3
この構成で HTTP/2 に移行するとき、何から手を付けますか?
- 説明HTTP/1.1 → 2 → 3
「HTTP/2 にしたのに速くならない」と言う同僚に、何を確認すべきかを説明してください
- 設計有料HTTP/1.1 → 2 → 3
HTTP/1.1 → 2 → 3 の設計の演習
- 設計有料HTTP/1.1 → 2 → 3
HTTP/1.1 → 2 → 3 の設計の演習
- 説明有料HTTP/1.1 → 2 → 3
HTTP/1.1 → 2 → 3 の説明の演習
- 確認TLS
HTTPS の鍵マークが保証していないものはどれですか?
- 確認TLS
証明書の有効期限切れが、他の障害と違う点はどこですか?
- 設計TLS
この指摘のうち、TLS で解決するものはどれですか?
- 説明TLS
「HTTPS にしたからセキュリティ対策は済んだ」と言う同僚に、足りていない部分を説明してください
- 設計有料TLS
TLS の設計の演習
- 設計有料TLS
TLS の設計の演習
- 説明有料TLS
TLS の説明の演習
- 確認CDN
CDN は既定で何をキャッシュキーにしますか?
- 確認CDN
デプロイのたびにパージを実行する運用と、ファイル名にハッシュを入れる運用。壊れ方が違うのはどこですか?
- 設計CDN
このサイトで、どのパスをどうキャッシュしますか?
- 説明CDN
「CDN を入れたい」と言う同僚に、速くなる以外に何が起きるかを説明してください
- 設計有料CDN
CDN の設計の演習
- 設計有料CDN
CDN の設計の演習
- 説明有料CDN
CDN の説明の演習
- 確認キャッシュ戦略
max-age が切れたあと、ETag を付けておくと何が変わりますか?
- 確認キャッシュ戦略
stale-while-revalidate は、利用者に何を見せている間に何をしていますか?
- 設計キャッシュ戦略
このリソースそれぞれに、どのキャッシュ設定を与えますか?
- 説明キャッシュ戦略
「キャッシュを長くすれば速くなる」と言う同僚に、それだけでは決められない理由を説明してください
- 設計有料キャッシュ戦略
キャッシュ戦略 の設計の演習
- 設計有料キャッシュ戦略
キャッシュ戦略 の設計の演習
- 説明有料キャッシュ戦略
キャッシュ戦略 の説明の演習
- 確認ロードバランサ
ロードバランサの後ろにあるアプリで、IP アドレスごとのレート制限をかけています。ロードバランサを入れた直後から、全利用者がまとめて制限に引っかかるようになりました。なぜですか?
- 確認ロードバランサ
アプリは X-Forwarded-For の先頭の値を、利用者の IP として使っています。どんな問題が起きますか?
- 設計ロードバランサ
利用者の IP を、正しく取れるようにするには?
- 説明ロードバランサ
「朝からログインできない」という問い合わせを受けたサポート担当に、何が起きたかを説明してください
- 設計有料ロードバランサ
ロードバランサ の設計の演習
- 設計有料ロードバランサ
ロードバランサ の設計の演習
- 説明有料ロードバランサ
ロードバランサ の説明の演習
- 確認ポーリングと SSE と WebSocket
社内の管理画面に「処理の進捗バー」を出したい。進捗はサーバー側が5〜10秒ごとに更新する。同時に見る人は最大20人。どれを選びますか?
- 確認ポーリングと SSE と WebSocket
500人が3秒ごとにポーリングしています。1リクエストで DB に1回、50ms のクエリを投げるとき、DB の接続は常時およそ何本埋まりますか?
- 設計有料ポーリングと SSE と WebSocket
ポーリングと SSE と WebSocket の設計の演習
- 設計有料ポーリングと SSE と WebSocket
ポーリングと SSE と WebSocket の設計の演習
- 設計有料ポーリングと SSE と WebSocket
ポーリングと SSE と WebSocket の設計の演習
- 設計有料ポーリングと SSE と WebSocket
ポーリングと SSE と WebSocket の設計の演習
- 確認レンダリングパイプライン
要素を動かすとき、top の書き換えと transform: translateY() で何が違いますか?
- 確認レンダリングパイプライン
ループの中で offsetHeight を読んでから style を書く、を繰り返すと何が起きますか?
- 設計レンダリングパイプライン
この実装のうち、どこを直せばスクロールが滑らかになりますか?
- 説明レンダリングパイプライン
「スマホだけスクロールがカクつく」と相談された相手に、見るべき順番を説明してください
- 設計有料レンダリングパイプライン
レンダリングパイプライン の設計の演習
- 設計有料レンダリングパイプライン
レンダリングパイプライン の設計の演習
- 説明有料レンダリングパイプライン
レンダリングパイプライン の説明の演習
- 確認イベントループ
10万件の配列を回す同期処理に async を付けると、画面の固まりは解消しますか?
- 確認イベントループ
setTimeout(fn, 0) と Promise.resolve().then(fn)。先に実行されるのはどちらですか?
- 設計イベントループ
この処理を、体感を損なわずに実装するにはどうしますか?
- 説明イベントループ
「スピナーを出したのに回らない」と言う同僚に、何が起きているかを説明してください
- 設計有料イベントループ
イベントループ の設計の演習
- 設計有料イベントループ
イベントループ の設計の演習
- 説明有料イベントループ
イベントループ の説明の演習
- 確認同一オリジンポリシー
iframe の contentDocument が null になります。サーバー側のヘッダ設定で解除できますか?
- 確認同一オリジンポリシー
同一オリジンポリシー下でも許されているものはどれですか?
- 設計同一オリジンポリシー
この構成のうち、ブラウザに止められるのはどれですか?
- 説明同一オリジンポリシー
「iframe の中を直接操作したい」という要望に、なぜできないかと代わりの方法を説明してください
- 設計有料同一オリジンポリシー
同一オリジンポリシー の設計の演習
- 設計有料同一オリジンポリシー
同一オリジンポリシー の設計の演習
- 説明有料同一オリジンポリシー
同一オリジンポリシー の説明の演習
- 確認CORS
CORS エラーが出たとき、設定を直すのは主にどちら側ですか?
- 確認CORS
Access-Control-Allow-Origin: * と Cookie 送信を同時に使えないのはなぜですか?
- 設計CORS
この要件を満たす CORS 設定をどう書きますか?
- 説明CORS
CORS エラーで丸一日止まっている後輩に、どこを見るべきかを説明してください
- 設計有料CORS
CORS の設計の演習
- 設計有料CORS
CORS の設計の演習
- 説明有料CORS
CORS の説明の演習
- 確認ブラウザのストレージ
ログイン中だけ有効で、タブを閉じたら消えてほしい値があります。JS から読み書きし、サーバーには送りたくありません。どこに置きますか?
- 確認ブラウザのストレージ
HttpOnly Cookie でセッションを管理しているサイトに XSS があります。攻撃者にできないことはどれですか?
- 設計ブラウザのストレージ
この条件で、認証情報をどこに置きますか?
- 説明ブラウザのストレージ
「トークンは localStorage でいいですよね」と聞いてきた同僚に、何を確認すべきか説明してください
- 設計有料ブラウザのストレージ
ブラウザのストレージ の設計の演習
- 設計有料ブラウザのストレージ
ブラウザのストレージ の設計の演習
- 説明有料ブラウザのストレージ
ブラウザのストレージ の説明の演習
- 確認Core Web Vitals
LCP が 4.2 秒でした。最初にやるべきことはどれですか?
- 確認Core Web Vitals
INP が悪いとき、いちばん疑うべきものはどれですか?
- 設計Core Web Vitals
この数字から、どこを調べますか?
- 説明Core Web Vitals
「LCP を 2.5 秒以内にしてほしい」と言われたとき、何を確認しますか
- 設計有料Core Web Vitals
Core Web Vitals の設計の演習
- 設計有料Core Web Vitals
Core Web Vitals の設計の演習
- 説明有料Core Web Vitals
Core Web Vitals の説明の演習
- 確認Service Worker
新しい sw.js をデプロイしました。開いたままのタブを再読み込みしても、古い版の Service Worker が応答し続けます。なぜですか?
- 確認Service Worker
問題のある Service Worker を消そうと、sw.js をサーバーから削除しました。利用者の手元では何が起きますか?
- 設計Service Worker
この在庫確認アプリで、Service Worker のキャッシュ戦略をどう組みますか?
- 説明Service Worker
「キャッシュをクリアしてください」と案内した問い合わせ対応の担当者に、なぜそれで直る人と直らない人がいたのかを説明してください
- 設計有料Service Worker
Service Worker の設計の演習
- 設計有料Service Worker
Service Worker の設計の演習
- 説明有料Service Worker
Service Worker の説明の演習
- 確認画像と動画の配信
幅 390px・DPR 3 のスマートフォンで、2列の商品グリッドを表示します。1枚は約190px 幅です。srcset に 400w / 800w / 1200w / 2400w を用意しましたが、sizes を書き忘れました。ブラウザが選びやすいのはどれですか?
- 確認画像と動画の配信
ページ最上部の大きな商品画像(LCP の要素)に loading='lazy' を付けたところ、LCP が悪化しました。なぜですか?
- 設計画像と動画の配信
この商品詳細ページで、画像の配信をどう組みますか?
- 説明画像と動画の配信
「画像は全部圧縮したのに、古いスマートフォンで商品ページがカクつく」と言うデザイナーに、何が起きているかを説明してください
- 設計有料画像と動画の配信
画像と動画の配信 の設計の演習
- 設計有料画像と動画の配信
画像と動画の配信 の設計の演習
- 説明有料画像と動画の配信
画像と動画の配信 の説明の演習
- 確認アクセシビリティ
`<div onclick>` を `<button>` に変えると、自動的に得られるものはどれですか?
- 確認アクセシビリティ
商品一覧で、商品名のテキストのすぐ横に商品画像があります。この画像の `alt` はどうすべきですか?
- 設計有料アクセシビリティ
アクセシビリティ の設計の演習
- 設計有料アクセシビリティ
アクセシビリティ の設計の演習
- 設計有料アクセシビリティ
アクセシビリティ の設計の演習
- 設計有料アクセシビリティ
アクセシビリティ の設計の演習
- 確認Cookie とセッション
セッション Cookie に HttpOnly を付けると、何が防げますか?
- 確認Cookie とセッション
サーバーが覚える方式(セッション)と、利用者に持たせる方式(トークン)。ログアウトを即座に効かせやすいのはどちらですか?
- 設計Cookie とセッション
この要件で、認証の保持方式と Cookie の属性をどう設計しますか?
- 説明Cookie とセッション
「セッション Cookie の属性が付いていない」という診断結果を、開発チームに説明してください
- 設計有料Cookie とセッション
Cookie とセッション の設計の演習
- 設計有料Cookie とセッション
Cookie とセッション の設計の演習
- 説明有料Cookie とセッション
Cookie とセッション の説明の演習
- 確認JWT
JWT のペイロードに入れてよくない情報はどれですか?
- 確認JWT
アカウントを停止しても、発行済み JWT で API が通り続けるのはなぜですか?
- 設計JWT
この要件を満たす認証設計をどう組みますか?
- 説明JWT
「JWT はステートレスだから採用したい」と言う同僚に、決める前に確認すべきことを説明してください
- 設計有料JWT
JWT の設計の演習
- 設計有料JWT
JWT の設計の演習
- 説明有料JWT
JWT の説明の演習
- 確認OAuth 2.0 と OIDC
OAuth 2.0 が本来扱っているのはどちらですか?
- 確認OAuth 2.0 と OIDC
他サービス向けに発行されたアクセストークンでログインされてしまう問題。何を確認していれば防げましたか?
- 設計OAuth 2.0 と OIDC
この実装のどこに穴があり、どう直しますか?
- 説明OAuth 2.0 と OIDC
「アクセストークンでプロフィールを取ればログインできる」という実装に、どこが危ういかを説明してください
- 設計有料OAuth 2.0 と OIDC
OAuth 2.0 と OIDC の設計の演習
- 設計有料OAuth 2.0 と OIDC
OAuth 2.0 と OIDC の設計の演習
- 説明有料OAuth 2.0 と OIDC
OAuth 2.0 と OIDC の説明の演習
- 確認XSS・CSRF・SQLi
XSS・CSRF・SQLi に共通する構造はどれですか?
- 確認XSS・CSRF・SQLi
HttpOnly を付けていれば XSS の被害は防げますか?
- 設計XSS・CSRF・SQLi
この4つの指摘に、どの順で対応しますか?
- 説明XSS・CSRF・SQLi
「入力値のバリデーションを強化すれば脆弱性は防げる」と言う同僚に、それでは足りない理由を説明してください
- 設計有料XSS・CSRF・SQLi
XSS・CSRF・SQLi の設計の演習
- 設計有料XSS・CSRF・SQLi
XSS・CSRF・SQLi の設計の演習
- 説明有料XSS・CSRF・SQLi
XSS・CSRF・SQLi の説明の演習
- 確認認可
API に「ログインしていなければ 401 を返す」ミドルウェアを入れました。これで防げるのはどれですか?
- 確認認可
注文番号を連番から UUID に変えました。認可の確認は入れていません。この変更で何が変わりますか?
- 設計認可
注文 API の認可を、どこにどう入れますか?
- 説明認可
「ログインしないと使えないので、セキュリティは大丈夫です」と言う開発者に、何が足りないかを説明してください
- 設計有料認可
認可 の設計の演習
- 設計有料認可
認可 の設計の演習
- 説明有料認可
認可 の説明の演習
- 確認パスワードの保存
パスワードに利用者ごとのランダムなソルトを足してから SHA-256 でハッシュ化し、ソルトは同じ行に保存しています。テーブルが流出したとき、特定の1人のパスワードを総当たりで見つける時間は、ソルトが無い場合と比べてどうなりますか?
- 確認パスワードの保存
パスワードを AES で暗号化して DB に保存しています。鍵はアプリの設定ファイルにあります。DB と一緒に、アプリのサーバーの設定ファイルも流出しました。どうなりますか?
- 設計パスワードの保存
新しく作るサービスで、パスワードをどう保存しますか?
- 説明パスワードの保存
流出の発表文の案に「パスワードはハッシュ化しているため安全です」と書かれています。広報とマネジメントに、この表現の何が問題かと、何を書くべきかを伝えてください
- 設計有料パスワードの保存
パスワードの保存 の設計の演習
- 設計有料パスワードの保存
パスワードの保存 の設計の演習
- 説明有料パスワードの保存
パスワードの保存 の説明の演習
- 確認依存パッケージ
package.json に「date-lib: ^1.4.0」と書き、package-lock.json には 1.4.2 が記録されています。CI で npm install を実行したとき、乗っ取られた 1.4.3 が公開されていたら何が入りますか?
- 確認依存パッケージ
依存パッケージの postinstall スクリプトは、CI の環境で何ができますか?
- 設計依存パッケージ
CI での依存の取り込み方を、どう設計しますか?
- 説明依存パッケージ
「依存を1つ足すだけです」と言う同僚に、何を一緒に考えたいかを伝えてください
- 設計有料依存パッケージ
依存パッケージ の設計の演習
- 設計有料依存パッケージ
依存パッケージ の設計の演習
- 説明有料依存パッケージ
依存パッケージ の説明の演習
- 確認監査ログ
管理画面で「顧客一覧を CSV 出力」した操作を監査ログに残します。最も重要な項目はどれですか?
- 確認監査ログ
権限が無くて弾かれた操作(403)を監査ログに残すべきですか?
- 設計有料監査ログ
監査ログ の設計の演習
- 設計有料監査ログ
監査ログ の設計の演習
- 設計有料監査ログ
監査ログ の設計の演習
- 設計有料監査ログ
監査ログ の設計の演習
- 確認セキュリティヘッダ
冒頭の事故で、被害を防げた可能性が最も高い設定はどれですか?
- 確認セキュリティヘッダ
HSTS を `max-age=31536000; includeSubDomains` で設定しました。注意すべきことは何ですか?
- 設計有料セキュリティヘッダ
セキュリティヘッダ の設計の演習
- 設計有料セキュリティヘッダ
セキュリティヘッダ の設計の演習
- 設計有料セキュリティヘッダ
セキュリティヘッダ の設計の演習
- 設計有料セキュリティヘッダ
セキュリティヘッダ の設計の演習
- 確認正規化
正規化が主に守っているのはどれですか?
- 確認正規化
注文テーブルに購入時の商品名を持たせるのは、非正規化の失敗ですか?
- 設計正規化
この設計をどう直しますか?
- 説明正規化
「結合が多くて遅いので、テーブルに列を写したい」という提案に、何を確認すべきかを説明してください
- 設計有料正規化
正規化 の設計の演習
- 設計有料正規化
正規化 の設計の演習
- 説明有料正規化
正規化 の説明の演習
- 確認インデックス
(status, created_at) の複合インデックスがあります。WHERE created_at > ? だけの検索で使えますか?
- 確認インデックス
インデックスを6本張ると、1行の INSERT で何が起きますか?
- 設計インデックス
この要件で、インデックスをどう設計しますか?
- 説明インデックス
「遅いから WHERE に出る列に全部インデックスを張った」という後輩に、何を考え直すべきかを説明してください
- 設計有料インデックス
インデックス の設計の演習
- 設計有料インデックス
インデックス の設計の演習
- 説明有料インデックス
インデックス の説明の演習
- 確認トランザクションと分離レベル
「在庫を SELECT して、1以上なら UPDATE で減らす」。同時に2つ動くと何が起きますか?
- 確認トランザクションと分離レベル
分離レベルを常に一番厳しくしておけば安全ですか?
- 設計トランザクションと分離レベル
この処理を、同時実行でも正しく動くようにするにはどうしますか?
- 説明トランザクションと分離レベル
「在庫がマイナスになった」という不具合を、原因からチームに説明してください
- 設計有料トランザクションと分離レベル
トランザクションと分離レベル の設計の演習
- 設計有料トランザクションと分離レベル
トランザクションと分離レベル の設計の演習
- 説明有料トランザクションと分離レベル
トランザクションと分離レベル の説明の演習
- 確認N+1 問題
N+1 がスロークエリログに出てこないのはなぜですか?
- 確認N+1 問題
同じ 201 回のクエリでも、DB が同一マシンにある場合と別リージョンにある場合で何が変わりますか?
- 設計N+1 問題
この一覧画面のクエリ回数を、どこまで減らせますか?
- 説明N+1 問題
「一覧が遅いがスロークエリは無い」と困っている同僚に、何を見ればよいかを説明してください
- 設計有料N+1 問題
N+1 問題 の設計の演習
- 設計有料N+1 問題
N+1 問題 の設計の演習
- 説明有料N+1 問題
N+1 問題 の説明の演習
- 確認実行計画
EXPLAIN が表示する行数は何ですか?
- 確認実行計画
クエリが遅いとき、最初にすべきことはどれですか?
- 設計実行計画
この実行計画から、何が問題でどう直しますか?
- 説明実行計画
「コードを変えていないのにバッチが3倍遅くなった」という状況を、原因から説明してください
- 設計有料実行計画
実行計画 の設計の演習
- 設計有料実行計画
実行計画 の設計の演習
- 説明有料実行計画
実行計画 の説明の演習
- 確認RDB と NoSQL
キーバリュー型のデータベースで「1件取るコストがデータ量に依存しない」のは、なぜですか?
- 確認RDB と NoSQL
次のうち、キーバリュー型を選ぶ根拠として最も強いものはどれですか?
- 設計RDB と NoSQL
この条件で、どのデータストアを選びますか?
- 説明RDB と NoSQL
「NoSQL のほうが速いらしいので使いたい」と言うメンバーに、何を確認すべきか説明してください
- 設計有料RDB と NoSQL
RDB と NoSQL の設計の演習
- 設計有料RDB と NoSQL
RDB と NoSQL の設計の演習
- 説明有料RDB と NoSQL
RDB と NoSQL の説明の演習
- 確認マイグレーション
検証環境で3秒だった ALTER が、本番で11分かかりました。最も疑うべきものはどれですか?
- 確認マイグレーション
オンライン DDL を使えば、書き込みを止めずにスキーマを変更できます。それでも事故が起きうるのはなぜですか?
- 設計マイグレーション
この条件で、マイグレーションの計画をどう立てますか?
- 説明マイグレーション
「列を足すだけなのに、なぜサイトが止まったのか」を、DB に詳しくない同僚に説明してください
- 設計有料マイグレーション
マイグレーション の設計の演習
- 設計有料マイグレーション
マイグレーション の設計の演習
- 説明有料マイグレーション
マイグレーション の説明の演習
- 確認論理削除と物理削除
会員テーブルを論理削除にしています。退会した人が同じメールアドレスで再登録しようとすると「登録済み」で弾かれます。原因はどれですか?
- 確認論理削除と物理削除
会員を論理削除しました。その会員に紐づく注文は注文テーブルに残っています。外部キー制約はこの状態をどう扱いますか?
- 設計論理削除と物理削除
会員の退会を、どう実装しますか?
- 説明論理削除と物理削除
「全部論理削除にしておけば、間違えて消しても戻せるから安全」と言う同僚に、何が安全で何が危ないのかを説明してください
- 設計有料論理削除と物理削除
論理削除と物理削除 の設計の演習
- 設計有料論理削除と物理削除
論理削除と物理削除 の設計の演習
- 説明有料論理削除と物理削除
論理削除と物理削除 の説明の演習
- 確認コネクションプール
Lambda の同時実行数が最大 500 まで伸びます。各実行環境はプールの最大を 10 本に設定しています。DB の max_connections は 400 です。DB に向かう接続は理論上最大で何本になりますか?
- 確認コネクションプール
DB の CPU 使用率は 15% で余裕があります。一方で API の応答が数秒に伸び、アプリのログには「接続の取得待ちでタイムアウト」が出ています。最も疑うべきものはどれですか?
- 設計コネクションプール
キャンペーンに備えて、Lambda から DB への接続をどう組みますか?
- 説明コネクションプール
「DB を大きくすれば解決するのでは」と言うプロダクトマネージャーに、なぜそれだけでは足りないのかを説明してください
- 設計有料コネクションプール
コネクションプール の設計の演習
- 設計有料コネクションプール
コネクションプール の設計の演習
- 説明有料コネクションプール
コネクションプール の説明の演習
- 確認ID の設計
請求書の URL が `/invoices/1024` です。この ID から外部の人が推測できることは何ですか?
- 確認ID の設計
新規サービスで、注文テーブルの主キーを決めます。書き込みは1日数千件、URL にも ID を出します。何を選びますか?
- 設計有料ID の設計
ID の設計 の設計の演習
- 設計有料ID の設計
ID の設計 の設計の演習
- 設計有料ID の設計
ID の設計 の設計の演習
- 設計有料ID の設計
ID の設計 の設計の演習
- 確認全文検索
`name` にインデックスを張ってあります。次のうち、インデックスが使われるのはどれですか?
- 確認全文検索
N-gram(2文字区切り)で索引を作ったとき、「京都」で検索すると何が起きますか?
- 設計有料全文検索
全文検索 の設計の演習
- 設計有料全文検索
全文検索 の設計の演習
- 設計有料全文検索
全文検索 の設計の演習
- 設計有料全文検索
全文検索 の設計の演習
- 確認凝集度と結合度
calculateAmount(items, isMember, hasCoupon, forExport) のようなフラグ引数が危ういのはなぜですか?
- 確認凝集度と結合度
似たコードを見つけたとき、共通化してよいかの判断軸はどれですか?
- 設計凝集度と結合度
このクラスをどう分割しますか?
- 説明凝集度と結合度
「共通化したのに、なぜか変更が怖くなった」という相談に、何が起きたかを説明してください
- 設計有料凝集度と結合度
凝集度と結合度 の設計の演習
- 設計有料凝集度と結合度
凝集度と結合度 の設計の演習
- 説明有料凝集度と結合度
凝集度と結合度 の説明の演習
- 確認SOLID
決済手段の分岐が12箇所に散っています。どの原則に反していますか?
- 確認SOLID
依存性逆転で「逆転」しているのは何ですか?
- 設計SOLID
この設計に、どの原則をどこまで適用しますか?
- 説明SOLID
「SOLID を全部守れているか不安」という後輩に、原則の使い方を説明してください
- 設計有料SOLID
SOLID の設計の演習
- 設計有料SOLID
SOLID の設計の演習
- 説明有料SOLID
SOLID の説明の演習
- 確認レイヤードアーキテクチャ
DB のカラム名を変えたら 28 ファイルが落ちました。何が起きていますか?
- 確認レイヤードアーキテクチャ
コントローラから直接リポジトリを呼ぶのは、常に避けるべきですか?
- 設計レイヤードアーキテクチャ
この実装のどこが層の設計に反していて、どう直しますか?
- 説明レイヤードアーキテクチャ
「層に分けているのに変更が波及する」という相談に、何を見ればよいかを説明してください
- 設計有料レイヤードアーキテクチャ
レイヤードアーキテクチャ の設計の演習
- 設計有料レイヤードアーキテクチャ
レイヤードアーキテクチャ の設計の演習
- 説明有料レイヤードアーキテクチャ
レイヤードアーキテクチャ の説明の演習
- 確認ドメインモデリング
金額を number ではなく専用の型で扱うと、何が防げますか?
- 確認ドメインモデリング
テーブル設計から始めると、業務ルールはどこに置かれがちですか?
- 設計ドメインモデリング
この業務をどうモデリングしますか?
- 説明ドメインモデリング
「まず ER 図を書こう」という進め方に、先に確認したいことを説明してください
- 設計有料ドメインモデリング
ドメインモデリング の設計の演習
- 設計有料ドメインモデリング
ドメインモデリング の設計の演習
- 説明有料ドメインモデリング
ドメインモデリング の説明の演習
- 確認モノリスとマイクロサービス
モノリスでは、注文の保存とポイントの付与を1つのトランザクションで行っていました。サービスに分けて、注文サービスがポイントサービスを HTTP で呼ぶ形にしました。新しく起きうることはどれですか?
- 確認モノリスとマイクロサービス
8つのサービスに分けましたが、全サービスが1つの DB の同じテーブルを直接読み書きしています。この状態で、会員テーブルの列名を変えるとどうなりますか?
- 設計モノリスとマイクロサービス
このチームの開発を速くするために、構成をどう変えますか?
- 説明モノリスとマイクロサービス
「マイクロサービスに分けたのに、なぜ開発が遅くなったのか」と聞く CTO に、説明してください
- 設計有料モノリスとマイクロサービス
モノリスとマイクロサービス の設計の演習
- 設計有料モノリスとマイクロサービス
モノリスとマイクロサービス の設計の演習
- 説明有料モノリスとマイクロサービス
モノリスとマイクロサービス の説明の演習
- 確認時刻とタイムゾーン
注文時刻 created_at は UTC で保存しています。日本時間の11月30日の売上を集計するつもりで WHERE DATE(created_at) = '2026-11-30' と書きました。集計に入るのはどの注文ですか?
- 確認時刻とタイムゾーン
日本時間に設定されたブラウザで、new Date('2026-11-30') と new Date('2026-11-30T00:00') を作りました。2つの瞬間の差はどれですか?
- 設計時刻とタイムゾーン
「11月30日 23時59分まで」のキャンペーンの終了を、どう保存し、どう判定しますか?
- 説明時刻とタイムゾーン
経理の担当者に、日次売上が毎日ずれていた理由と、過去の数字をどう読めばよいかを説明してください
- 設計有料時刻とタイムゾーン
時刻とタイムゾーン の設計の演習
- 設計有料時刻とタイムゾーン
時刻とタイムゾーン の設計の演習
- 説明有料時刻とタイムゾーン
時刻とタイムゾーン の説明の演習
- 確認I/O と並行処理
DB のクエリの応答を待っている 200ms の間、その処理はサーバーの CPU をどれだけ使っていますか?
- 確認I/O と並行処理
ある API の同時実行数を 10 から 20 に増やしたところ、1秒あたりに捌ける件数は変わらず、1件あたりの応答時間だけが約2倍になりました。この処理は何バウンドですか?
- 設計I/O と並行処理
サムネイルの生成を、どこで動かしますか?
- 説明I/O と並行処理
「非同期にしたのに速くならない」と言う同僚に、何が起きているかを説明してください
- 設計有料I/O と並行処理
I/O と並行処理 の設計の演習
- 設計有料I/O と並行処理
I/O と並行処理 の設計の演習
- 説明有料I/O と並行処理
I/O と並行処理 の説明の演習
- 確認文字コードと正規化
家族の絵文字(人の絵文字を ZWJ で繋いだもの)1つを、JavaScript の `.length` で数えるといくつになりますか?
- 確認文字コードと正規化
正規化はどこでやるのが基本ですか?
- 設計有料文字コードと正規化
文字コードと正規化 の設計の演習
- 設計有料文字コードと正規化
文字コードと正規化 の設計の演習
- 設計有料文字コードと正規化
文字コードと正規化 の設計の演習
- 設計有料文字コードと正規化
文字コードと正規化 の設計の演習
- 確認状態をどこに置くか
一覧の絞り込み条件は、どこに置くべきですか?
- 確認状態をどこに置くか
サイドバーの開閉状態は、どこに置くべきですか?
- 設計有料状態をどこに置くか
状態をどこに置くか の設計の演習
- 設計有料状態をどこに置くか
状態をどこに置くか の設計の演習
- 設計有料状態をどこに置くか
状態をどこに置くか の設計の演習
- 設計有料状態をどこに置くか
状態をどこに置くか の設計の演習
- 確認リソース設計
レスポンスのフィールドを1つ削除するのは、どういう変更ですか?
- 確認リソース設計
「記事を公開する」操作を API にするとき、どれが扱いやすいですか?
- 設計リソース設計
この機能群の API をどう設計しますか?
- 説明リソース設計
「使われていないフィールドなので消した」という変更を、なぜ危険かを説明してください
- 設計有料リソース設計
リソース設計 の設計の演習
- 設計有料リソース設計
リソース設計 の設計の演習
- 説明有料リソース設計
リソース設計 の説明の演習
- 確認冪等性
同じリクエストを2回送っても結果が変わらないのはどれですか?
- 確認冪等性
タイムアウトしたリクエストについて、クライアントが確実に言えることはどれですか?
- 設計冪等性
この一括処理を、安全にリトライできる形にするにはどうしますか?
- 説明冪等性
「リトライで二重決済が起きた」という事故を、原因と対策としてチームに説明してください
- 設計有料冪等性
冪等性 の設計の演習
- 設計有料冪等性
冪等性 の設計の演習
- 説明有料冪等性
冪等性 の説明の演習
- 確認エラー設計
失敗も HTTP 200 で返し、ボディの success: false で表す方式。何が困りますか?
- 確認エラー設計
エラー応答に含めるべき、呼び出し側がいちばん必要とする情報はどれですか?
- 設計エラー設計
この5つの失敗に、それぞれどう応答しますか?
- 説明エラー設計
「エラーは全部 200 とメッセージで返す方針にしたい」という提案に、何が起きるかを説明してください
- 設計有料エラー設計
エラー設計 の設計の演習
- 設計有料エラー設計
エラー設計 の設計の演習
- 説明有料エラー設計
エラー設計 の説明の演習
- 確認REST と GraphQL
GraphQL で CDN キャッシュが効きにくいのはなぜですか?
- 確認REST と GraphQL
転送量が40%減ったのにサーバー負荷が10倍になりました。何が起きていますか?
- 設計REST と GraphQL
この2つのサービスに、それぞれどちらを選びますか?
- 説明REST と GraphQL
「GraphQL にすれば過不足なく取れて速くなる」という提案に、一緒に決めるべきことを説明してください
- 設計有料REST と GraphQL
REST と GraphQL の設計の演習
- 設計有料REST と GraphQL
REST と GraphQL の設計の演習
- 説明有料REST と GraphQL
REST と GraphQL の説明の演習
- 確認ページネーション
新しい順の一覧を offset で読んでいます。1ページ目と2ページ目の間に新しい行が3件追加されました。何が起きますか?
- 確認ページネーション
created_at だけをカーソルに使うと、どんな問題が起きますか?
- 設計ページネーション
この条件で、一覧 API のページングをどう設計しますか?
- 説明ページネーション
「offset で十分では?」と言うメンバーに、何を確認すべきか説明してください
- 設計有料ページネーション
ページネーション の設計の演習
- 設計有料ページネーション
ページネーション の設計の演習
- 説明有料ページネーション
ページネーション の説明の演習
- 確認リトライとタイムアウト
アプリ・BFF・注文サービスの3つが、それぞれ失敗したら最大3回(初回を含む)まで試します。決済サービスがまったく応答しないとき、1回の購入操作で決済サービスに届く呼び出しは最大何回ですか?
- 確認リトライとタイムアウト
BFF のタイムアウトは5秒です。その先の注文サービスは、決済サービスを2秒のタイムアウトで最大3回呼び、間に1秒ずつ待ちます。決済サービスが応答しないとき、何が起きますか?
- 設計リトライとタイムアウト
購入の経路で、リトライとタイムアウトをどう決めますか?
- 説明リトライとタイムアウト
ふりかえりで「決済サービスは2分で直ったのに、なぜ40分も止まったのか」と聞かれました。説明してください
- 設計有料リトライとタイムアウト
リトライとタイムアウト の設計の演習
- 設計有料リトライとタイムアウト
リトライとタイムアウト の設計の演習
- 説明有料リトライとタイムアウト
リトライとタイムアウト の説明の演習
- 確認非同期処理とキュー
可視性タイムアウトが30秒のキューです。ワーカーが仕事を受け取り、処理に40秒かかりました。何が起きますか?
- 確認非同期処理とキュー
重複を避けるため、ワーカーは仕事を受け取った直後にキューから消し、それからメールを送る作りにしました。どんな失敗が起こりえますか?
- 設計非同期処理とキュー
注文確認メールの送信を、どう組み直しますか?
- 説明非同期処理とキュー
「キューに入れたら、確実に1回だけ処理されると思っていた」と言うチームメンバーに、何が違うのかを説明してください
- 設計有料非同期処理とキュー
非同期処理とキュー の設計の演習
- 設計有料非同期処理とキュー
非同期処理とキュー の設計の演習
- 説明有料非同期処理とキュー
非同期処理とキュー の説明の演習
- 確認レート制限
「毎分100回まで」を、毎分0秒で数え直す方式で制限しています。12:00:59 に100回、12:01:00 に100回のリクエストが届きました。この2秒間で、何回が通りますか?
- 確認レート制限
API サーバーが5台あり、各サーバーのメモリ上で「API キーごとに毎分100回まで」を数えています。ロードバランサは均等に振り分けます。1つの API キーで、実際に毎分何回まで通りますか?
- 設計レート制限
ログイン API の制限を、どう設計し直しますか?
- 説明レート制限
「うちの会社の社員だけ、朝ログインできない」という問い合わせを受けたサポート担当者に、何が起きていたかを説明してください
- 設計有料レート制限
レート制限 の設計の演習
- 設計有料レート制限
レート制限 の設計の演習
- 説明有料レート制限
レート制限 の説明の演習
- 確認API のバージョニング
次のうち、後方互換を壊さない変更はどれですか?
- 確認API のバージョニング
レスポンスから項目を1つ消したい。最初にやることは何ですか?
- 設計有料API のバージョニング
API のバージョニング の設計の演習
- 設計有料API のバージョニング
API のバージョニング の設計の演習
- 設計有料API のバージョニング
API のバージョニング の設計の演習
- 設計有料API のバージョニング
API のバージョニング の設計の演習
- 確認ファイルのアップロード
上限 1GB の動画アップロードを実装します。経路はどちらを選びますか?
- 確認ファイルのアップロード
サーバー経由のアップロードで、メモリ不足を避けるには何をしますか?
- 設計有料ファイルのアップロード
ファイルのアップロード の設計の演習
- 設計有料ファイルのアップロード
ファイルのアップロード の設計の演習
- 設計有料ファイルのアップロード
ファイルのアップロード の設計の演習
- 設計有料ファイルのアップロード
ファイルのアップロード の設計の演習
- 確認CI/CD
落ちたままのテストを1件放置すると、なぜ全体が壊れるのですか?
- 確認CI/CD
ステージングと本番で、それぞれビルドし直すのは何が問題ですか?
- 設計CI/CD
このリリースを、安全に進める手順に分けてください
- 説明CI/CD
「CI は時間がかかるだけ」と言う同僚に、何を買っているのかを説明してください
- 設計有料CI/CD
CI/CD の設計の演習
- 設計有料CI/CD
CI/CD の設計の演習
- 説明有料CI/CD
CI/CD の説明の演習
- 確認コンテナ
image: myapp:latest を本番で使うと、何が起きますか?
- 確認コンテナ
Dockerfile でアプリのコードを先にコピーし、その後に依存をインストールすると何が起きますか?
- 設計コンテナ
この Dockerfile の問題点を、影響の大きい順に挙げてください
- 説明コンテナ
「切り戻せなかった」障害の振り返りで、何が原因だったかを説明してください
- 設計有料コンテナ
コンテナ の設計の演習
- 設計有料コンテナ
コンテナ の設計の演習
- 説明有料コンテナ
コンテナ の説明の演習
- 確認ログと監視
1日200件のアラートが届く状態は、何が起きていますか?
- 確認ログと監視
CPU 使用率が 90% を超えたら通知する設定。何が弱点ですか?
- 設計ログと監視
この監視設定を、どう作り直しますか?
- 説明ログと監視
「アラートチャンネルがミュートされている」という状況を、どう立て直すか説明してください
- 設計有料ログと監視
ログと監視 の設計の演習
- 設計有料ログと監視
ログと監視 の設計の演習
- 説明有料ログと監視
ログと監視 の説明の演習
- 確認テスト戦略
同じバグを捕まえられるなら、どの層のテストを選ぶべきですか?
- 確認テスト戦略
たまに落ちるテストを「再実行すれば通る」と扱い続けると、何が起きますか?
- 設計テスト戦略
このテストスイートを、どう作り直しますか?
- 説明テスト戦略
「E2E を180本まで増やしたのに、品質が上がった実感が無い」という状況を説明してください
- 設計有料テスト戦略
テスト戦略 の設計の演習
- 設計有料テスト戦略
テスト戦略 の設計の演習
- 説明有料テスト戦略
テスト戦略 の説明の演習
- 確認インシデント対応
決済が全面的に止まっています。30分前にデプロイがありました。最初に何をしますか?
- 確認インシデント対応
振り返りの再発防止策として、最も弱いのはどれですか?
- 設計インシデント対応
いま障害中です。最初の30分をどう使いますか?
- 説明インシデント対応
振り返りの「再発防止」に何を書きますか。書いてはいけないことも含めて説明してください
- 設計有料インシデント対応
インシデント対応 の設計の演習
- 設計有料インシデント対応
インシデント対応 の設計の演習
- 説明有料インシデント対応
インシデント対応 の説明の演習
- 確認秘密情報の扱い
API キーを書いたファイルを誤ってコミットし、プッシュしました。次のコミットでファイルを削除してプッシュしました。これで安全になりましたか?
- 確認秘密情報の扱い
Dockerfile で .env を COPY し、依存関係のインストールに使ったあと、次の RUN で rm .env しました。できあがったイメージに鍵は残りますか?
- 設計秘密情報の扱い
サーバーレスの API で、秘密情報をどこにどう置きますか?
- 説明秘密情報の扱い
誤ってコミットした API キーを「削除コミットを積んだので対応済みです」と報告してきた後輩に、何が足りないかを伝えてください
- 設計有料秘密情報の扱い
秘密情報の扱い の設計の演習
- 設計有料秘密情報の扱い
秘密情報の扱い の設計の演習
- 説明有料秘密情報の扱い
秘密情報の扱い の説明の演習
- 確認フィーチャーフラグ
ON / OFF の2通りを取るフラグが、同じ画面の処理に3つあります。本番で起こりうるフラグの組み合わせは何通りですか?
- 確認フィーチャーフラグ
新しい決済画面を10%に公開するため、リクエストごとに乱数を引いて10%の確率で新しい画面を出しています。何が起きますか?
- 設計フィーチャーフラグ
新しい決済の流れを、フラグを使ってどう公開しますか?
- 説明フィーチャーフラグ
「公開が終わったフラグは、そのまま残しておいても害は無いのでは」と言うプロダクトマネージャーに、消す理由を説明してください
- 設計有料フィーチャーフラグ
フィーチャーフラグ の設計の演習
- 設計有料フィーチャーフラグ
フィーチャーフラグ の設計の演習
- 説明有料フィーチャーフラグ
フィーチャーフラグ の説明の演習
- 確認バックアップと復旧
毎日 03:00 にフルバックアップを取っています。21:00 に障害が起きて復旧する場合、失われるデータは最大でどれくらいですか?
- 確認バックアップと復旧
バックアップの監視として、最も価値が低いものはどれですか?
- 設計有料バックアップと復旧
バックアップと復旧 の設計の演習
- 設計有料バックアップと復旧
バックアップと復旧 の設計の演習
- 設計有料バックアップと復旧
バックアップと復旧 の設計の演習
- 設計有料バックアップと復旧
バックアップと復旧 の設計の演習
- 確認設定の管理
`MAIL_ENABLED` が未設定のとき、既定値をどうすべきですか?
- 確認設定の管理
次のうち、リポジトリにコミットしてよいものはどれですか?
- 設計有料設定の管理
設定の管理 の設計の演習
- 設計有料設定の管理
設定の管理 の設計の演習
- 設計有料設定の管理
設定の管理 の設計の演習
- 設計有料設定の管理
設定の管理 の設計の演習
- 設計有料金曜のリリースを、切り戻せなかった夜
金曜のリリースを、切り戻せなかった夜 の設計の演習
- 設計有料金曜のリリースを、切り戻せなかった夜
金曜のリリースを、切り戻せなかった夜 の設計の演習
- 設計有料金曜のリリースを、切り戻せなかった夜
金曜のリリースを、切り戻せなかった夜 の設計の演習
- 設計有料金曜のリリースを、切り戻せなかった夜
金曜のリリースを、切り戻せなかった夜 の設計の演習
- 設計有料金曜のリリースを、切り戻せなかった夜
金曜のリリースを、切り戻せなかった夜 の設計の演習
- 設計有料検証環境では速い一覧が、本番でだけ 9 秒かかる
検証環境では速い一覧が、本番でだけ 9 秒かかる の設計の演習
- 設計有料検証環境では速い一覧が、本番でだけ 9 秒かかる
検証環境では速い一覧が、本番でだけ 9 秒かかる の設計の演習
- 設計有料検証環境では速い一覧が、本番でだけ 9 秒かかる
検証環境では速い一覧が、本番でだけ 9 秒かかる の設計の演習
- 設計有料検証環境では速い一覧が、本番でだけ 9 秒かかる
検証環境では速い一覧が、本番でだけ 9 秒かかる の設計の演習
- 設計有料検証環境では速い一覧が、本番でだけ 9 秒かかる
検証環境では速い一覧が、本番でだけ 9 秒かかる の設計の演習
- 設計有料「二重に引き落とされた」— 通知は1通しか届いていない
「二重に引き落とされた」— 通知は1通しか届いていない の設計の演習
- 設計有料「二重に引き落とされた」— 通知は1通しか届いていない
「二重に引き落とされた」— 通知は1通しか届いていない の設計の演習
- 設計有料「二重に引き落とされた」— 通知は1通しか届いていない
「二重に引き落とされた」— 通知は1通しか届いていない の設計の演習
- 設計有料「二重に引き落とされた」— 通知は1通しか届いていない
「二重に引き落とされた」— 通知は1通しか届いていない の設計の演習
- 設計有料「二重に引き落とされた」— 通知は1通しか届いていない
「二重に引き落とされた」— 通知は1通しか届いていない の設計の演習
- 設計有料直したのに、一部の利用者にだけ古い画面が出続ける
直したのに、一部の利用者にだけ古い画面が出続ける の設計の演習
- 設計有料直したのに、一部の利用者にだけ古い画面が出続ける
直したのに、一部の利用者にだけ古い画面が出続ける の設計の演習
- 設計有料直したのに、一部の利用者にだけ古い画面が出続ける
直したのに、一部の利用者にだけ古い画面が出続ける の設計の演習
- 設計有料直したのに、一部の利用者にだけ古い画面が出続ける
直したのに、一部の利用者にだけ古い画面が出続ける の設計の演習
- 設計有料直したのに、一部の利用者にだけ古い画面が出続ける
直したのに、一部の利用者にだけ古い画面が出続ける の設計の演習
- 設計有料退会した人に、キャンペーンメールが届いた
退会した人に、キャンペーンメールが届いた の設計の演習
- 設計有料退会した人に、キャンペーンメールが届いた
退会した人に、キャンペーンメールが届いた の設計の演習
- 設計有料退会した人に、キャンペーンメールが届いた
退会した人に、キャンペーンメールが届いた の設計の演習
- 設計有料退会した人に、キャンペーンメールが届いた
退会した人に、キャンペーンメールが届いた の設計の演習
- 設計有料退会した人に、キャンペーンメールが届いた
退会した人に、キャンペーンメールが届いた の設計の演習
- 設計有料検証のつもりで、本番のデータを消していた
検証のつもりで、本番のデータを消していた の設計の演習
- 設計有料検証のつもりで、本番のデータを消していた
検証のつもりで、本番のデータを消していた の設計の演習
- 設計有料検証のつもりで、本番のデータを消していた
検証のつもりで、本番のデータを消していた の設計の演習
- 設計有料検証のつもりで、本番のデータを消していた
検証のつもりで、本番のデータを消していた の設計の演習
- 設計有料検証のつもりで、本番のデータを消していた
検証のつもりで、本番のデータを消していた の設計の演習
- 設計有料「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした
「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした の設計の演習
- 設計有料「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした
「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした の設計の演習
- 設計有料「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした
「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした の設計の演習
- 設計有料「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした
「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした の設計の演習
- 設計有料「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした
「検索しても出てこない」— 売上が落ちた理由が、半年分かりませんでした の設計の演習