Новый день - новый тред.
Сегодня поговорим об аналитике, о том какими скилами должен обладать аналитик и почему его роль в любой команде является краеугольной
все начинается с того, что аналитики пытаются отвечать на вопросы, поступающие со всех сторон.
Почему произошло ..
Что будет если ..
Как мы можем увеличить/уменьшить ..
Что делать ..
Почему все горит и мы в огне
и так повелось, что чтобы ответить на большую часть вопросов нужно прибегнуть к каким-то данным.
так появляется необходимость уметь пропускать через себя большое кол-во информации и буквально по крупицам воссоздавать понимание мира
Так мы попадаем на область так называемых hard skills.
для аналитика основным является скил обработки данных и верчения табличек в разном направлении
часто можно увидеть, что основным инструментарием аналитиков является python + sql + DataViz библиотека.
и для среднего аналитика этого будет более чем достаточно
но если вы хотите стать крутым аналитком, то придется разобраться и с классическими алгоритмами и структурами данных, и с сервингом web api, и с тем как работать с html/css и тд.
аналитик - это full stack разработчик, у которого приоритеты смещены в сторону работы с данными
приведу это на примере одной из задач, которую мы делали в яндексе в рамках vc.ru/marketing/2788…
Так вот, мы решали задачу определения посещения пользователя какого-либо объекта.
читать под Страх и ненависть в Лас-Вегасе
у нас было два датацентра, распределенная система MapReduce, ~ 1.5 PB геоданных ежедневно, тысячи точек и полигонов, по которым надо построить эвристику
и вот если в лоб решать эту задачу, подсчет для каждого сигнала входит ли он в определенный полигон, например подсчетом расстояния, даже за один день логов не досчиталась бы до сих пор
на помощь нам пришла незамысловатая структура данных en.wikipedia.org/wiki/R-tree, которая решает эту задачу за O(n) в худжем варианте
и чисто аналитическая задача превратилась в алгоритмическо-инженерную: реализовать в парадигме MapReduce эту структуру данных и поиск по нему.
Лёня Данильченко