Sobes.tech

Какая вычислительная сложность этого запроса? Можно ли отсортировать за один проход?

Middle
PyrusPyrus
11

Как определить язык пользователя, который впервые заходит на сайт?

Middle
PyrusPyrus
11

Что означает ключевое слово yield? Зачем оно используется?

Middle
PyrusPyrus
10

С Linq2DB не работали?

Middle+
Gravilink
10

Расскажите разницу между Action-фильтрами и Middleware в ASP.NET Core.

Middle+
aiins
10

Kafka — доводилось работать, расскажи особенности?

Senior
.wrk
10

Расскажите про последнее место работы — Северсталь. Чем занимались, сколько проработали, какой стек?

Middle+
Gravilink
10

Микросервисная архитектура — как сервисы общаются между собой? RabbitMQ vs Kafka — отличия?

Middle
СБК ПАРУС
10

Зачем вы добавили List в решение, если можно просто использовать HashSet и сделать ToList?

Middle
PyrusPyrus
10

Какая сложность у быстрой сортировки (QuickSort)?

Middle
PyrusPyrus
10

Расскажи про опыт оптимизации сложных SQL-запросов и работы с планом выполнения. Был ли кейс, где удалось ускорить запрос в 2-3 раза?

Middle
OZONOZON
10

Ревью: тест CalendarService.cs: public class CalendarService { public bool IsWorkingDay() { switch (DateTime.Now.DayOfWeek) { case DayOfWeek.Saturday: case DayOfWeek.Sunday: return false; default: return true; } } } CalendarServiceTests.cs: public class CalendarServiceTests { [Fact] public void IsWorkingDay_Always_ReturnsTrue() { // Arrange var calendarService = new CalendarService(); // Act var actual = calendarService.IsWorkingDay(); // Assert Assert.True(actual); } }

Middle+
Gravilink
9

Расскажи про последнее место работы и свой опыт

Middle
ИТ Инополис
9

Алгоритмы балансировки нагрузки. Как выбрать конкретный инстанс сервиса?

Middle
OZONOZON
9

Map в Go — как организована под капотом?

Senior
.wrk
9

По технологиям — какой стек использовали?

Middle+
Gravilink
9

Ревью: прикладной код Класс содержит логику обработки новых заказов. Извлекает из БД заказы и позиции, после чего обращается по http к внешнему микросервису Stock, в котором бронирует товары по позициям заказа. Если все бронирования выполнены успешно, микросервис подтверждает бронь заказа в Stock и отмечает заказ обработанным. Микросервис запущен в несколько экземпляров, поэтому метод Process может выполняться параллельно. Для того, чтобы не обрабатывать одни и те же строки используется механизм пессимистичной блокировки PostgreSQL Select for update ... skip locked. Реализация IBus отправляет сообщения в RabbitMq. ```csharp public sealed class PendingOrdersProcessor { public async Task PendingOrdersProcessor(ILogger logger, IBus bus, HttpStockService st { var env = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); var cs = _cs[env]; _db = new OrdersRepository(cs); _bus = bus; logger = logger; ``` ```csharp _stockService = stockService; } private readonly ILogger _logger; private readonly IOrdersRepository _db; private readonly IStockService _stockService; private readonly IBus _bus; private static readonly Dictionary<string, string> _cs = new { { "Development", "User ID=root;Password=myPassword;Host=localhost;Port=5432;Database=myDataBase" }, { "Production", "User ID=root;Password=myPassword;Host=prod-db;Port=5432;Database= "Pooling=true;Min Pool Size=0;Max Pool Size=1;" } }; ```

Middle+
Gravilink
9

Что такое индексы? Какие бывают?

Senior
.wrk
9

Чем Entity Framework отличается от Dapper?

Middle
ИТ Инополис
9

Как корректно реализовать отмену бронирования при параллельном выполнении задач через Task.WhenAll?

Middle+
OZONOZON
9
/168