Sobes.tech

Сколько было RPS на пике? На запись сколько?

Senior
01.tech
9

Какие ещё проблемы есть в коде? (SecurityContextHolder, персональные данные, финансовые расчёты)

Senior
Т-БанкТ-Банк
9

Есть ли опыт работы на Kotlin?

Senior
Heads and Hands
9

Расскажи о сложной задаче из опыта работы — интеграция с API и решение проблемы таймаутов.

Senior
СБЕРСБЕР
9

Использовали ли вы TDD и юнит-тесты?

Middle+
Цифровая лабаратория
9

Как устроен AtomicInteger в Java?

Senior
IT OneIT One
9

Как решить проблему с НФТ 50ms при текущих RT 150ms + 350ms? Предложи архитектурное решение.

Middle
Ecom
9

Какова сложность алгоритма вставки (put) в TreeMap?

Middle+
луция
9

Почему Map не является коллекцией (Collection)?

Middle+
луция
9

Что выведет этот код? public class StreamApi { @Data @AllArgsConstructor public static class Client { private String name; private String city; } public static Map<String, Long> countBy(Stream<Client> clients, Function<Client, String> clientParameterGetter) { return clients.collect(Collectors.groupingBy(clientParameterGetter, TreeMap::new, Collectors.counting())); } public static void main(String[] args) { List<Client> clients = List.of( new Client("Иванов", "Москва"), new Client("Михайлов", "Санкт-Петербург"), new Client("Сергеев", "Санкт-Петербург"), new Client("Иванов", null), new Client("Сергеев", null) ); long count = clients.stream() .peek(client -> { if (client.getCity() == null) { client.setCity("Москва"); } }) .count(); Predicate<Client> clientPredicate = client -> client.getCity() != null; Stream<Client> validClients = clients.stream().filter(clientPredicate); System.out.println(count); System.out.println(countBy(validClients, Client::getName)); System.out.println(countBy(validClients, Client::getCity)); } }

Senior
IT OneIT One
9

Есть система, которая дает юзерам возможность работать с файлами в браузере. Стек стандартный: Java, Spring, React, Postgres. Файлы хранятся в файловой системе на бэке, метаданные файлов в БД. Команда реализовала фичу - переименование файла. Этот метод по сути ключевой для переименования файла на бэке. Нужно провести его ревью, где необходимо выявить потенциальные проблемы в существующем коде и предложить варианты их исправления. @Transactional public void process(String oldName, String newName) { Long id = exec("select id from file where name='" + oldName + "'"); processFile(oldName, newName); // переименование файла на диске exec("update file set name='" + newName + "' where id = " + id); }

Middle+
СБЕРСБЕР
9

Почему вы выбрали именно Saga паттерн?

Middle+
Цифровая лабаратория
9

В чём суть паттерна Inversion of Control (IoC) в Spring?

Senior
СБЕРСБЕР
9

Что такое offset в Kafka? Как происходит смещение? Когда использовать ручной коммит vs автоматический?

Senior
DNSDNS
9

Как система понимала, что нужно пойти по одному пути или по другому? За что цеплялась при различении документов?

Senior
СБЕРСБЕР
9

Почему построение отчётности велось на PostgreSQL при нагрузке ~2000 RPS? Почему не использовалось OLAP-решение вместо OLTP для отчётности?

Senior
Сбербанк
9

Есть таблица со 100 миллионами записей. Нужно выбрать все записи, где value > 100. Какие рекомендации для минимизации времени выполнения запроса?

Senior
ТБанк
9

Что такое REST и чем он отличается от обычного HTTP API?

Senior
kode.ru
9

В чём разница между HashMap и ConcurrentHashMap?

Senior
ИП Ганус Александр Андреевич
9

Примитивное поле объекта — где будет лежать, в heap или в стеке?

Senior
SSP Soft
9
/714