План v2 по диагностике (квиз 14/32) + 4 новые задачи (hash, heap, dijkstra, subnet) + тренажёр 60 карточек
This commit is contained in:
@@ -1,138 +1,167 @@
|
||||
# ИУП — интенсив 7 дней (фуллтайм, собеседование ≤ 1 неделя)
|
||||
|
||||
Срок: собеседование максимум через неделю, подготовка — фуллтайм (~8 ч/день).
|
||||
Цель интенсива: закрыть ровно то, что спросят на входе в Eltex (C/C++, базовые алгоритмы и
|
||||
структуры данных, Linux, L2/L3-сети, инструменты), и не утонуть в глубине.
|
||||
**Версия 2, 23.09** — пересобрана по результату диагностики (квиз 14/32).
|
||||
Срок: собеседование максимум через неделю, подготовка фуллтайм (~8 ч/день).
|
||||
Цель: закрыть ровно то, что спросят на входе в Eltex (C/C++, базовые алгоритмы и структуры
|
||||
данных, Linux, L2/L3-сети, инструменты), и не утонуть в глубине.
|
||||
|
||||
## Что показала диагностика (это и определило план)
|
||||
|
||||
| Домен | Результат | Вывод |
|
||||
|---|---|---|
|
||||
| C/C++ | 7/8 | сильная сторона, **времени почти не даём** |
|
||||
| Алгоритмы | **1/8** | провал: формальные свойства (сложности, условия применимости) |
|
||||
| Linux | 3/8 | пропущены fork/COW, epoll, mmap, waitpid — «не был уверен» |
|
||||
| Сети | 3/8 | пропущены числа и байты (14/4/62/TTL), порядок TCP-хендшейка |
|
||||
|
||||
Отдельно: из 32 вопросов **11 пропущены**, и это почти все «точные факты» — числа, байты,
|
||||
сложности. То есть база есть, а не хватает заученных формулировок и уверенности в них.
|
||||
Поэтому в плане появился ежедневный блок карточек (`facts_drill.py`), а C++ урезан:
|
||||
за него отвечает сильная сторона, забирать у неё часы смысла нет.
|
||||
|
||||
## Правила интенсива
|
||||
|
||||
1. Каждый день — три блока: **утро (3 ч) алгоритмы**, **день (3 ч) системное/язык**,
|
||||
**вечер (2 ч) практика + разбор**. Блок не начинается, пока не закрыта вчерашняя точка.
|
||||
1. Каждый день — три блока: **карточки (30 мин) → алгоритмы (3 ч) → системное (3 ч) →
|
||||
разбор и код (1,5 ч)**. Блок не начинается, пока не закрыта вчерашняя точка.
|
||||
2. День закрыт, только если: решены задачи дня **без подсказки**, написан/починен код дня,
|
||||
сделана **одна задача вслух на таймер** (10 мин: 2 мин на разбор + код + сложность).
|
||||
3. Всё пишем, а не читаем: теория — только под конкретную задачу, максимум 40 минут.
|
||||
4. Трекер: `/home/pi/eduplan/diag/submissions/` или файл у себя — что решено, где встал,
|
||||
сколько минут. Это вход для калибровки на следующий день.
|
||||
5. Что осознанно НЕ лезет в неделю: полноценное ядро (модуль+драйвер), электроника,
|
||||
Docker-продакшн. Ядро — обзорно на D6, электроника — после оффера (см. `PLAN.md`).
|
||||
6. Если день провален — не догоняем всё, а переносим хвост в D7 (день повтора) и режем
|
||||
второстепенное (M8-обзор, docker).
|
||||
сделана **одна задача вслух на таймер** (10 мин: разбор + код + сложность), заполнен
|
||||
трекер.
|
||||
3. Теория — только под конкретную задачу, максимум 40 минут. Всё остальное — код и разбор
|
||||
своих ошибок по трекеру.
|
||||
4. Требования по сложности, которые тест не ловит (например `heapify` за O(n)) — проверяю
|
||||
глазами по коду при разборе. Если делаешь «на оценку» не то, что заявлено, увижу.
|
||||
5. Что осознанно НЕ лезет в неделю: полноценное ядро (модуль+драйвер как продукт),
|
||||
электроника и схемотехника, Docker в продакшне. Ядро — обзорно на D6, электроника —
|
||||
после оффера (полный трек `PLAN.md`, модули M8–M9).
|
||||
6. Провалил день — не догоняю всё, переношу хвост в D7 и режу второстепенное (ядро, docker).
|
||||
|
||||
Материалы: cppreference (C и C++), man7.org (разделы 2/3/7), LKMPG, docs.kernel.org,
|
||||
OSTEP (главы про процессы/память), Beej's Guide to Network Programming, RFC 791/793,
|
||||
Wireshark wiki. Задачи: Codeforces с фильтром по тегам и рейтингу 800–1400
|
||||
(`https://codeforces.com/problemset?tags=two+pointers,800-1400` — менять тег),
|
||||
Яндекс Тренировки по алгоритмам (бесплатные контесты с разборами,
|
||||
`https://yandex.ru/yaintern/training/algorithm-training`), классика LeetCode — по названию
|
||||
(ссылки на leetcode.com открываются только в браузере).
|
||||
Материалы: cppreference (C и C++), man7.org (разделы 2/3/7), Beej's Guide to Network
|
||||
Programming, RFC 791/793, Wireshark wiki, OSTEP (процессы/память), LKMPG, docs.kernel.org.
|
||||
Задачи: Codeforces с фильтром по тегу и рейтингу 800–1400
|
||||
(`https://codeforces.com/problemset?tags=two+pointers,800-1400` — тег менять),
|
||||
Яндекс Тренировки по алгоритмам (`https://yandex.ru/yaintern/training/algorithm-training`),
|
||||
классика LeetCode — по названию (ссылки на leetcode.com открываются только в браузере).
|
||||
|
||||
## Пакет задач (каталог `diag/`)
|
||||
|
||||
- `01..09` — **диагностика**: битовые операции, список, ring buffer, IPv4-заголовок, НВП,
|
||||
потоки, epoll-сервер, bash по логу, разбор падения в gdb.
|
||||
- `10_hash`, `11_heap`, `12_dijkstra`, `13_subnet` — **добор под слабые домены**: своя
|
||||
хеш-таблица с открытой адресацией, куча (`heapify` за O(n), top-K), Дейкстра на
|
||||
`priority_queue`, арифметика подсетей.
|
||||
- `python3 grade.py` — все 13 с автопроверкой (ASAN/UBSAN); `python3 grade.py 10 13` —
|
||||
выборочно; `--fast` — без санитайзеров.
|
||||
- `python3 facts_drill.py` — 60 карточек «числа и факты» (algo 20, linux 14, net 14,
|
||||
c_cpp 12). Маркеры: `>=80%` ок, `50–79%` добор, `<50%` дыра.
|
||||
- Трекер дня: `TRACKER.md` в корне репозитория.
|
||||
|
||||
---
|
||||
|
||||
## D0 — 23.09, диагностика (3–4 ч)
|
||||
## D0 — 23.09, диагностика (квиз пройден, 14/32)
|
||||
|
||||
- Квиз: `python3 quiz.py` (или ответы строкой в чат), 32 вопроса, 4 домена.
|
||||
- Задачи: `python3 grade.py` — 9 задач с автопроверкой (ASAN/UBSAN).
|
||||
- Разбор промахов вместе со мной, калибровка: какие дни усилить, что срезать.
|
||||
- Квиз: **пройден** — 14/32, слабейшие домены: алгоритмы, Linux, сети (см. таблицу выше).
|
||||
- Осталось: `cd diag && python3 grade.py 01 02 03 04 05 06 07 08 09` — 9 практических задач.
|
||||
- Разбор промахов квиза вместе со мной, калибровка дней (уже сделана в этой версии плана).
|
||||
- **Точка:** есть `results_quiz.json` и `results_tasks.json`, названы 3 слабейших темы.
|
||||
|
||||
## D1 — 24.09: массивы/строки + память в C + процессы Linux
|
||||
## D1 — 24.09: инварианты сложности + хеш-таблицы | fork/COW/сигналы
|
||||
|
||||
- Утро (3 ч) — алгоритмы: два указателя, скользящее окно, префиксные суммы, бинарный
|
||||
поиск и `lower_bound` руками. Задачи: Two Sum, Valid Palindrome, Container With Most
|
||||
Water, Longest Substring Without Repeating Characters, Binary Search + 6–8 задач с
|
||||
Codeforces по тегам `two pointers` и `binary search`, рейтинг 800–1400.
|
||||
- День (3 ч) — C и память: указатели и арифметика, выравнивание и padding, UB
|
||||
(signed overflow, strict aliasing, неинициализированная память), malloc/free,
|
||||
переполнение буфера; сборка с `-Wall -Wextra -Werror -fsanitize=address,undefined`.
|
||||
Практика: переписать `tasks/01_bits` и `tasks/03_ring` на чистом C (без C++-обёрток),
|
||||
прогнать под санитайзерами.
|
||||
- Вечер (2 ч) — Linux: `fork/exec/wait`, зомби, сигналы, коды возврата. Практика: свой
|
||||
мини-шелл (fork + exec + wait, обработка `exit`) — это прямой вопрос на собеседовании.
|
||||
- **Точка:** 10+ задач решены; мини-шелл запускает `ls`/`cat`; ASAN чистый; лог дня.
|
||||
- Карточки (30 мин) — домен `algo`: бинарный поиск в 1e6, хеш O(1)/worst O(n), heapify O(n),
|
||||
устойчивость сортировок, Дейкстра и условие применимости.
|
||||
- Утро, алгоритмы (3 ч) — **формальные свойства, а не «умение решать»**: O-оценки и
|
||||
амортизация, хеш-таблицы (цепочки vs открытая адресация, загрузка, tombstone, worst O(n)),
|
||||
сортировки и устойчивость, бинарный поиск и `lower_bound` руками.
|
||||
Практика: **`tasks/10_hash`** — своя таблица на линейном зондировании; 6–8 задач
|
||||
Codeforces по тегам `hashing` и `sortings`, рейтинг 800–1400.
|
||||
- День, системное (3 ч) — Linux: `fork/exec/wait`, **COW-страницы**, зомби и `waitpid`,
|
||||
сигналы и коды возврата (137 = 128+9 SIGKILL, 139 = 128+11 SIGSEGV), `errno`.
|
||||
Практика: мини-шелл (fork + exec + wait + `exit` + пайплайн по желанию) — прямой вопрос
|
||||
на собеседовании; прогнать под ASAN.
|
||||
- Разбор и код (1,5 ч) — `tasks/01_bits` и `tasks/03_ring` **на чистом C** (без C++-обёрток),
|
||||
сборка `-Wall -Wextra -Werror -fsanitize=address,undefined`; одна задача вслух; трекер.
|
||||
- **Точка:** 10_hash PASS; мини-шелл запускает `ls`/`cat`; ASAN чистый; карточки `algo` ≥ 80%.
|
||||
|
||||
## D2 — 25.09: хеш-таблицы и сортировки + C++ (RAII, владение, STL) + git/Makefile
|
||||
## D2 — 25.09: деревья и куча | epoll и неблокирующие сокеты
|
||||
|
||||
- Утро (3 ч) — алгоритмы: хеш-таблицы и множества (коллизии, открытая адресация vs
|
||||
цепочки), сортировки и компараторы, stability. Задачи: Group Anagrams, Top K Frequent
|
||||
Elements, Two Sum II, Merge Intervals, Sort Colors + 6–8 задач с тегами `hashing`,
|
||||
`sortings`.
|
||||
- День (3 ч) — C++: RAII, правило 0/3/5, move-семантика и `std::move`, умные указатели
|
||||
(unique/shared/weak, циклы ссылок), контейнеры STL и итераторы, лямбды, исключения и
|
||||
гарантии безопасности. Практика: свой `unique_ptr` и свой `vector` (упрощённый), класс-
|
||||
владелец с правилом пяти; сборка с `-Werror`.
|
||||
- Вечер (2 ч) — git (ветки, rebase, конфликты, `bisect`) и сборка: Makefile руками, затем
|
||||
CMake для своих задач. Практика: репозиторий с 3 задачами, где сборка/тесты — одной
|
||||
командой.
|
||||
- **Точка:** мини-библиотека собирается с `-Werror`; git-сценарии (rebase, bisect) пройдены
|
||||
руками; 10+ задач.
|
||||
|
||||
## D3 — 26.09: списки/стек + многопоточность + gdb
|
||||
|
||||
- Утро (3 ч) — алгоритмы: связные списки (разворот, цикл Флойда, k-й с конца), стек/
|
||||
очередь/ring buffer, монотонный стек. Задачи: Reverse Linked List, Merge Two Sorted
|
||||
Lists, Linked List Cycle, Valid Parentheses, Daily Temperatures + 6–8 задач с тегами
|
||||
`linked list`, `stack`.
|
||||
- День (3 ч) — многопоточность: `std::thread`, mutex/`lock_guard`, `condition_variable`
|
||||
и predicate-цикл, атомики и `memory_order`, гонки, дедлоки, ложные пробуждения;
|
||||
паттерны producer/consumer и пул потоков. Практика: довести `tasks/06_threads` до
|
||||
продакшн-вида + написать пул потоков. TSan на этой машине недоступен (VMA) — проверяем
|
||||
инвариантами + ASAN, в логе это помечено.
|
||||
- Вечер (2 ч) — gdb: breakpoints, `watch`, `bt`, `frame`, отладка потоков, разбор
|
||||
падения. Практика: `tasks/09_gdb` + своё падение (переполнение буфера) с письменным
|
||||
разбором.
|
||||
- **Точка:** 10+ задач; пул потоков проходит счётчики 4×4×20k; падение разобрано в gdb
|
||||
письменно.
|
||||
|
||||
## D4 — 27.09: деревья/куча + Linux-системное (epoll) + L2/L3
|
||||
|
||||
- Утро (3 ч) — алгоритмы: бинарные деревья и BST, обходы (рекурсия и итерация), куча и
|
||||
`priority_queue`, heapify за O(n), top-K, LCA. Задачи: Invert Binary Tree, Validate
|
||||
Binary Search Tree, Binary Tree Level Order Traversal, Kth Largest Element, Lowest
|
||||
Common Ancestor + 6–8 задач с тегами `trees`, `heaps`.
|
||||
- День (3 ч) — Linux: файловый ввод-вывод (`open/read/write/lseek`), `mmap`,
|
||||
- Карточки (30 мин) — `algo`: heap insert O(log n), top-K, обходы деревьев, сложность DFS
|
||||
по памяти.
|
||||
- Утро, алгоритмы (3 ч) — бинарные деревья и BST: обходы рекурсией и итерацией,
|
||||
валидация BST, LCA; куча: **`heapify` снизу вверх за O(n)**, `priority_queue`, top-K,
|
||||
`nth_element`. Практика: **`tasks/11_heap`** + задачи Invert Binary Tree, Validate BST,
|
||||
Kth Largest Element, Top K Frequent Elements.
|
||||
- День, системное (3 ч) — Linux: файловый ввод-вывод (`open/read/write/lseek`), **`mmap`**,
|
||||
мультиплексирование `select → poll → epoll` (LT/ET), неблокирующие сокеты,
|
||||
`SO_REUSEADDR`, обработка `EAGAIN/EINTR`. Практика: `tasks/07_epoll` — эхо-сервер
|
||||
довести до вида «не падает под нагрузкой» + клиент, нагрузочный тест своими руками.
|
||||
- Вечер (2 ч) — сети L2/L3: OSI и TCP/IP, инкапсуляция, Ethernet (14 байт заголовка),
|
||||
MAC, ARP, VLAN 802.1Q, IPv4-заголовок и контрольная сумма, маски и подсети, ICMP.
|
||||
Практика: `tasks/04_ipv4` + два письменных разбора дампов (`tcpdump`: ARP-обмен и
|
||||
TCP-handshake).
|
||||
- **Точка:** сервер держит 3+ одновременных соединения и не течёт по дескрипторам;
|
||||
2 разбора дампов письменно; 10+ задач.
|
||||
`SO_REUSEADDR`, `EAGAIN`/`EINTR`. Практика: **`tasks/07_epoll`** — эхо-сервер держит
|
||||
нагрузку, плюс нагрузочный тест своими руками.
|
||||
- Разбор и код (1,5 ч) — C++ **ровно по промахам**: выравнивание и padding (sizeof 12),
|
||||
правило 0/3/5, virtual-деструктор, `std::move` как каст, UB — 45 минут, не больше;
|
||||
одна задача вслух; трекер.
|
||||
- **Точка:** 11_heap и 07_epoll PASS; сервер держит 3+ соединений и не течёт по дескрипторам;
|
||||
карточки `c_cpp` = 100%.
|
||||
|
||||
## D5 — 28.09: графы + TCP глубоко + bash/proc
|
||||
## D3 — 26.09: списки/стек | многопоточность и gdb
|
||||
|
||||
- Утро (3 ч) — алгоритмы: представления графа, BFS/DFS, топологическая сортировка,
|
||||
компоненты связности, Дейкстра (неотрицательные веса), union-find. Задачи: Number of
|
||||
Islands, Course Schedule, Clone Graph, Network Delay Time, Redundant Connection + 6–8
|
||||
задач с тегами `graphs`, `dfs and similar`, `dsu`.
|
||||
- День (3 ч) — сети глубже: TCP-автомат состояний, окно и подтверждения, ретрансмиссии и
|
||||
таймеры, закрытие соединения, UDP, порты, NAT, DNS/DHCP минимум; работа с
|
||||
- Карточки (30 мин) — `linux`: epoll O(1) против select O(n), mmap, waitpid, 137/139.
|
||||
- Утро, алгоритмы (3 ч) — связные списки (разворот, **цикл Флойда**, k-й с конца),
|
||||
стек/очередь/ring buffer, монотонный стек. Практика: `tasks/02_list`, `tasks/03_ring`
|
||||
(если ещё не сданы) + Valid Parentheses, Daily Temperatures, Reverse Linked List.
|
||||
- День, системное (3 ч) — многопоточность: `std::thread`, mutex/`lock_guard`,
|
||||
`condition_variable` и predicate-цикл, атомики и `memory_order`, гонки, дедлоки,
|
||||
ложные пробуждения; паттерны producer/consumer и пул потоков. Практика:
|
||||
`tasks/06_threads` до продакшн-вида + свой пул потоков. (TSan на этой машине может
|
||||
отвалиться по VMA — тогда инварианты + ASAN, в логе это помечено.)
|
||||
- Разбор и код (1,5 ч) — gdb: breakpoints, `watch`, `bt`, `frame`, отладка потоков;
|
||||
`tasks/09_gdb` + **своё падение** с письменным разбором; одна задача вслух; трекер.
|
||||
- **Точка:** пул потоков проходит счётчики 4×4×20k; падение разобрано письменно;
|
||||
карточки `linux` ≥ 80%.
|
||||
|
||||
## D4 — 27.09: графы | L2/L3 и подсети
|
||||
|
||||
- Карточки (30 мин) — `net`: 14 байт Ethernet, VLAN +4, /26 = 62, TTL, SYN/SYN-ACK/ACK.
|
||||
- Утро, алгоритмы (3 ч) — графы: представления, BFS/DFS, топологическая сортировка
|
||||
(только для DAG), компоненты связности, **Дейкстра (веса ≥ 0)**, union-find.
|
||||
Практика: **`tasks/12_dijkstra`** + Number of Islands, Course Schedule, Network Delay
|
||||
Time, Redundant Connection + 6–8 задач с тегами `graphs`, `dsu`.
|
||||
- День, системное (3 ч) — сети L2/L3: OSI и TCP/IP, инкапсуляция, Ethernet (14 байт),
|
||||
MAC, ARP, VLAN 802.1Q (+4 байта), IPv4-заголовок (20 байт) и контрольная сумма, **TTL**,
|
||||
маски и подсети, ICMP. Практика: `tasks/04_ipv4` + **`tasks/13_subnet`** + два письменных
|
||||
разбора дампов (`tcpdump`: ARP-обмен и TCP-handshake).
|
||||
- Разбор и код (1,5 ч) — задача вслух (граф или подсеть); разбор промахов дня; трекер.
|
||||
- **Точка:** 12_dijkstra и 13_subnet PASS; 2 разбора дампов письменно; карточки `net` ≥ 80%.
|
||||
|
||||
## D5 — 28.09: ДП | TCP глубоко, bash и /proc
|
||||
|
||||
- Карточки (30 мин) — `net` + `c_cpp` (20 байт IPv4/TCP, MTU 1500, DNS 53, ASAN/UBSAN).
|
||||
- Утро, алгоритмы (3 ч) — ДП: состояния и переходы, рюкзак 0/1, **НВП за O(n log n)**,
|
||||
строки (Edit Distance, Word Break). Практика: `tasks/05_lis` + Climbing Stairs,
|
||||
House Robber, Coin Change, Edit Distance + 5–6 задач с тегом `dp`.
|
||||
- День, системное (3 ч) — TCP глубоко: автомат состояний, окно и подтверждения,
|
||||
ретрансмиссии и таймеры, закрытие, UDP, порты, NAT, DNS/DHCP минимум; работа с
|
||||
`tcpdump`/Wireshark. Практика: 3 письменных разбора дампов (ретрансмиссия, ICMP
|
||||
unreachable, DNS) + свой захват трафика своей же программой.
|
||||
- Вечер (2 ч) — Linux-быт: `/proc`, `ulimit`, systemd-юниты обзорно; bash (пайплайны,
|
||||
`set -euo pipefail`, awk/sed для логов). Практика: `tasks/08_bash` + свой скрипт
|
||||
диагностики сети/логов.
|
||||
- **Точка:** 8+ задач; 3 разбора дампов; скрипт работает на логе в 100k строк за секунды.
|
||||
unreachable, DNS) + захват трафика своей программой.
|
||||
- Разбор и код (1,5 ч) — bash и Linux-быт: пайплайны, `set -euo pipefail`, awk/sed,
|
||||
`/proc`, `ulimit`; `tasks/08_bash` (лог в 1e6 строк — только awk/sort, не bash-цикл);
|
||||
одна задача вслух; трекер.
|
||||
- **Точка:** 05_lis и 08_bash PASS; 3 разбора дампов; скрипт держит лог 100k строк за секунды.
|
||||
|
||||
## D6 — 29.09: ДП + ядро/embedded обзорно + docker + резюме
|
||||
## D6 — 29.09: закрытие слабых мест | ядро обзорно, docker, резюме
|
||||
|
||||
- Утро (3 ч) — алгоритмы: ДП — состояния и переходы, рюкзак, LIS за O(n log n), строковые
|
||||
задачи. Задачи: Climbing Stairs, House Robber, Coin Change, Longest Increasing
|
||||
Subsequence, Edit Distance, Word Break + 5–6 задач с тегом `dp`, рейтинг 800–1400.
|
||||
- День (3 ч) — ядро и embedded обзорно: модуль ядра (сборка, insmod/rmmod, printk,
|
||||
параметры, `/proc`), символьный драйвер (`file_operations`), device tree и cross-compile
|
||||
— по касательной, ровно чтобы отвечать словами. Практика: hello-модуль + простейший
|
||||
символьный драйвер (в QEMU, если на этой машине сборка не встанет).
|
||||
- Вечер (2 ч) — docker (образ под сборку/тесты) и **резюме + сопроводительное под Eltex**
|
||||
(учесть: рассматривают офисный формат).
|
||||
- **Точка:** модуль грузится/выгружается; черновик резюме отревьюен.
|
||||
- Карточки (30 мин) — все домены, полный прогон 60 карточек.
|
||||
- Утро, алгоритмы (3 ч) — **только слабые места по трекеру**: добить `10..13` до PASS,
|
||||
повторить hash/BST/heap/Дейкстра/ДП там, где были FAIL или «не знаю».
|
||||
- День, системное (3 ч) — ядро и embedded **обзорно**: модуль (сборка, insmod/rmmod,
|
||||
printk, параметры, `/proc`), символьный драйвер (`file_operations`), device tree,
|
||||
cross-compile, uboot/bringup — ровно чтобы отвечать словами; docker (образ под
|
||||
сборку/тесты) — 45 минут.
|
||||
- Разбор и код (1,5 ч) — **резюме + сопроводительное под Eltex** (учесть офисный формат),
|
||||
вопросы работодателю, легенда по опыту.
|
||||
- **Точка:** все 13 задач PASS; карточки ≥ 80% во всех доменах; резюме готово к отправке.
|
||||
|
||||
## D7 — 30.09: повтор, два мок-интервью, выход
|
||||
## D7 — 30.09: повтор и два мок-интервью
|
||||
|
||||
- 2 ч — утренний повтор: только слабые места из трекера (не всё подряд).
|
||||
- 3 ч — мок-интервью №1: алгоритмы, 2 задачи вслух с таймером, я веду и разбираю.
|
||||
- 2 ч — мок-интервью №2: C/C++ + Linux + сети (вопросы по кругу, включая разбор дампа).
|
||||
- 2 ч — повтор: только карточки с промахами и слабые темы из трекера.
|
||||
- 3 ч — мок-интервью №1: алгоритмы, 2 задачи вслух с таймером (я веду и разбираю).
|
||||
- 2 ч — мок-интервью №2: C/C++ + Linux + сети, включая разбор дампа.
|
||||
- 1 ч — вопросы работодателю, легенда по опыту, финальная вычитка резюме.
|
||||
- **Точка:** ≤ 1 грубая ошибка на сессию; резюме и сопроводительное готовы.
|
||||
|
||||
@@ -142,4 +171,4 @@ Wireshark wiki. Задачи: Codeforces с фильтром по тегам и
|
||||
|
||||
Незакрытое (полный трек `PLAN.md`): M2 хвост (битовые/строковые алгоритмы, математика),
|
||||
M6 глубина (STP, маршрутизация, HTTP), M7 полностью (Docker в бою, bisect на реальном
|
||||
репозитории), M8 ядро (полноценный драйвер, uboot/bringup), M9 электроника.
|
||||
репозитории), M8 ядро (полноценный драйвер, uboot/bringup), M9 электроника и схемотехника.
|
||||
|
||||
Reference in New Issue
Block a user