⁉️Вопросы с собеседований
Я стараюсь следить за трендами на рынке, в том числе при помощи собеседований. Вопросы, которые задают соискателям, ярко отражают портрет идеального кандидата в контексте сегодняшнего дня. А последние пару недель я и сама активно проходила интервью. Ниже подготовила подборку самых попсовых и интересных вопросов.👇
📚 Общая теория 1. Что такое CI/CD? Где заканчивается CI и начинается CD? 2. Чем CDL отличается от CDP, когда какой подход использовать? 3. Чем контейнеризация отличается от виртуализации? 4. Что такое канареечный и blue-green деплои? 5. *Как реализовать zero-downtime deploy? 6. *Назовите четыре золотых сигнала?
🐧 Linux
📁 Файловая система 1. Что такое индексные дескрипторы и какую информацию они содержат? 2. Что такое лимиты и какими они бывают? 3. Разница между hard link и soft link? 4. Как посмотреть открытые файлы? 5. Что происходит при удалении файла, если он открыт другим процессом? 6. Какие типы файлов в Linux вы знаете? 7. Какие права должны быть у файла, чтобы его удалить? (вопрос с подвохом)
⚙️ Процессы 1. Какой процесс в Linux имеет первый PID? 2. Что такое системные вызовы? 3. Как отследить системные вызовы работающей программы? 4. Что такое systemd? 5. Что такое load average? 6. В каких состояниях могут находиться процессы? По каким причинам процесс может находиться в статусе D (uninterruptible sleep)? 7. Что такое зомби-процесс и чем он опасен?
🌐 Сеть 1. Что такое iptables? 2. Как посмотреть открытые порты? 3. Как проверить настройки сетевого интерфейса? 4. Можно ли изменить SSH-порт? Как? 5. Что такое SSH-туннель? 6. *За что отвечает протокол ARP?
🖥️ Bash 1. Что делает пайп? 2. Что возвращает переменная "$?" ? 3. В каких ситуациях может пригодиться xargs? 4. Что произойдёт при выполнении export env=test? 5. Что произойдёт при выполнении source ~/.bashrc? В каких ситуациях использовать? 6. Что делает этот однострочник и каков будет результат? kubectl get po | awk 'NR != 1 { print $1 }' | xargs -n1 kubectl delete po && echo "done" || echo "no pods"
🖼️ Kubernetes 1. Назовите компоненты control plane и worker нод? 2. Какой компонент запускает контейнеры и управляет их жизненным циклом? 3. Где хранится вся информация о кластере? 4. Чем pod отличается от контейнера? 5. Что такое sidecar и init контейнеры и чем отличаются? 6. Какова разница между PV и PVC? 7. Чем DaemonSet отличается от StatefulSet? 8. Что такое limits и requests? 9. Что происходит, если pod упирается в лимиты по CPU и памяти? 10. Какие есть QoS классы? 11. Какие есть пробы и за что они отвечают? 12. Что такое tolerations и taints? 13. Назовите причины, по которым может не запланировать под? 14. Какова разница между delete и rollout? 15. Что произойдёт, если удалить namespace, в котором висят finalizer’ы? 16. *Как работает VPA и HPA?
🖼️ Docker 1. Чем Dockerfile отличается от образа? 2. Чем отличаются команды COPY и ADD? 3. Чем отличаются команды CMD и ENTRYPOINT? 4. Что такое слои? 5. Что происходит с образом, когда на его базе запускается контейнер? Изменяется ли он? 6. Перечислите практики оптимизации сборки образа (минимум 4). 7. Как вытащить файл из остановленного контейнера, не запуская его? 8. *Как передать пароли/секреты в Dockerfile во время сборки?
Есть еще много специфичных тем, которые варьируются от вакансии к вакансии, но при этом есть общий набор, перечисленный выше 🙂 Собираю свою личную коллекцию вопросов для тех интервью, которые провожу. Если у вас есть классные, нестандартные вопросы - присылайте! 😎