Задача со строками: что будет выведено? Как перегружен оператор == для строк? Что такое пул интернирования строк?
Что такое асинхронность и в чём её суть? За счёт чего достигается?
Что такое ValueTask и когда его стоит использовать?
SignalR и WebSocket — общий принцип действия, отличия, когда применять?
Slice в Go — как организован под капотом?
OLTP и OLAP — что значат аббревиатуры, в чём отличие, в том числе архитектуры хранилищ?
Расскажи про сборщик мусора (Garbage Collector) в Go.
Что такое структура? Это значимый или ссылочный тип? Где выделяется память? Каковы границы эффективного использования структур?
Базы данных — какие бывают, с какими работал, для чего служат?
Что такое дедлок (deadlock) применительно к базам данных?
Что такое покрывающий индекс (INCLUDE в индексах)?
Чем List отличается от IEnumerable?
Что такое MVCC в PostgreSQL и как это влияет на производительность SELECT после большого количества UPDATE/INSERT/DELETE?
Расскажи о своём опыте работы на последнем месте
Назови примитивы синхронизации и кратко опиши принципы их работы.
Можно ли обеспечить ACID при уровне изоляции Read Committed?
В чём разница между HTTP/1 и HTTP/2?
Хорошо ли возвращать void в асинхронных методах? Подводные камни async void?
Расскажи про Redis — какие особенности работы?
Есть система, которая опрашивает датчики температуры, влажности и давления, расположенные в помещениях и сохраняет значения в таблицу. Показания с датчиков снимаются раз в день. Не в каждом помещении могут быть установлены все три типа датчиков, кроме того из-за сбоев некоторые датчики могут не предоставить информацию. Необходимо написать запрос, который выведет агрегированную информацию о показаниях датчиков всех типов по каждой комнате на каждый день. Структура данных Поле Тип Описание date timestamp Дата сбора показания room_id int Идентификатор комнаты, где расположен датчик sensor_type int Тип датчика (1 - датчик температуры, 2 - датчик влажности, 3 - датчик давления) value int Значение, полученное с датчика Пример CREATE TABLE t_sensor_data ( date TIMESTAMP, room_id INT, sensor_type INT, value INT ); INSERT INTO t_sensor_data (date, room_id, sensor_type, value) VALUES ('[phone]', 1, 1, 25), ('[phone]', 1, 2, 15), ('[phone]', 2, 1, 27), ('[phone]', 2, 2, 12), ('[phone]', 2, 3, 940), ('[phone]', 1, 1, 27), ('[phone]', 1, 2, 45), ('[phone]', 1, 3, 950), ('[phone]', 2, 1, 25), ('[phone]', 2, 2, 30), ('[phone]', 2, 3, 940); SELECT * FROM t_sensor_data;