Initial commit: interview prep repo (resume, legend, stack cases, Kubernetes course)
This commit is contained in:
22
stack/languages/CASE.md
Normal file
22
stack/languages/CASE.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# Кейс: вспомогательные языки (Python, SQL, C/C++)
|
||||
|
||||
> Заготовка. Статус: TODO — требует полной проработки по правилам [../../AI_GUIDELINES.md](../../AI_GUIDELINES.md). Эти технологии не имеют отдельной линии опыта в резюме — они вписаны в легенду как сквозные инструменты (см. [../../legend/LEGEND.md](../../legend/LEGEND.md), раздел «Технологии без прямого кейса в опыте работы»). Кейсы здесь должны конкретно привязываться к задачам из уже проработанных категорий, а не существовать отдельно.
|
||||
|
||||
## Python — автоматизация
|
||||
|
||||
- [ ] Написать реальный скрипт, который решает задачу из уже сделанных кейсов: например, скрипт на Python, который парсит логи Nginx из [../nginx/CASE.md](../nginx/CASE.md) и считает количество 5xx ответов, либо скрипт, дёргающий Prometheus HTTP API из [../monitoring/CASE.md](../monitoring/CASE.md) и печатающий текущее значение метрики.
|
||||
- [ ] Вопросы: разница списков и кортежей, GIL на базовом уровне, работа с виртуальным окружением (venv), как оформлен typical requirements.txt.
|
||||
|
||||
## SQL — работа с данными
|
||||
|
||||
- [ ] Поднять локально PostgreSQL/MySQL в Docker, создать простую таблицу (например, лог инцидентов: id, дата, сервис, описание), написать несколько реальных запросов: выборка с фильтром и сортировкой, `GROUP BY` с агрегатом (количество инцидентов по сервису), `JOIN` с таблицей сервисов.
|
||||
- [ ] Вопросы: разница INNER/LEFT JOIN, что такое индекс и когда он не помогает, разница WHERE и HAVING, что такое транзакция и ACID на базовом уровне.
|
||||
|
||||
## C/C++ — чтение кода
|
||||
|
||||
- [ ] Не писать production-код с нуля (не основной инструмент), но разобрать небольшой пример на C/C++ (например, простую программу с багом — segfault от null pointer или утечкой памяти) и показать, что кандидат может прочитать код, найти проблему и объяснить её словами — это то, что реально требовалось тестировщику embedded ПО в ОКБ СУХОЙ.
|
||||
- [ ] Вопросы: разница между стеком и кучей, что такое segmentation fault, зачем нужен valgrind/аналог, разница между указателем и ссылкой.
|
||||
|
||||
## Как это ложится в легенду
|
||||
|
||||
Все три языка — не основная специализация, а обвязка вокруг основных задач (мониторинг, тестирование embedded ПО). Кейсы должны это подчёркивать: не «я Python-разработчик», а «я писал скрипты на Python, чтобы автоматизировать конкретную рутину сопровождения».
|
||||
Reference in New Issue
Block a user