При работе с highload: меньше аллокаций или лучше читаемость кода?
Technical Writer
SQL или NoSQL? Когда что выбираешь? Нужны ли миграции для MongoDB?
Объясни что такое интерфейс на уровне junior разработчика
Сервис медленно потребляет память. Как локализовать проблему?
Что такое race condition (состояние гонки)?
Были ли случаи, когда намеренно не использовал горутины, хотя мог? Почему?
public class Main { public static void main(String[] args) { Integer a = 127; Integer b = 127; Integer c = 128; Integer d = 128; System.out.println(a == b); System.out.println(c == d); } } package main import "fmt" func main() { x := 1 defer func() { fmt.Println("defer:", x) }() x = 2 fmt.Println("now:", x) }
Система оплаты с помощью телефона Необходимо реализовать архитектуру, где клиент может оплачивать покупки на кассе/КСО (касса самообслуживания) с помощью мобильного приложения. Оплата происходит НЕ по СБП. Пользователь покупая товары, выбирает оплатить с помощью приложения. Касса или КСО должны определить пользователя и запускается процесс оплаты с помощью банка клиента. СJM: - Кассир/клиент сканирует товары. - Переходит к оплате. - Идентифицируется на кассе/КСО. - Выбирает оплатить в приложении Магнит. - Переходит в приложение Магнит. - Выбирает установленный на телефоне банк с которого происходит оплата. - В приложении банка оплачивает покупку. - Возвращается на экран результата оплаты в приложении Магнит. - На кассе/КСО получает сообщение об успешной оплате. Нефункциональные требования: - DAU = 1000 в магазине - Кол-во магазинов 500 - Количество касс - 5 касс в среднем. - Оплата должна происходить за максимум 2 минуты. - Страница оплаты должна открываться максимум 250мс.
Расскажи про один интересный кейс в твоей последней компании, вокруг чего сейчас bottleneck?
Расскажи вкратце о себе.
Какие слои видишь в приложении? Как между ними происходит общение?
public class Main { public static void main(String[] args) { Integer a = 127; Integer b = 127; Integer c = 128; Integer d = 128; System.out.println(a == b); System.out.println(c == d); } }
Какие паттерны подходят для валидации данных, создания объекта и выбора платежного метода?
Система оплаты с помощью телефона Необходимо реализовать архитектуру, где клиент может оплачивать покупки на кассе/КСО (касса самообслуживания) с помощью мобильного приложения. Оплата происходит НЕ по СБП. Пользователь покупая товары, выбирает оплатить с помощью приложения. Касса или КСО должны определить пользователя и запускается процесс оплаты с помощью банка клиента. СЦМ: - Кассир/клиент сканирует товары. - Переходит к оплате. - Идентифицируется на кассе/КСО. - Выбирает оплатить в приложении Магнит. - Переходит в приложение Магнит. - Выбирает установленный на телефоне банк с которого происходит оплата. - В приложении банка оплачивает покупку. - Возвращается на экран результата оплаты в приложении Магнит. - На кассе/КСО получает сообщение об успешной оплате. Нефункциональные требования: - DAU = 1000 в магазине - Кол-во магазинов 500 - Количество касс - 5 касс в среднем. - Оплата должна происходить за максимум 2 минуты. - Страница оплаты должна открываться максимум 250мс.
По каким причинам микросервис может не масштабироваться?
Как проверить целостность данных в webhook? Как защитить данные на уровне транспорта?
Какие подходы используешь для построения сервиса? Назови основные факторы из 12-factor app
Расскажи про распределенные транзакции. В чем разница между оркестрацией и хореографией?
Какие есть разновидности exception в Java и чем они отличаются?
Как выбираешь структуру проекта на Go?