Что такое WebSocket? URLSessionWebSocketTask
Суть
WebSocket — протокол двусторонней связи поверх одного TCP-соединения. Клиент начинает с обычного HTTP-запроса с заголовком Upgrade: websocket; после ответа 101 Switching Protocols соединение превращается в полнодуплексный канал: обе стороны шлют сообщения (текст или бинарные фреймы) в любой момент, без новых запросов и заголовков. Схемы ws:// и wss:// (поверх TLS; ATS требует wss).
Применение: чаты, котировки, live-обновления, коллаборативное редактирование, игровые лобби — всё, где сервер должен push-ить данные. Для односторонних уведомлений часто хватает SSE (bytes(for:)), для редких событий — APNs.
Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.
Полный ответ — в DevPrep