Мировоззрение
- Нет сложных проблем. Просто отсутствует информация о том, как работает система
- Помните, что ошибка возникает по логической причине
- Будьте необоснованно уверены в своей способности исправить ошибку
- Чем сложнее будет баг, который вы исправите, тем лучше вы будете
- Каждая ошибка — это возможность узнать что-то новое
Поиск первопричины
- Постарайтесь воспроизвести проблему
- Можете ли вы воспроизвести это из командной строки?
- Другим людям легче воспроизвести проблему
- Легче проверить исправление
- Можете ли вы воспроизвести это из командной строки?
- Есть ли логи? Что за сообщение об ошибке?
- Прочтите описание ошибки. Каждое его слово. Дважды.
- Есть ли где-нибудь опечатка (командная строка / конфигурация / код)?
- Изолируйте проблему
- Удалите некоторые части системы и попробуйте воспроизвести ошибку
- Меняйте одно за раз, сохраняя все остальное постоянным
Проблема все еще не устранена? Чек-лист
- Постарайтесь решать сложные проблемы утром на свежую голову и без отвлечения (решите её перед тем, как вы просмотрите: почту, чат, тикет-систему, мониторинг)
- У вас несколько проблем? Сначала попробуйте решить основную проблему (например, ssh-соединение, которое разрывается каждую минуту)
- Это действительно проблема или просто недоразумение (работает как положено?)
- Есть ли функция/политика безопасности, которая блокирует вашу работу?
- Найдите стабильную среду отладки
- Проблема возникает только на одном сервере? То же самое работает где-то еще?
- Какая разница? Проверьте!
- Когда впервые возникла проблема? Что изменилось?
- Можете ли вы увеличить журнал логов?
- Сделайте некоторые проверки на вменяемость
- Вы на той виртуальной машине?
- Можете ли вы пропинговать хост?
- DNS все еще работает?
- Проверьте сетевой трафик с помощью ngrep/tcpdump. Вы видите то, что ожидаете?
- Один из дисков полон?
- Вы редактируете нужный файл?
- Напишите мусор и попробуйте скомпилировать и проверить синтаксис
- Проверить систему мониторинга
- Есть ли проблемы с другими виртуальными машинами заказчика?
- Есть ли проблемы у других виртуальных машин, работающих на том же гипервизоре?
- Не работает весь центр обработки данных?
- Клиент авторизован в системе? Что он делает (проверьте bash_history и ps -u)
Через некоторое время отладки
- Заставьте себя выразить проблему легко и понятно, чтобы ее поняла даже бабушка.
- Будьте терпеливы и примите тот факт, что все занимает больше времени, чем ожидалось.
- Попытайтесь понять, что происходит. Не с помощью бесконечных проб и ошибок
- Есть ли документация, которая поможет вам разобраться в системе?
- Поговорите с другими людьми, которые знают систему лучше, чем вы
- Сделайте перерыв (прогуляйтесь, сделайте зарядку, сделайте глубокий вдох, выпейте воды, съешьте фрукты)
- Вернемся к началу: в чем проблема? В чем причина проблемы? Какую цель вы пытаетесь достичь?
- У вас нет времени и вы зациклились на каких-то несвязанных деталях?
- Используйте другой подход для решения вашей актуальной проблемы
Если вы копируете код из Stackoverflow
- Не копируйте код из Stackoverflow, не понимая реальной проблемы
- Не копируйте код из Stackoverflow, не понимая предлагаемого решения
- Если у вас нет на это сейчас времени => запишите это решение (даже когда вы уже разберетесь с проблемой)
- Если вы не знаете, что делает команда или инструмент, прочтите документацию (https://explainshell.com)
- Не копируйте команды/код. Пишите самостоятельно
После решения проблемы
- Отличная работа! Я рад, что ты не сдался!
- Что вы узнали для себя?
- Какие предположения были неправильные?
- Как вы можете решить подобную проблему в будущем еще быстрее?
- Первая в России серийная система управления двухтопливным двигателем с функциональным разделением контроллеров
- В современном автомобиле строк кода больше чем…
- Бесплатные онлайн-курсы по Automotive, Aerospace, робототехнике и инженерии (50+)
- McKinsey: переосмысляем софт и архитектуру электроники в automotive
Вакансии для тестировщиков
НПП ИТЭЛМА всегда рада молодым специалистам, выпускникам автомобильных, технических вузов, а также физико-математических факультетов любых других высших учебных заведений.
У вас будет возможность разрабатывать софт разного уровня, тестировать, запускать в производство и видеть в действии готовые автомобильные изделия, к созданию которых вы приложили руку.
В компании организован специальный испытательный центр, дающий возможность проводить исследования в области управления ДВС, в том числе и в составе автомобиля. Испытательная лаборатория включает моторные боксы, барабанные стенды, температурную и климатическую установки, вибрационный стенд, камеру соляного тумана, рентгеновскую установку и другое специализированное оборудование.
Если вам интересно попробовать свои силы в решении тех задач, которые у нас есть, пишите в личку.
У вас будет возможность разрабатывать софт разного уровня, тестировать, запускать в производство и видеть в действии готовые автомобильные изделия, к созданию которых вы приложили руку.
В компании организован специальный испытательный центр, дающий возможность проводить исследования в области управления ДВС, в том числе и в составе автомобиля. Испытательная лаборатория включает моторные боксы, барабанные стенды, температурную и климатическую установки, вибрационный стенд, камеру соляного тумана, рентгеновскую установку и другое специализированное оборудование.
Если вам интересно попробовать свои силы в решении тех задач, которые у нас есть, пишите в личку.
- Руководитель группы калибровки
- Руководитель группы функциональных испытаний
- Ведущий тестировщик встроенного ПО микроконтроллеров
- Старший тестировщик ПО
О компании ИТЭЛМА
Мы большая компания-разработчик automotive компонентов. В компании трудится около 2500 сотрудников, в том числе 650 инженеров.
Мы, пожалуй, самый сильный в России центр компетенций по разработке автомобильной электроники. Сейчас активно растем и открыли много вакансий (порядка 30, в том числе в регионах), таких как инженер-программист, инженер-конструктор, ведущий инженер-разработчик (DSP-программист) и др.
У нас много интересных задач от автопроизводителей и концернов, двигающих индустрию. Если хотите расти, как специалист, и учиться у лучших, будем рады видеть вас в нашей команде. Также мы готовы делиться экспертизой, самым важным что происходит в automotive. Задавайте нам любые вопросы, ответим, пообсуждаем.
Мы, пожалуй, самый сильный в России центр компетенций по разработке автомобильной электроники. Сейчас активно растем и открыли много вакансий (порядка 30, в том числе в регионах), таких как инженер-программист, инженер-конструктор, ведущий инженер-разработчик (DSP-программист) и др.
У нас много интересных задач от автопроизводителей и концернов, двигающих индустрию. Если хотите расти, как специалист, и учиться у лучших, будем рады видеть вас в нашей команде. Также мы готовы делиться экспертизой, самым важным что происходит в automotive. Задавайте нам любые вопросы, ответим, пообсуждаем.
Список полезных публикаций на Хабре
- Бесплатные онлайн-курсы по Automotive, Aerospace, робототехнике и инженерии (50+)
- [Прогноз] Транспорт будущего (краткосрочный, среднесрочный, долгосрочный горизонты)
- Лучшие материалы по взлому автомобилей с DEF CON 2018-2019 года
- [Прогноз] Motornet — сеть обмена данными для роботизированного транспорта
- Компании потратили 16 миллиардов долларов на беспилотные автомобили, чтобы захватить рынок в 8 триллионов
- Камеры или лазеры
- Автономные автомобили на open source
- McKinsey: переосмысляем софт и архитектуру электроники в automotive
- Очередная война операционок уже идет под капотом автомобилей
- Программный код в автомобиле
- В современном автомобиле строк кода больше чем…
qalalab
Было бы содержательнее если бы разбиралась конкретная проблема. А у нас только набор шагов по отладке неизвестного бага на неизвестном окружении.
sumej
То, что в статье помогало не раз. Особенно, когда начинаешь подвергать сомнению, а туда ли я подключаюсь? А новый код действительно запущен? А это новый лог ошибок?