1
Теоретический тест
Вопросы
1. Сколько IP-адресов в /32 подсети?
- 5
- 3 Ответ. 1
- 7
Вопросы
2. Для чего используется команда traceroute?
- Для измерения сетевой задержки Ответ. Для отслеживания пути пакетов до пункта назначения
- Для проверки разрешения DNS
- Для мониторинга использования полосы пропускания
Вопросы
3. Какая команда Linux используется для проверки использования диска?
- netstat
- top Ответ. df
- ps
Вопросы
4. Какой протокол не требует установления соединения?
- TCP Ответ. UDP
- HTTP
- FTP
Вопросы
5. Для чего используется "целевой уровень обслуживания" (SLO)?
- Определить максимально допустимое время простоя
- Измерить удовлетворенность клиентов Ответ. Определить внутренний уровень доступности системы/услуги
- Контролировать производительность сервера
Вопросы
6. Что из перечисленного является системой управления конфигурациями (CMS)?
Ответ
Ansible
- ssh
- kubectl Ответ. Salt (SaltStack)
Вопросы
7. Для чего пишут Postmortem в управлении инцидентами?
- Для назначения виновника инцидента Ответ. Для документирования инцидента и определения улучшений систем/услуг
- Для мониторинга производительности системы
- Для перезапуска неисправных служб
Вопросы
8. Какие существуют стратегии балансировки нагрузки?
Ответ
Round-Robin
- Md5 Ответ. Least connections
- Murmur3
Вопросы
9. У вас есть пять серверов в распределенной БД. От скольких серверов нужно получить ответ для кворума?
- 1
- 2 Ответ. 3
- 4
- 5
Вопросы
10. Какова цель структурированного ведения журнала (логирования)?
Ответ
Чтобы упростить разбор и анализ журналов.
- Чтобы зашифровать данные журнала.
- Чтобы уменьшить размер файла журнала.
- Чтобы сбалансировать хранение журнала.
Вопросы
11. Какова цель кворума в распределенных системах?
- Для обеспечения репликации данных на всех узлах. Ответ. Для достижения консенсуса среди большинства узлов.
- Для шифрования данных при передаче.
- Для балансировки нагрузки между узлами.
Вопросы
12. За что отвечает readiness-проба в Kubernetes (k8s)?
- Readiness-проба определяет, когда контейнер полностью инициализировался, чтобы начать проверки его работоспособности.
- Readiness-проба проверяет, жив ли контейнер, и если он не отвечает, Kubernetes перезапускает его. Ответ. Readiness-проба указывает, готов ли контейнер принимать трафик. Если проверка не проходит, Kubernetes исключает под из списка сервисов.
- Readiness-проба сообщает Kubernetes, что контейнер завершил свою работу и его можно удалить.
Вопросы
13. Какие из следующих утверждений верны относительно транзакций в реляционных базах данных?
- Транзакции могут содержать только один запрос. Ответ. Транзакции могут быть отменены и возвращены в предыдущее состояние (rollback).
- Все транзакции выполняются мгновенно и без ошибок.
- Транзакции не могут гарантировать целостность данных.
Вопросы
14. Какой командой в Git можно отменить изменения в рабочей директории, вернув файл к состоянию последнего коммита?
- git revert
Ответ. git restore - git undo
- git reset
Вопросы
15. Что такое первичный ключ в реляционной базе данных?
- Поле, которое может содержать дубликаты. Ответ. Поле, которое уникально идентифицирует каждую запись в таблице.
- Поле, которое предназначено только для хранения текстовых данных. Ответ. Поле, которое не может быть NULL.
Вопросы
16. Какую команду нужно использовать, чтобы показать разницу между рабочей директорией и последним коммитом?
- git status Ответ. git diff
- git changes
- git log
Вопросы
17. Что из перечисленного ниже верно в отношении центра сертификации (CA)?
- Он генерирует закрытые ключи для пользователей. Ответ. Он выдает и проверяет цифровые сертификаты.
- Он шифрует данные с помощью AES.
- Он используется для хеширования паролей.
Вопросы
18. Какова цель соли в хешировании паролей?
- Чтобы сделать пароль короче. Ответ. Чтобы добавить случайности и предотвратить атаки радужных таблиц.
- Чтобы восстановить исходный пароль при необходимости.
- Чтобы сгенерировать цифровую подпись.
Вопросы
19. На сервере заканчивается дисковое пространство. Какую команду вы бы использовали, чтобы найти самые большие файлы или каталоги?
- df -h Ответ. du -sh * | sort -rh
- ls -lh
- ps aux —sort=-%mem
Вопросы
20. Каково назначение файла /etc/fstab в Linux?
- Он хранит параметры конфигурации сети. Ответ. Он определяет, как монтируются разделы диска и устройства хранения.
- Он содержит информацию об учетной записи пользователя.
- Он регистрирует системные ошибки.
2
Лайвкодинг
21. Задача: Написать функцию countWord, которая считает, сколько раз слово "Rumpelstiltskin" можно собрать из букв переданной строки (регистр не важен, каждую букву можно использовать один раз).
func countWord(s string) int {
freq := make(map[rune]int)
lowerS := strings.ToLower(s)
for _, r := range lowerS {
if !unicode.IsSpace(r) {
freq[r]++
}
}
req := make(map[rune]int)
target := "rumpelstiltskin"
for _, r := range target {
if !unicode.IsSpace(r) {
req[r]++
}
}
minCount := len(s)
for k, want := range req {
if have, ok := freq[k]; ok {
if have/want <= minCount {
minCount = have / want
}
} else {
return 0
}
}
return minCount
}Дополнительно
Собеседование состоит из двух этапов: теоретического теста с выбором ответа и задачи на лайвкодинг. Вопросы в тесте выпадают случайно из пула.