Files
resume/stack/languages/CASE.md

3.6 KiB
Raw Blame History

Кейс: вспомогательные языки (Python, SQL, C/C++)

Заготовка. Статус: TODO — требует полной проработки по правилам ../../AI_GUIDELINES.md. Эти технологии не имеют отдельной линии опыта в резюме — они вписаны в легенду как сквозные инструменты (см. ../../legend/LEGEND.md, раздел «Технологии без прямого кейса в опыте работы»). Кейсы здесь должны конкретно привязываться к задачам из уже проработанных категорий, а не существовать отдельно.

Python — автоматизация

  • Написать реальный скрипт, который решает задачу из уже сделанных кейсов: например, скрипт на Python, который парсит логи Nginx из ../nginx/CASE.md и считает количество 5xx ответов, либо скрипт, дёргающий Prometheus HTTP API из ../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, чтобы автоматизировать конкретную рутину сопровождения».