План подготовки под эту вакансию
О вакансии
MySQLPostgreSQLJavaScriptPythonPHPRuby
Вопросы и ответы30
Подобраны под навыки и направление этой вакансии. Сначала ответьте вслух, затем раскройте полный разбор.
Полный разбор и частые ошибки — в тарифах Jobs и Boost
ТарифыPostgreSQL · 5
- В чём разница между EXPLAIN, EXPLAIN ANALYZE и EXPLAIN (ANALYZE, BUFFERS)? Почему BUFFERS важен?PostgreSQL· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Какие типы индексов есть в Postgres (B-tree, Hash, GIN, GiST, BRIN, SP-GiST) и когда какой использовать?PostgreSQL· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Какие уровни изоляции есть и чем отличаются (READ COMMITTED, REPEATABLE READ, SERIALIZABLE)? Какой по умолчанию в Postgres?PostgreSQL· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Каковы типы индексов в PostgreSQL (B-tree, Hash, GIN, GiST, BRIN)?PostgreSQL· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Чем CREATE INDEX отличается от CREATE INDEX CONCURRENTLY? Почему в проде почти всегда нужен второй?PostgreSQL· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
JavaScript · 5
- Для каких задач JavaScript является сильным выбором, а где лучше честно выбрать другой язык?JavaScript· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Как защититься от XSS в браузерном приложении? Где помогают CSP, escaping и Trusted Types?JavaScript· Middle· спрашивают почти всегда
- Объясните понятие closure в JavaScript. Как closure может вызвать утечку памяти?JavaScript· Middle· спрашивают почти всегда
- Что такое async/await и как это связано с Promise под капотом?JavaScript· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое Promise? Чем они отличаются от callback'ов?JavaScript· Middle· спрашивают почти всегда
PHP · 5
- Для каких задач PHP является сильным выбором, а где лучше честно выбрать другой язык?PHP· Middle· спрашивают почти всегда
- Как предотвратить SQL injection в PHP?PHP· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- В чём разница между
null,falseи0в булевом контексте в PHP?PHP· Middle· полный разбор — Jobs/Boost
Python · 5
- Для каких задач Python является сильным выбором, а где лучше честно выбрать другой язык?Python· Middle· спрашивают почти всегда
- Зачем нужен ASGI и почему WSGI недостаточно для async-приложений?Python· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Зачем нужны mypy или pyright?Python· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Как GIL влияет на CPU-bound и I/O-bound задачи?Python· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Как Python обрабатывает изменяемые аргументы по умолчанию и в чём типичная ошибка?Python· Middle· спрашивают почти всегда
Ruby · 5
- Для каких задач Ruby является сильным выбором, а где лучше честно выбрать другой язык?Ruby· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- В чём различия между Ruby 2.x и Ruby 3.x (pattern matching, rightward assignment, Ractors)?Ruby· Middle· полный разбор — Jobs/Boost
- В чём разница между
cloneиdupв Ruby?Ruby· Middle - В чём разница между
include,extendиprependв Ruby?Ruby· Middle· полный разбор — Jobs/Boost
MySQL · 5
- Как делать backup/restore и point-in-time recovery через binary logs?MySQL· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- Что такое индексы в MySQL и каковы их разновидности (B-tree, full-text, spatial)?MySQL· Middle· спрашивают почти всегда
- Что такое свойства ACID и как InnoDB их реализует?MySQL· Middle· спрашивают почти всегда
- Что такое транзакции в MySQL и как их использовать?MySQL· Middle· спрашивают почти всегда· полный разбор — Jobs/Boost
- В чём разница между оптимистичной и пессимистичной блокировкой?MySQL· Middle· полный разбор — Jobs/Boost