Топ-3 ошибки в карьере ML-инженера
Забыть документацию. Навсегда
Представьте, в вашем офисе 30 сотрудников, корпящих над совместным кодом. А вы в уголке работаете над конкретной месячной задачей. Проходит ровно 30 дней. Думаете: ну вот, наконец-то я отдохну, похожу на кофе-брейки…
Нет.
Вы будете объяснять каждому индивидуально свой код, а еще к вам могут прислать целую делегацию от заказчика, ведь он поинтересуется, как же работает ваша универсальная рекомендательная система...
Поэтому пишите проектную документацию (логику работы сервиса) и техническую (для коллег). Тогда вы сэкономить килотонну времени на объяснениях.
Засиживаться в Jupyter
Да, это отличный способ, чтобы подучиться и всегда знать назначение данных, вот только черновики не превратишь в реальный сервис. Нельзя провести код ревью, версионификацию, воспроизвести наработки, переиспользовать и даже затестить.
Нужно учиться встраивать код в продакшн, чтобы обернуть в несчастный Docker и уже конвертировать в конечный ML-сервис. Заказчику нужна программа, а не черновик.
Выход? Выделяйте на проектирование не более 20% времени от всей разработки. Как можно раньше познакомьтесь с IDE, вынесите версии библиотек в requirenments.txt, разберитесь с импортами.
Забыть про A/B тесты
Тесты позволяют оценить эффективность вашей ML модели. Стоит потратить время, чтобы разрабатывать простейшие дизайны экспериментов (гипотезы, метрики, фиксации ошибок, стат.тесты и т.д.) – тогда получится оценивать реальный КПД проекта и вносить эффективные правки.
А это ведь отличная штука, повышающая вашу привлекательность на рынке труда путем прямых доказательств. Мол, смотрите, какой я выгодный. Вы мне платите $3к, а я в два раза больше денег принес...
Всего 3 ошибки, но сколько денег, а главное, времени они могут сэкономить.