Зачем это нужно
Why did you choose Kafka over RabbitMQ?, Why PostgreSQL and not MongoDB?, How would you approach this? Такие вопросы проверяют, понимаешь ли ты компромиссы. На английском важно не только знать ответ, но и звучать взвешенно: без «это лучше, потому что лучше».
Схема ответа
- Задача и ограничения: We needed ... and the main constraint was ...
- Варианты: We considered two options: A and B.
- Компромисс: A gives us ..., but at the cost of ... B is ..., however ...
- Решение и почему: We went with A because ...
- Чем пожертвовали и как это закрыли: The downside was ..., so we ...
Язык компромиссов
- trade-off: компромисс. The main trade-off here is consistency versus latency.
- at the cost of: ценой. Faster reads at the cost of more storage.
- pros and cons / upsides and downsides.
- It depends on ... (только с продолжением: на чём именно).
- That's overkill for ...: это избыточно для ...
- It doesn't scale well beyond ...
- It's a good fit for ... / It's not a good fit because ...
- We went with ... / We ended up choosing ... / We opted for ...
Смягчение и уверенность
На английском категоричность звучит резче, чем на русском. «Mongo is bad» на собесе прозвучит незрело. Используй смягчение:
- I'd lean towards ... (я бы склонялся к ...)
- In my experience ...
- I'd probably go with ..., unless ...
- That's a fair point, but ... (когда интервьюер возражает)
Но и не утопай в оговорках: после «it depends» обязательно дай вывод.
Сравнение
- X is faster than Y, X is more reliable than Y, X is much simpler.
- X is not as flexible as Y.
- The bigger the dataset, the more it matters.
Ошибка русскоязычных: more faster, more simple. Односложные прилагательные получают -er, длинные more.
Частые ошибки
- «It depends» без продолжения. Звучит как уход от ответа.
- «Because it's popular / modern». Это не аргумент.
- «We choosed». Прошедшее от choose это chose.
- «Kafka is more better». Двойное сравнение.
- Спорить с интервьюером резко. Лучше I see your point. In our case, though, ...
Что спросят на собесе
- Why did you choose X over Y?
- What are the trade-offs of this approach?
- What would you do if the load grew ten times?
- What would make you change this decision?
- How would you explain this to a non-technical stakeholder?