Питання на співбесіді з браузера й продуктивності (Senior) з відповідями

75 запитань для співбесіди з теми Браузер і продуктивність (Senior) - з правильними відповідями, поясненнями й посиланнями на документацію.

Пройти цей тест
  1. 1.Що гарантує Site Isolation у Chromium?
  2. 2.Чому браузери вимкнули SharedArrayBuffer за замовчуванням, а потім знову ввімкнули лише для cross-origin isolated сторінок?
  3. 3.Яка пара заголовків робить сторінку cross-origin isolated (self.crossOriginIsolated === true)?
  4. 4.Після ввімкнення COEP: require-corp перестали вантажитися сторонні зображення. Які є варіанти?
  5. 5.Від чого, крім увімкнення ізоляції, захищає Cross-Origin-Opener-Policy: same-origin?
  6. 6.Для чого Cross-Origin-Resource-Policy: same-site?
  7. 7.Чим корисні на сервері заголовки запиту Fetch Metadata, як-от Sec-Fetch-Site?
  8. 8.Що таке XS-Leaks?
  9. 9.Чому анімація transform може лишатися плавною, навіть коли головний потік заблоковано довгою задачею?
  10. 10.Який бюджет кадру для рендерингу з частотою 60 Гц і чому на практиці він менший за 16,7 мс?
  11. 11.Чому зміна одного класу на <body> може бути дорогою у великому застосунку?
  12. 12.Що означає «вибух шарів» (layer explosion)?
  13. 13.Чим content-visibility: hidden відрізняється від display: none?
  14. 14.Коли content-visibility: auto може погіршити CLS чи прокрутку?
  15. 15.Що робить «paint holding» у Chromium для same-origin навігацій?
  16. 16.Що Long Animation Frames (LoAF) API додає порівняно з Long Tasks API?
  17. 17.Чому гідратація може погіршувати INP на сторінках із серверним рендерингом?
  18. 18.Що дає scheduler.postTask(fn, { priority: "background" })?
  19. 19.INP поганий, але кожен обробник подій триває менше 20 мс. На що варто подивитися?
  20. 20.Чому лабораторне налагодження INP часто вводить в оману порівняно з польовими даними?
  21. 21.Як збирання сміття може впливати на INP?
  22. 22.Чому оновлення рендерингу в requestAnimationFrame іноді є прихованою причиною поганого INP?
  23. 23.Чому Core Web Vitals оцінюють за 75-м перцентилем?
  24. 24.RUM показує, що LCP p75 погіршився, але оцінки Lighthouse не змінилися. Яка ймовірна причина?
  25. 25.Як контролювати бюджети продуктивності в CI, щоб результати були надійними?
  26. 26.Яка користь надсилати атрибуцію LCP (елемент, складові) разом зі значенням?
  27. 27.Як придатність до bfcache впливає на польові метрики?
  28. 28.Який заголовок історично не давав сторінці потрапити в bfcache у Chrome?
  29. 29.Як сторінка має поводитися, коли її prerender-ять через Speculation Rules?
  30. 30.Який компроміс вбудовування критичного CSS в HTML?
  31. 31.Як потокова передача HTML із сервера допомагає LCP?
  32. 32.Чому з HTTP/2 чи HTTP/3 збирати все в один JS-файл досі може бути не найкращою ідеєю?
  33. 33.Яка головна пастка ключа кешу, що містить зайві дані запиту, як-от усі cookies?
  34. 34.Що таке web cache poisoning?
  35. 35.Чому ETag, згенеровані з inode чи часу зміни, можуть погано ревалідуватися за балансувальником навантаження?
  36. 36.Яку проблему розв'язують цільові заголовки на кшталт CDN-Cache-Control?
  37. 37.Що змінює Cache-Control: immutable?
  38. 38.Чому кешувати автентифіковану API-відповідь у спільному кеші CDN небезпечно навіть із коротким TTL?
  39. 39.Що не так із цією перевіркою CORS?
  40. 40.Чому дозволяти Origin: null у CORS ризиковано?
  41. 41.Чи захищає правильна конфігурація CORS API від CSRF?
  42. 42.Внутрішній сервіс на http://192.168.0.10 не має бути доступним для скриптів публічних сайтів. Який механізм браузера на це спрямований?
  43. 43.Чому preflight-запити шкодять продуктивності SPA з великою кількістю API-викликів і як їх зменшити?
  44. 44.Що робить 'strict-dynamic' у CSP?
  45. 45.Чому CSP зі списком дозволених хостів, як-от script-src 'self' https://cdn.example.com, часто можна обійти?
  46. 46.Чому strict CSP має містити base-uri 'none' (або 'self')?
  47. 47.Як розгорнути нову CSP, не зламавши продакшн?
  48. 48.Що примусово забезпечують Trusted Types?
  49. 49.Що таке mutation XSS (mXSS)?
  50. 50.Що таке DOM clobbering?
  51. 51.Чому краще кодувати вивід під його контекст, ніж один раз фільтрувати «погане» введення на вході?
  52. 52.Від чого HttpOnly сесійна cookie НЕ захищає, коли є XSS?
  53. 53.Чим небезпечно вставляти серверні дані в inline-скрипт ось так?
  54. 54.Де санітизувати HTML від користувачів у системі, яка показує його у вебзастосунку й мобільному застосунку?
  55. 55.Що гарантує префікс імені cookie __Host-?
  56. 56.Чому SameSite не захищає від атак зі зламаного піддомену на кшталт blog.example.com?
  57. 57.Що CHIPS (cookies із Partitioned) змінює для вбудованого віджета?
  58. 58.Що стається, коли сховище origin перевищує квоту браузера або на пристрої закінчується місце?
  59. 59.Що таке партиціонування сховищ (storage partitioning) у сучасних браузерах?
  60. 60.Чому один великий HTML-документ досі може мати повільний TTFB з HTTP/3 і CDN?
  61. 61.Що дозволяє connection coalescing у HTTP/2?
  62. 62.Чому «domain sharding» - антипатерн із HTTP/2?
  63. 63.Що TLS 1.3 покращує для завантаження сторінки порівняно з TLS 1.2?
  64. 64.Який сенс надсилати Link: <...>; rel=preload HTTP-заголовком, а не в HTML?
  65. 65.Чому sandboxed iframe на окремому origin - поширений спосіб показувати недовірений HTML (наприклад, віджети від користувачів)?
  66. 66.Чому allow-scripts allow-same-origin на sandboxed iframe із same-origin контентом небезпечні?
  67. 67.Яка мета HSTS preload?
  68. 68.Який підхід до сторонніх скриптів найбільше обмежує ризики і для продуктивності, і для безпеки?
  69. 69.Чому CSP варто надсилати HTTP-заголовком, а не тегом <meta>, коли це можливо?
  70. 70.Що service worker означає для наслідків XSS?
  71. 71.Яке найважливіше обмеження Web Application Firewall (WAF) проти XSS?
  72. 72.Яка головна ідея моделі продуктивності RAIL?
  73. 73.Hero-заголовок з'являється з анімацією від opacity: 0. Як це може вплинути на LCP?
  74. 74.Чому «anti-flicker» сніпети клієнтських інструментів A/B-тестування часто погіршують LCP?
  75. 75.Чому завантаження популярного шрифту з публічного CDN шрифтів більше не виграє від кешів інших сайтів?