Что именно тюнил в Kafka? Какие конкретные параметры настраивал?
Что будешь делать, если задеплоил что-то и всё упало — алармы, непонятно что происходит?
Что такое feature lead и какой у тебя был опыт в этой роли?
В Redis есть два механизма персистентности (RDB и AOF) — смотрел ли в эту сторону для уменьшения окна потерь данных?
Расскажи про уровни изоляции транзакций в БД.
Чем хотел бы заниматься на новом месте? Что значит для тебя участие в архитектурных решениях?
Как у вас был устроен мониторинг? Приходилось ли создавать кастомные метрики и алерты?
Как вы обычно маппите объекты из entity в DTO и обратно?
Было ли code review в команде?
Есть бэкенд, есть юай. Стек стандартный: Java, Spring, React, Postgres. Задача: Спроектировать рест-эндпоинт в котором надо взять данные из 3 источников и отдать на ui, при этом необходимо обеспечить максимально возможную пропускную способность и минимально возможное время отклика (критерии макс\мин исходя из наших конкретных условий, т.к. по сути, у нас тут нет серебряной пули и надо найти некий компромисс). Известно, что ожидаемый пиковый rps на этот рест-эндпоинт будет равен 200. Известные детали по источникам: 1 источник - наша бд, запрос около 15 сек. 2 источник - смежный сервис рест, деградирует до 2 минут при 100 rps на него, в норм режиме ответ отдает за 5 сек. Мы не можем как-то изменить поведение этого источника на их стороне. 3 источник - смежный сервис рест, рандомно (каких-либо паттернов такого поведения не удалось выяснить) отдает 503, в норм режиме ответ приходит за 10 сек. Мы не можем как-то изменить поведение этого источника на их стороне.
Что выведет данный тест? @Test public void test50() { List<Integer> numbers = List.of(1, 2, 3, 4, 5); numbers.stream() .map(x -> { System.out.println(x); return x; }) .filter(x -> x > 2) .map(x -> { System.out.println(x); return x; }) .toList(); } }
Прочитайте код и подсчитайте ошибки ```java @Component public class AuthorSearchService { @Autowired private AuthorRepository authorRepository; @Autowired private StatisticsRepository statisticsRepository; private AlertRestClient arc = new AlertRestClient(); // В query может быть как полностью ввд, так и часть имени, например "Вадим Павло" или "павло" @Transactional public List<Author> search(String query) { List<Author> authors = authorRepository.findByNameContainingIgnoreCase(query); Statistics s = statisticsRepository.findById(query).orElse(null); if (s == null) s = new Statistics(query); s.setNumbers(s.getNumbers() + 1); statisticsRepository.save(s); if (s.getNumbers() > 1000 && authors.size() > 1000) { System.out.println("too popular search with too much data, sending an alert..."); arc.send(query, s.getNumbers(), authors.size()); } return authors; } } @Entity @Data public class Author { @Id @GeneratedValue private Long id; private String name; @OneToMany(mappedBy = "author") private List<Book> books; public Author(String name) { this.name = name; } } ```
Что такое под (Pod), Deployment и Deployment Config в Kubernetes/OpenShift? В чём разница?
Как у вас процессы разработки были построены на предыдущем месте работы? Как задачи поступали?
Что такое Sidecar паттерн и для чего он используется?
Какая у вас неформальная роль в рабочем коллективе?
Расскажите о вашем опыте работы: компании, проекты, технологии
Как создаются бины в Spring, что такое Dependency Injection и зачем оно нужно?
if (Boolean.TRUE.equals(bool)) { // check first key String firstKey = keys.iterator().next(); if (firstKey == "public") { keys.stream().forEach(key -> { // ... some logic log.warn("Using key " + key); }); } } public BookStoreController(BooksRepository repo, Boolean bool, List<String> keys) { this.repo = repo; if (Boolean.TRUE.equals(bool)) { // check first key String firstKey = (String) ((ArrayList) keys).get(0); if (firstKey == "public") { keys.stream().forEach(key -> { // ... some logic log.warn("Using key " + key); }); } } }
Дано: CREATE TABLE profile ( id BIGSERIAL PRIMARY KEY, nickname VARCHAR, registered_at TIMESTAMP ); CREATE TABLE post ( id BIGSERIAL PRIMARY KEY, owner_id BIGINT REFERENCES profile (id), body TEXT, inserted_at TIMESTAMP, likes_count INT -- кол-во лайков ); CREATE TABLE subscription_count ( profile_id BIGINT REFERENCES profile (id) UNIQUE, followers_count INT, -- кол-во подписчиков following_count INT -- кол-во подписок ); Требуется: Выбрать все посты, опубликованные пользователями, у которых количество подписчиков больше 500