Русский
Русский
English
Статистика
Реклама

Блог компании plarium

Как расширить лор игры на примере Vikings War of Clans. Часть 2

13.04.2021 16:13:10 | Автор: admin

В первой части статьи мы рассказали, как расширяли лор игры Vikings: War of Clans, чем вдохновлялись и какие приемы использовали, когда создавали концепцию Хельхейма, истории персонажей Уннара и Вивы, а также имена Воинов и Порождений Мглы. Для второй части мы приберегли еще много всего интересного. Итак, поехали.

Материалы из Хельхейма

Иконки из Vikings: War of ClansИконки из Vikings: War of Clans

Согласно разработанной нами концепции, никто не может остаться прежним после того, как попал в Хельхейм зловещий мир мертвых. Люди превращаются в призраков, трусы и предатели становятся Мглой. Вещи тоже меняют свою природу, хоть и сохраняют какие-то первоначальные черты. Исходя из этого, мы предложили для реализации несколько разных групп материалов.

Концепция для сета 1

  • Нейминг: название материала + прилагательное.

  • Идея: материалы попали в Хельхейм из Мидгарда во время погребальных обрядов (вместе с умершим у викингов было принято хоронить предметы быта, оружие, одежду, любимые личные вещи). Эти предметы остались прежними по форме, но приобрели потусторонние черты.

Иконки из Vikings: War of ClansИконки из Vikings: War of Clans

Обычный металл + прилагательное

Холодное железо
Ледяной свинец
Подземный сплав

Обычная ткань + прилагательное

Паучий бархат
Ночной глазет
Сумрачный шелк

Обычная древесина + прилагательное

Закатный клен
Железная ель

Концепция для сета 2

  • Нейминг: название минерала + прилагательное.

  • Идея: Хельхейм скалистый и бесплодный мир, а основная активность в нем происходит под землей в Катакомбах. Поэтому логично, что вместо травы и деревьев в этом мире растут минералы, которые напоминают мидгардские.

Иконки из Vikings: War of ClansИконки из Vikings: War of Clans

Обычный минерал + прилагательное

Чистый хрусталь
Звездная друза

Концепция для сета 3

  • Нейминг: название предмета + прилагательное.

  • Идея: во многих древних культурах считалось, что вещь попадает в потусторонний мир вместе с умершим, если перед захоронением ее ритуально убить сломать, разбить, сжечь (да, ладьи, в которых хоронили северян, сжигали именно поэтому). Сломанные или испорченные вещи символизируют связь с миром мертвых и могут применяться в изготовлении новых вещей (перековка, украшения и т. д.).

Иконки из Vikings: War of ClansИконки из Vikings: War of Clans

Обычный предмет + прилагательное

Сломанный меч
Каленые прутья

Концепция для сета 4

  • Нейминг: животный материал.

  • Идея: мы не знаем, что за животные обитают в Хельхейме, но можем предположить, что это погибшие животные Мидгарда. В мире мертвых они становятся существами, лишь похожими на себя, и их уже нельзя назвать прежними именами. Поэтому мы постарались подобрать названия, которые намекают на первоначальный облик зверя.

Иконки из Vikings: War of ClansИконки из Vikings: War of Clans

Животный материал

Ветвистый рог
Зуб вожака
Шкура упрямого

Концепция для сета 5

  • Нейминг: священный мифологический компонент.

  • Идея: Хельхейм это очень необычный мир, и вещи в нем тоже необычные. Но нельзя создать вещь с удивительными свойствами, не применив никакого священного компонента. Это подтверждают многочисленные северные легенды: в Беовульфе и Саге о Ньяле, например, упоминается закалка меча в крови, а в Старшей Эдде при создании одного из мечей используется яд. Чтобы сохранить сеттинг игры и не уйти в фэнтези, мы предложили взять персонажей, сюжеты и предметы из скандинавской мифологии.

Иконки из Vikings: War of ClansИконки из Vikings: War of Clans

Священный мифологический компонент

Шерсть Гарма
Искра Сурта
Вода из Гьелля

Вещи Воителей

Названия вещей Воителей (Уннара и Вивы) это комбинации реалистичных и фантастических явлений. Так как Хельхейм это другой мир, полный загадок и тайн, то и экипировка, создаваемая в нем, должна отличаться от привычной из мира людей. Общая стилистика на границе между средневековым гротескным реализмом и темным фэнтези. В названиях вещей для Хельхейма мы допускаем аллегории, метафоры и мистическую составляющую.

Формулы нейминга:

  • Прилагательное + существительное. Причем прилагательное должно быть эпичным, мистическим, фэнтезийным, а существительное обозначением оружия, брони, какого-то действия или объекта (для создания метафоры). Например: Туманная кираса, Сокрушающий молот, Пламенный страж, Небесный удар.

  • Существительное + существительное. Здесь одно из них указывает на тип предмета (головной убор, броня, оружие и т. д.), а второе добавляет художественности и фэнтезийности. Например: Капюшон охотника, Круг стихий, Перевязь тьмы.

Так как для правильного восприятия нейминга важна сочетаемость с артом, то мы создавали документы с референсами и описаниями вещей для художников. Для каждого сета была разработана своя уникальная концепция. Например, вдохновившись образом альвов (скандинавских духов природы), мы придумали изысканные вещи, сделанные из кожи и стали, выдержанные в золотых и серых оттенках, а наши коллеги-художники их нарисовали.

Иконки из Vikings: War of ClansИконки из Vikings: War of Clans

Шлем

Сияющий наголовник

Броня

Драконья кожа

Оружие

Пылающий шип

Щит

Золоченый щит

Пояс

Гравированный пояс

Обувь

Узорчатые наголенники

Хольмганг

Предыстория

Как и в случае с фичей Хельхейм, идею для нового события мы подцепили из истории викингов. Что же такое Хольмганг? Это поединок двух викингов, в котором они заранее договариваются о правилах. Наш Хольмганг адаптирован под условия игры Vikings: War of Clans. Это эпическое Соревнование, которое представляет собой подобие поединка, но между Кланами. В нем участники должны по очереди защищать свои Форты и атаковать чужие.

Действие происходит на Островах Испытаний, заселенных NPC-войсками, которые помогают защищать Форты. Прообразом локации стала средневековая Исландия и жившие там свободолюбивые и суровые люди.

Название Хольмганг непривычное, однако у него есть свои плюсы:

- оно достаточно простое всего 2 слога;
- емкое по смыслу: означает дуэль (в нашем случае командную) и переводится как прогулка по острову;
- запоминающееся, его сложно с чем-то перепутать;
- легко сокращается (игроки уже называют его Хольм или ХГ).

Мы решили связать концепцию Хольмганга с Хельхеймом через подготовку к борьбе со Мглой. Напомним, что Мгла служит царице Хель и может принимать форму некогда умерших воинов.

Концепция

Совсем недавно открылись Врата в Хельхейм, а это значит, что Мидгард в опасности. Его, как и Свартальфахейм, может заполонить Мгла. Поэтому Ярлы решили подготовиться к битве и начали серьезно тренироваться, сражаясь между собой.

Соревнование назвали Хольмганг как древний поединок чести у викингов. В качестве площадки выбрали Острова Испытаний, населенные Стражами Островов, которые когда-то покинули Королевства Севера ради свободной жизни. Эти люди не хотят служить Ярлам, но готовы тренироваться вместе с ними, так как знают об опасности Мглы.

Чтобы принять участие в Хольмганге, Вождю или Старейшине нужно подать заявку. Кланы-участники распределяются по особым Лигам (самая младшая Первая, самая старшая Седьмая).

На Островах Испытаний есть Форты укрепления для обороны и нападения, окруженные Мрачными топями. Цель Кланов разрушить чужие Форты и защитить свои.

Желание викингов усилить оборону укреплений привело к тому, что в Цитадели Клана появилось новое здание Мастерская Ловушек. Там изобретатели придумывают разные способы сделать ловушки эффективнее.

Лорные статьи

Чтобы поддерживать лор Vikings: War of Clans, углублять его и погружать игроков в мир скандинавской мифологии, мы периодически пишем лорные статьи. Вот, например, две из них.

Статья Путь в Хельхейм

В ней мы рассказали о зловещем подземном мире, а также о Воителях, которые его исследуют, альвийке Виве и цверге Уннаре.

Все части статьи написаны в разных стилях, каждая повествует об отдельном персонаже. В итоге у нас получился большой познавательный текст, состоящий из четырех глав: Хель. Царица мертвых, Уннар. Упрямство цвергов, Вива. Любящее сердце и Ярл. Покоритель миров.

Особенности статьи

  • В повествовании мы опирались на скандинавскую мифологию. Использовали яркую, экспрессивную и метафорическую лексику.

За пределами мира людей и мира богов, у самых корней ясеня Иггдрасиля лежит окруженная ледяными потоками реки Гьелль земля мертвых Хельхейм. Каждый, кто погиб не на поле брани и без оружия в руках, отправляется в этот холодный, укрытый туманом край.

  • А еще мы экспериментировали с разными формами повествования.

Вот часть письма, которое Уннар пишет правителям мира цвергов скандинавских гномов.

Королю и королеве цвергов от Уннара-исследователя

ПРОШЕНИЕ

Ваши величества! Я не привык общаться с особами столь высокого положения, поэтому скажу прямо: отправьте меня в Мидгард.

Пусть я молод и родился уже в войну со Мглой, я отыскал и исследовал многие забытые артефакты нашего народа. Высшей несправедливостью считаю то

А вот диалог между альвийкой Вивой и мудрецом из ее племени.

Ты отдаешь себе отчет, что, если уйдешь в Мидгард, наше племя останется без покровительницы? пожилой альв с гордой осанкой холодно посмотрел на Виву. И некому будет благословить нас на битву и обучить молодых боевому ремеслу.

Понимаю. Но оставшись, я обеспечу лишь временное преимущество, а отправившись в Мидгард, помогу выиграть войну, непреклонно заявила альвийка.

Вы думали, это все? Ан нет! Стихи. Да не простые, а стилизованные под Старшую Эдду поэтический сборник древнеисландских песен о богах и героях скандинавской мифологии.

Уннар и Вива
нам указали
место, где ткани
миров истончились.

Модгуд и Гарм
нам путь не заступят
сразу в Хельхейме
окажутся воины.

Помимо этой статьи, мы еще подготовили небольшой текст, в котором кратко рассказали о Хельхейме. Так что если времени у вас немного, но окунуться в мир мрачных подземелий хочется, то добро пожаловать.

Статья Как воевали боги и что из этого вышло

А в этом тексте мы рассказали о войне асов и ванов.

Согласно верованиям викингов, когда-то центром мироздания был не Асгард, а Ванахейм. В нем жили ваны боги природы, плодородия и сейда (это странное слово означает колдовство). Однажды обитатели Ванахейма заметили, что далеко на западе появились асы другие боги, которые людям нравились куда больше, чем старые добрые ваны. И вот тогда-то и началось настоящее противостояние Чем оно закончилось, читайте тут.

Особенности статьи

  • В повествовании мы опирались на скандинавский сеттинг, полный эпичности и пафосности, но разбавили его современным юмором, за счет чего статья получилась такой живой и читабельной.

Сначала всей семьей они решили противостоять искушениям, тыкая Гулльвейг копьями и сжигая на костре. (Спойлер ничего не вышло, она же персонификация!)

В конце концов и те и другие плюнули буквально! в котел и, чтобы закрепить союз, создали из своей слюны мудрейшего человека по имени Квасир. Некоторые говорят, что название русского напитка квас произошло именно отсюда.

  • Арты для этой статьи (как и для статьи про Хельхейм) совместная работа отдела копирайтеров и отдела художников. Мы, как авторы текста, давали рекомендации, а иллюстраторы воплощали идеи в жизнь. К примеру, для рисунка ниже мы просили с одной стороны нарисовать ванов (зеленые цвета, символизирующие плодородие), а с другой асов (агрессивные цвета и атрибуты войны).

  • А вот сама Гулльвейг злая колдунья, посланная ванами в Асгард. Нам хотелось, чтобы ее изобразили как можно более мистической, а также среди сокровищ, с украшениями и короной на голове, ведь Гулльвейг олицетворяет жадность, тягу к золоту. Художники подошли к требованиям с фантазией, добавили своего видения, и в итоге перед нами предстала шикарная колдунья одновременно прекрасная и пугающая.

Вместо вывода

Возможно, вы спросите: зачем вообще все это нужно Vikings: War of Clans? Почему мы так обеспокоены поддержанием и расширением лора? Ответим так: в этом плане нет разницы между компьютерной, мобильной и даже настольной игрой.

История, которая повествуется как внутри, так и за пределами игры, персонажи и их проблемы, мелочи вроде названий предметов, отсылающих к разным мифам, все это складывается в красивую общую картину в сознании пользователя, помогает сильнее заинтересовать его и погрузить в мир Vikings: War of Clans. А погруженному человеку намного проще получать удовольствие от игры, и для нас, как для разработчиков, это самое важное. Этот эффект не всегда может быть явным, но он безусловно есть, и общий положительный фидбек от наших игроков это подтверждает.

А в какие игры вы погружаетесь с головой и как этому помогает нарратив?

Подробнее..

Перевод Как вернуть сразу несколько значений из функции в Python 3

28.08.2020 14:05:29 | Автор: admin
Сегодня мы делимся с вами переводом статьи, которую нашли на сайте medium.com. Автор, Vivek Coder, рассказывает о способах возврата значений из функции в Python и объясняет, как можно отличить друг от друга разные структуры данных.


Фото с сайта Unsplash. Автор: Vipul Jha

Python удобен в том числе тем, что позволяет одновременно возвращать из функции сразу несколько значений. Для этого нужно воспользоваться оператором return и вернуть структуру данных с несколькими значениями например, список общего количества рабочих часов за каждую неделю.

def hours_to_write(happy_hours):   week1 = happy_hours + 2   week2 = happy_hours + 4   week3 = happy_hours + 6   return [week1, week2, week3] print(hours_to_write(4))# [6, 8, 10]

Структуры данных в Python используются для хранения коллекций данных, которые могут быть возвращены посредством оператора return. В этой статье мы рассмотрим способы возврата нескольких значений с помощью подобных структур (словарей, списков и кортежей), а также с помощью классов и классов данных (Python 3.7+).

Способ 1: возврат значений с помощью словарей


Словари содержат комбинации элементов, которые представляют собой пары ключ значение (key:value), заключенные в фигурные скобки ({}).

Словари, на мой взгляд, это оптимальный вариант для работы, если вы знаете ключ для доступа к значениям. Далее представлен словарь, где ключом является имя человека, а соответствующим значением возраст.

people={  'Robin': 24,  'Odin': 26,  'David': 25}

А теперь перейдем к функции, которая возвращает словарь с парами ключ значение.

# A Python program to return multiple values using dictionary# This function returns a dictionary def people_age():     d = dict();     d['Jack'] = 30    d['Kim'] = 28    d['Bob'] = 27    return dd = people_age() print(d)# {'Bob': 27, 'Jack': 30, 'Kim': 28}

Способ 2: возврат значений с помощью списков


Списки похожи на массивы, сформированные с использованием квадратных скобок, однако они могут содержать элементы разных типов. Списки также отличаются от кортежей, поскольку являются изменяемым типом данных. То есть любой список может меняться.

Списки одна из наиболее универсальных структур данных в Python, потому что им не обязательно сохранять однородность (в них можно включать строки, числа и элементы). Иногда списки даже используют вместе со стеками или очередями.

# A Python program to return multiple values using list def test():     str1 = "Happy"    str2 = "Coding"    return [str1, str2]; list = test() print(list)# ['Happy', 'Coding']

Вот пример, где возвращается список с натуральными числами.

def natural_numbers(numbers = []):      for i in range(1, 16):       numbers.append(i)   return numbers print(natural_numbers())# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]

Способ 3: возврат значений с помощью кортежей


Кортежи это упорядоченные неизменяемые объекты в Python, которые обычно используются для хранения коллекций неоднородных данных.

Кортежи напоминают списки, однако их нельзя изменить после того, как они были объявлены. А еще, как правило, кортежи быстрее в работе, чем списки. Кортеж можно создать, отделив элементы запятыми: x, y, z или (x, y, z).

На этом примере кортеж используется для хранения данных о сотруднике (имя, опыт работы в годах и название компании).

Bob = ("Bob", 7, "Google")

А вот пример написания функции для возврата кортежа.

# A Python program to return multiple values using tuple# This function returns a tuple def fun():     str1 = "Happy"    str2 = "Coding"    return str1, str2; # we could also write (str1, str2)str1, str2= fun() print(str1) print(str2)# Happy  Coding

Обратите внимание: мы опустили круглые скобки в операторе return, поскольку для возврата кортежа достаточно просто отделить каждый элемент запятой (как показано выше).

Не забывайте, что кортеж можно создать с помощью запятой вместо круглых скобок. Круглые скобки требуются только в тех случаях, когда используются пустые кортежи или вам нужно избежать синтаксической неточности.

Чтобы лучше разобраться в кортежах, обратитесь к официальной документации Python 3 (документация приведена на английском языке. Прим. ред.).

Ниже показан пример функции, которая использует для возврата кортежа круглые скобки.

def student(name, class):   return (name, class)print(student("Brayan", 10))# ('Brayan', 10)

Повторюсь, кортежи легко перепутать со списками (в конце концов, и те, и другие представляют собой контейнер, состоящий из элементов). Однако нужно помнить о фундаментальном различии: кортежи изменить нельзя, а списки можно.

Способ 4: возврат значений с помощью объектов


Тут все так же, как в C/C++ или в Java. Можно просто сформировать класс (в C он называется структурой) для сохранения нескольких признаков и возврата объекта класса.

# A Python program to return multiple values using class class Intro:  def __init__(self):   self.str1 = "hello"  self.str2 = "world"# This function returns an object of Introdef message():  return Intro()  x = message() print(x.str1) print(x.str2)# hello  world

Способ 5: возврат значений с помощью классов данных (Python 3.7+)


Классы данных в Python 3.7+ как раз помогают вернуть класс с автоматически добавленными уникальными методами, модулем typing и другими полезными инструментами.

from dataclasses import dataclass@dataclassclass Item_list:    name: str    perunit_cost: float    quantity_available: int = 0    def total_cost(self) -> float:        return self.perunit_cost * self.quantity_available    book = Item_list("better programming.", 50, 2)x = book.total_cost()print(x)print(book)# 100  Item_list(name='better programming.', perunit_cost=50,   quantity_available=2)

Чтобы лучше разобраться в классах данных, обратитесь к официальной документации Python 3 (документация приведена на английском языке. Прим. ред.).

Вывод


Цель этой статьи ознакомить вас со способами возврата нескольких значений из функции в Python. И, как вы видите, этих способов действительно много.

Учите матчасть и постоянно развивайте свои навыки программирования. Спасибо за внимание!
Подробнее..

Руководитель о двух головах

26.06.2020 16:08:22 | Автор: admin
В IT характерно идти путем оптимизации и получать максимум от имеющихся ресурсов. Владельцы бизнеса тщательно подбирают топ-менеджеров, а HR-специалисты стараются не раздувать штат. Поэтому, например, в отрасли распространены многоэтапные собеседования, с целью взять лучшего кандидата по сочетанию положительных и отрицательных качеств, подходящего для выполнения конкретных задач, с учетом особенностей конкретной команды. При этом в каждой IT-компании есть своя история развития и примеры управленческих решений, которые также помогли оптимизировать работу талантливых ребят и внедренные ими процессы.

В статье мы рассказываем о системе, реализованной в Plarium Krasnodar: она предполагает разделение полномочий, ответственности и зон влияния между руководителем и координатором. Материал может быть полезен менеджерам разного уровня, а также специалистам по управлению, которые интересуются темой или планируют реорганизацию.

image

Привет, Habr. Меня зовут Дарья Меньшикова, я Head of Customer Experience & Support Division студии Plarium Krasnodar.

7 лет назад я начала работу с небольшой командой из 5 человек. Сейчас структура состоит из 83 сотрудников в офисе и около 100 удаленных специалистов, которые формируют 14 команд и выполняют функции для покрытия разных потребностей бизнеса в зоне post-production.

Хочу поделиться опытом создания системы управления на примере моего подразделения. Эффективность системы была проверена временем и получила положительную оценку от топ-менеджмента студии.

Вот как это работает

Управление предполагает наличие у руководителя одновременно навыков стратегического и тактического планирования. Но если мы обратимся к классике менеджмента, например к Ицхаку Адизесу и его книге Идеальный руководитель. Почему им нельзя стать, то увидим, что невозможно быть талантливым во всем.

Во время очередного витка развития доверенной мне структуры я обратила внимание на руководящий состав своей команды. Наиболее сильное различие между управленцами в моем подчинении было в том, что одни мыслили широко и стратегически, другие глубоко и тактически.

Стратегия и тактика это функции, предполагающие противоположные взгляды на цели и результат.

Когда я поняла, что эти функции не могут быть равновелики в одном человеке, стало очевидно, что их нужно разделить между двумя разными специалистами. Любой руководитель департамента или команды в дивизионе должен брать на себя стратегическую функцию, то есть выбирать, куда и зачем идет его команда. Также он должен передавать это видение своему помощнику координатору (не путать с помощником руководителя в классическом понимании), который будет искать, каким образом команда туда придет, отвечая на вопросы: с помощью чего, используя какие ресурсы?

В этом и заключается идея, которая на практике уже почти 5 лет дает свои плоды. Сейчас лиды и директора департаментов не распыляются на выстраивание внутренних процессов. В своей работе делают упор на прокачку глобальности мышления, выбор верного направления развития структуры, командообразование и продуктивную атмосферу в коллективе, на то, чтобы быть в тренде своей профессии, искать что-то новое и тонко чувствовать, в какую сторону поворачиваются мировые тенденции.

Для лучшей совместной работы есть еще одно простое, но неотъемлемое условие руководитель любого направления и его координатор принимают ключевые решения сообща.

Зачем это нужно? Мы помним, что у них зачастую противоположные взгляды на одну и ту же проблему, процесс, идею. Лид оценивает, как это будет выглядеть через полгода, год, два года, как может развиваться. Координатор же смотрит, какой это дает профит прямо сейчас, как ломает существующий уклад, какие шаги необходимы для реализации и много ли требуется на это ресурсов.

Есть такие понятия, как цена и ценность. Бывает, что стратеги, особенно талантливые, чересчур увлекаясь проработкой направления развития, не учитывают, что за определенную ценность они могут заплатить огромную цену. Удачное ли сейчас для этого время? Можем ли мы себе это позволить? На такие вопросы и отвечает координатор.

При синергии стратега и тактика качество принятия управленческого решения намного выше, чем если бы это решение принимал только стратег или только тактик.

Лид и его координатор это люди, дополняющие друг друга, работающие как один организм, способные вместе стать тем самым идеальным руководителем, которым не сможет стать одиночка.

Кто же он координатор?

Не заместитель руководителя. Если зам один, обычно он перенимает все функции руководителя. Бывают замы по определенным направлениям или вопросам. Работа координатором не предполагает принятия стратегических решений, поэтому его нельзя в полной мере назвать заместителем.

Не помощник руководителя в классическом понимании. Помощник обычно выполняет функции секретаря, который организует рабочий день своего руководителя, но он не выстраивает процессы, не занимается тактическим развитием.

Не PM. Project Manager в большей степени выполняет функции администратора: фасилитирует процессы, распределяет и собирает задачи, контролирует их реализацию и сроки выполнения, иногда налаживает коммуникацию между отделами или специалистами. Классическая зона принятия решения у PM ограничена по сравнению с координатором: последний помимо перечисленного несет полную ответственность за тактическое развитие команды.

Если оперировать категориями, принятыми на рынке труда, то должность координатора приравнивается к исполнительному директору, а лида к генеральному.

Координатор это руки, лид это голова.

Обладает ли координатор властью? Безусловно: его власть в сфере принятия тактических решений. Лид контролирует только результат, не вникая в то, как координатор этого результата добился. Повторюсь, руководитель задает направление куда мы идем, зачем, почему, а как уже дело координатора.

Простая аллегория: если в пути сломался велосипед, это ошибка в зоне ответственности координатора, а если велосипед доехал, но мы приехали не туда это ошибка в зоне ответственности лида.

Если ругают, то обоих, если хвалят, то тоже обоих. Если команда добилась успеха эти двое круто отработали и вместе с командой достигли больших результатов.

Что же входит в должностные обязанности координатора? Зависит от его грейда. Посмотрим на должностную сетку.

image

Чем выше в иерархии должность координатора, тем большими полномочиями он наделен. Здесь есть один важный нюанс, касающийся стратегии и тактики. Поскольку Executive Director работает на уровне всего дивизиона, его зона ответственности шире, чем у Executive Lead, который работает на уровне департамента. Так как масштаб стратегии дивизиона больше стратегии входящих в него департаментов, тактика дивизиона очень часто перекликается со стратегией департаментов (соотношение дивизиона, департаментов и команд см. в схеме ниже).

image

Рассмотрим обязанности координатора на высшей в карьерной сетке должности Executive Director. Его функции можно разбить на 5 больших групп.

  1. Стратегия и тактика управления. Планирование работ с руководителями департаментов для достижения целей дивизиона. Изучение трендов и новых подходов в управлении сотрудниками, командообразовании и эффективном ведении бизнеса.
  2. Организация. Координирование при выполнении общих задач департаментов внутри дивизиона.
  3. Развитие команд. Участие в адаптации новых сотрудников и развитие молодых руководителей в дивизионе. Работа с сеньорами, лидами команд. Участие во всех этапах подбора сотрудников и присутствие на собеседованиях. Создание рабочей атмосферы в командах дивизиона и ее мониторинг. Руководство вспомогательными командами дивизиона.
  4. Взаимодействие. Ситуативная работа с топ-менеджментом краснодарской студии. Налаживание коммуникаций с другими студиями Plarium. Регулярное общение и консультации с юристами, в том числе по вопросам пользователей.
  5. Контроль. Участие в подготовке отчетности для вышестоящих руководителей. Определение и контроль сроков по стратегическим задачам дивизиона.

Начинающие специалисты этого профиля также имеют четко прописанные обязанности и понимают, что необходимо выполнять на текущем грейде, а что будет ждать их при повышении.

Какой минимальный набор качеств должен быть у координатора? Как разглядеть эти качества в сотрудниках или кандидатах?

  • Умение видеть суть вещей, обладание внутренним ощущением того, как правильно выстраивать процесс, исходя из формулировки задачи и требований руководителя, внимательность и пунктуальность.
  • Поскольку на этой должности процессы касаются разных людей, команд или даже департаментов, необходим хорошо развитый навык коммуникации. Компания большая, в ней работают специалисты с разным характером, строем психики и жизненным опытом. Чтобы эффективно выстраивать процессы, координатору нужно уметь находить общий язык со всеми. Тут может помочь знание типологий личности например, типов информационного метаболизма человека (соционика), типов личности по В.Пономаренко (профайлинг) и др.
  • При этом каждый координатор должен иметь эмоциональный стержень, быть психологически зрелым. Несмотря на то, что он работает с процессами, ему необходимо обладать определенным уровнем эмпатии и владеть этическими нормами. Большинство процессов в зоне ответственности координатора завязано на людях, поэтому отношение к ним должно быть базово хорошим. При наличии эмоциональной зрелости и хорошего отношения формируется частичная психическая абстрагированность от внешней фрустрации, то есть стрессоустойчивость. Это и позволяет при коммуникации чаще оставаться эмоционально нейтральным и достигать нужных целей для бизнеса.
  • А чтобы понимать, с кем и когда следует коммуницировать, необходимо хорошо понимать приоритеты. Видеть, в какой последовательности лучше выполнять задачи. Для правильной приоритизации нужно обладать наиболее важной информацией по каждой выполняемой задаче, чтобы внезапное появление новых данных не привело к переносу срока или потере в качестве. Это возвращает нас к первому пункту списка умение выделять суть.

Это для вас? Действуйте!

Система лид координатор предполагает диалог. Если вы любитель монологов, координатор вам не требуется.

Чтобы разделить свою власть с кем-то, нужно не бояться этой властью делиться и обладать достаточной уверенностью в себе. Нужно быть готовым к тому, что координатор по многим вопросам может быть с вами не согласен, а такой формат взаимодействия по душе не всем руководителям.

Теперь, когда вы узнали особенности нашей системы управления и должности координатора, можно сделать вывод о том, насколько такой специалист необходим вашей команде.

Надеюсь, статья была интересной, а мой опыт управленческих решений полезным.
Подробнее..

Перевод Как переписать SQL-запросы на Python с помощью Pandas

31.07.2020 18:06:20 | Автор: admin
В этой статье June Tao Ching рассказал, как с помощью Pandas добиться на Python такого же результата, как в SQL-запросах. Перед вами перевод, а оригинал вы можете найти в блоге towardsdatascience.com.

image
Фото с сайта Unsplash. Автор: Hitesh Choudhary

Получение такого же результата на Python, как и при SQL-запросе


Часто при работе над одним проектом нам приходится переключаться между SQL и Python. При этом некоторые из нас знакомы с управлением данными в SQL-запросах, но не на Python, что мешает нашей эффективности и производительности. На самом деле, используя Pandas, можно добиться на Python такого же результата, как в SQL-запросах.

Начало работы


Нужно установить пакет Pandas, если его нет.

conda install pandas

Мы будем использовать знаменитый Датасет Титаник от Kaggle.

После установки пакета и загрузки данных нам необходимо импортировать их в наше окружение Python.

image

Для хранения данных мы будем использовать DataFrame. Управлять этой структурой данных нам помогут различные функции Pandas.

SELECT, DISTINCT, COUNT, LIMIT


Начнем с простых SQL-запросов, которые мы часто используем.

image

titanic_df["age"].unique() вернет массив уникальных значений, поэтому нам придется использовать len(), чтобы посчитать их количество.

SELECT, WHERE, OR, AND, IN (SELECT с условиями)


После первой части вы узнали, как простыми способами исследовать DataFrame. Теперь попробуем сделать это с некоторыми условиями (это оператор WHERE в SQL).

image

Если мы хотим выбрать только определенные столбцы из DataFrame, мы можем сделать это с помощью дополнительной пары квадратных скобок.

Примечание: если вы выбираете несколько столбцов, вам нужно поместить массив ["name","age"] внутри квадратных скобок.

isin() работает точно так же, как IN в SQL-запросах. Чтобы использовать NOT IN, на Python нам нужно использовать отрицание (~).

GROUP BY, ORDER BY, COUNT


GROUP BY и ORDER BY также являются популярными SQL-операторами при исследовании данных. А теперь давайте попробуем использовать их на Python.

image

Если мы хотим отсортировать только один столбец COUNT, то можем просто передать булево значение в метод sort_values. Если мы собираемся сортировать несколько столбцов, то должны передать массив булевых значений в метод sort_values.

Метод sum() выдаст суммы для каждого из столбцов в DataFrame, которые могут быть численно агрегированы. Если нам нужен только определенный столбец, то нужно указать имя столбца, используя квадратные скобки.

MIN, MAX, MEAN, MEDIAN


И наконец, давайте попробуем некоторые стандартные статистические функции, которые важны при исследовании данных.

image

SQL не содержит операторов, возвращающих медианное значение, поэтому для получения медианного значения столбца с информацией о возрасте мы используем BigQuery APPROX_QUANTILES

В Pandas метод агрегации .agg() также поддерживает другие функции, например sum.

Теперь вы научились переписывать SQL-запросы на Python с помощью Pandas. Надеюсь, эта статья будет вам полезна.

Весь код можно найти в моем репозитории Github.

Спасибо за внимание!
Подробнее..

Симуляция волос и тканей с Unity Cloth на мобильных устройствах

28.09.2020 10:23:58 | Автор: admin


Многие разработчики рано или поздно сталкиваются с задачей достичь реалистичного поведения тканей или волос. Для этого есть целый ряд технологий, однако далеко не все из них подходят для мобильных платформ. Обычно мобильные разработчики запекают анимации, потому что это наименее затратно. Мы же поговорим о симуляции в реальном времени о модуле Unity Cloth.



Unity Cloth это система, основанная на симуляции физики тканей, которая работает вместе с SkinnedMeshRenderer. Она позволяет управлять широким набором параметров, такими как жесткость растяжения или кручения, степень затухания (величина, отвечающая за то, насколько быстро ткань придет в равновесие), симуляция ветра, взаимодействие внутренних столкновений (self-collision), трение, воздействие гравитации, влияние и взаимодействие коллайдеров и пр.

Одна из команд краснодарской студии Plarium изучила применимость Unity Cloth для мобильных устройств.

Часть 1. Симуляция тканей


Мы начали со стресс-тестов, чтобы оценить допустимые границы использования параметров модуля на мобильных устройствах. Первым исследуемым образцом стал высокополигональный многослойный меш накидка с количеством вершин ~ 10k, треугольников ~ 7k. На объект было добавлено 19 капсульных коллайдеров по форме частей тела персонажа. Остальные настройки по умолчанию.

На графике ниже представлена задержка исследуемых метрик в миллисекундах в зависимости от количества инстансов объекта. Тестируемое устройство Xiaomi Mi5 (4 ядра, 2.15 ГГц, 3 ГБ ОЗУ).



Xiaomi Mi5 не самый слабый девайс, но уже на нем видны серьезные потери производительности. На менее мощных устройствах (Lenovo A536, Quad-core, 1.3 ГГц, 1 Гб ОЗУ) они становятся катастрофическими. Далее будем оценивать результаты, которые демонстрирует наиболее слабый девайс.



На одно только обновление физики тканей приходится 775 мс из 800. Попробуем исключить влияние коллайдеров.



Вычисления столкновений коллайдеров сильно снижают перфоманс, при 25 инстансах на сцене присутствовало максимум 475 коллайдеров.

Следующее измерение проведем относительно низкополигональной однослойной модели (153 вершин, 256 треугольников) с меньшим количеством инстансов (до 9) и меньшим количеством коллайдеров (до 8).





Посмотрим, какое влияние оказывают расчеты коллайдеров. Построим соответствующие зависимости на примере одного инстанса объекта на разных устройствах (помимо уже задействованных девайсов берем Asus ZenFone 5, Dual-core, 2 ГГц,1 Гб ОЗУ).



Получившиеся функции хорошо аппроксимируются полиномиальной функцией 2 степени.

Видно, что с низкополигональными объектами ситуация на порядок лучше. На самых древних устройствах на один инстанс объекта в среднем приходится около 1 мс (против ~ 3 мс для высокополигональной модели при прочих равных параметрах), что довольно неплохо.

Далее посмотрим, как влияют на производительность дополнительные параметры.

В тестах использовался однослойный меш чуть большей, чем в предыдущем измерении, детализации (~ 450 вершин, ~ 800 треугольников). В компонент Unity Cloth был добавлен 1 капсульный коллайдер, исследовался 1 инстанс объекта, варьировались дополнительные параметры внутренних столкновений и влияния ветра.





Дополнительная симуляция ветра, как и расчеты внутренних столкновений, ухудшают производительность.

Это особенно ощутимо на более сложных моделях. Проанализируем влияние дополнительных параметров жесткости (растяжение, кручение) и затухания на мешах с количеством вершин ~ 10 000 и ~ 500 с 1 капсульным коллайдером.



Ниже представлены результаты, полученные на наиболее слабом девайсе (Lenovo A536) с варьированием параметров в каждом из замеров.

1. Жесткость: Растяжение и скручивание выкл.
Low-poly: 1.67 мс. High-poly: 145.32 мс.

2. Жесткость: Растяжение вкл. / Скручивание выкл.
Low-poly: 1.79 мс. High-poly: 160.44 мс.

3. Жесткость: Растяжение выкл. / Скручивание вкл.
Low-poly: 1.90 мс. High-poly: 172.19 мс.

4. Жесткость: Растяжение и скручивание вкл.
Low-poly: 1.92 мс. High-poly: 194.50 мс.

5. Жесткость: Растяжение вкл. / Скручивание выкл. Влияние ветра вкл.
Low-poly: 1.69 мс. High-poly: 165.73 мс.

6. Жесткость: Растяжение вкл. / Скручивание выкл. Затухание вкл.
Low-poly: 1.69 мс. High-poly: 172.75 мс.

7. Жесткость: Растяжение вкл. / Скручивание выкл. Влияние ветра вкл. Затухание вкл.
Low-poly: 1.76 мс. High-poly: 173.10 мс.

8. Жесткость: Растяжение вкл. / Скручивание выкл. Внутренние столкновения вкл.
Low-poly: 2.01 мс. High-poly: Unity Crash

Параметры симуляции ветра, затухания, сжатия, скручивания и внутреннего взаимодействия дают дополнительную нагрузку, существенно ухудшая производительность на слабых девайсах при использовании высокополигональных мешей. У мешей с меньшим количеством вершин задержка не так велика.

  • Симуляция ветра добавляет ~ 9% от общей задержки метрики.
  • Симуляция затухания добавляет ~ 12% от общей задержки метрики.
  • Симуляция сжатия/скручивания добавляет ~ 1315% от общей задержки метрики.
  • Симуляция внутренних взаимодействий добавляет ~ 1216% от общей задержки метрики (при малых количествах вершин. Сделать замер с большим количеством не удалось: нагрузка оказалась слишком высокой даже для ПК).

Часть 2. Симуляция волос



Модель с ресурса cgtrader.com

Поговорим немного о возможностях компонента Unity Cloth в работе с волосами. На первый взгляд, это должно быть не сложнее, чем с однослойными тканями сначала закрепить нужные вершины, после чего распределять степень влияния симуляции для остальных вершин. Но есть проблема изломы объемных объектов типа локонов. Чтобы яснее увидеть причину их возникновения, возьмем гранецентрированную кубическую кристаллическую решетку какого-нибудь металла, например хлористого натрия, в качестве наглядности.



Изломы объясняются тем, что близлежащие вершины заходят за удаленные (показано стрелкой). Изломов и перекручиваний избежать не удалось даже с использованием расчетов взаимодействий внутренних столкновений. Делаем вывод, что Unity Cloth для объемных тел не подходит.



Настройки симуляции:

  • Params 1: 3 коллайдера, жесткость включена на растяжение и скручивание, ветер и внутренние столкновения отключены, затухание отключено;
  • Params 2: 3 коллайдера, жесткость включена на растяжение, ветер и внутренние столкновения отключены, затухание отключено;
  • Params 3: 1 коллайдер, жесткость включена на растяжение, ветер и внутренние столкновения отключены, затухание отключено.

Показатели производительности двух слабых устройств сопоставимы друг с другом, Xiaomi дает лучшие результаты.

На загруженных сценах даже относительно небольшие задержки становятся существенными, а в мобильной разработке эти цифры приумножаются, так что бороться нужно за каждую десятую миллисекунды.

Краткие выводы о компоненте Unity Cloth


  • Неплохо справляется с простыми однослойными объектами (флаги, накидки, покрывала и скатерти).
  • При работе со сложными объектами требует высокой точности настройки.
  • При работе с объемными телами дает изломы.
  • Для некоторых вариантов симуляции имеющихся настроек недостаточно. Например, нельзя устанавливать свои значения гравитации: Graphics Settings используются по умолчанию.
  • Применение модуля затрудняется из-за багов в некоторых версиях Unity (подробнее в разделе Bug Story).

Заключение


Симуляция простых однослойных тканей, созданная с помощью модуля Unity Cloth, довольно реалистична. Однако его стоит использовать с осторожностью: взаимодействие с большим количеством коллайдеров, как и излишние вычисления симуляции ветра, затухания, сжатия, скручивания, внутреннего взаимодействия приводят к ухудшению производительности. В целом Unity Cloth довольно ресурсозатратен для использования на мобильных устройствах, особенно это видно при симуляции тканей и волос на высокополигональных мешах.

Если вы все же намерены использовать Unity Cloth на мобильных платформах, то обратите внимание на следующие рекомендации:
  • Меньше вершин выше производительность. Используйте меши с минимально допустимым для вас количеством вершин.
  • Сократите количество одновременно живущих объектов на сцене, которые подвергаются симуляции.
  • Выберите минимальное количество коллайдеров, с которыми будет взаимодействовать ткань, либо, если возможно, не используйте их вообще.
  • Используйте только те параметры компонента, которые необходимы для решения конкретной задачи, так как они тоже снижают производительность.

Bug Story
Вероятно, с какой-то из упомянутых ниже проблем вы уже сталкивались. По найденным багам мы формировали обращения в Unity Support.

Баг 1. В версии Unity 2018.4.4f1 компонент Cloth переопределяет Bounds в SkinnedMeshRenderer, что приводит к некорректному отображению как в редакторе, так и на устройствах.



В результате у 8 из 9 роботов пропали накидки. Ниже представлен скриншот с Xiaomi Mi 5.



Исправлено в версии 2018.4.8f1.

Баг 2. В версии 2018.4.8 в режиме редактирования Constraints улетают гизмо, из-за чего их невозможно выбрать/отметить. Точные шаги для воспроизведения бага определить не удалось, приводим примерные:
  • выберите объект с компонентом и войдите в режим редактирования Constraints;
  • измените что-нибудь, примените изменения и выйдите из режима;
  • запустите Play Mode и выйдите из него;
  • откройте режим редактирования у компонента Cloth.



Баг исправлен в версии 2018.4.14f.
Подробнее..

Перевод Индексы PSI и CSI лучшие метрики для мониторинга работы модели

14.08.2020 18:11:43 | Автор: admin
Представляем вам перевод статьи, опубликованной в блоге towardsdatascience.com.
Ее автор, Juhi Ramzai, рассказала об эффективных методах проверки моделей PSI (индексе стабильности популяции) и CSI (индексе стабильности характеристик).

Изображение предоставлено автором

После выпуска модели в продакшен необходимо проводить регулярный мониторинг ее работы, чтобы убедиться, что модель все еще актуальна и надежна. Ранее я писала пост о валидации модели и мониторинге ее работы, в котором подчеркивала важность этих двух этапов.

А теперь перейдем к основной теме данного поста. Мы узнаем все о PSI (индексе стабильности популяции) и CSI (индексе стабильности характеристик), которые являются одними из самых важных стратегий мониторинга, используемых во многих областях, особенно в сфере оценки кредитных рисков.

Обе эти метрики (и PSI, и CSI) сосредоточены на изменениях в РАСПРЕДЕЛЕНИИ ПОПУЛЯЦИИ.

Основная идея этих метрик заключается в том, что модель прогнозирования лучше всего работает, если данные, использованные для ее обучения, не слишком отличаются от валидационных / OOT (out of time) данных в плане экономических условий, основополагающих допущений, стиля ведения кампании, направленности и т. д.

Например, мы разработали модель прогнозирования показателей оттока пользователей кредитных карт в условиях нормальной экономической ситуации. Затем мы приступили к тестированию этой модели, но уже в условиях экономического кризиса. Вполне возможно, что в этом случае модель не выдаст точный прогноз, поскольку не сможет уловить тот факт, что в разных сегментах дохода распределение популяции могло значительно измениться (и это могло привести к высокому фактическому уровню оттока пользователей). В результате мы получим ошибочные предсказания. Но так как сейчас мы это уже понимаем, то можем перейти к проверке изменений распределения популяции между временем разработки (DEV time) и настоящим временем. Так мы получим ясное представление о том, можно ли полагаться на результаты, предсказанные моделью, или нет. Именно это и показывают важные метрики мониторинга PSI и CSI.

Индекс стабильности популяции (PSI)


Эта метрика позволяет измерить то, насколько переменная изменилась в распределении между двумя выборками с течением времени. Она широко используется для мониторинга изменений характеристик популяции и диагностики возможных проблем с эффективностью модели. Если модель перестала делать точные прогнозы из-за значительных изменений в распределении популяции, то часто это является хорошим показателем.

Приведенное выше определение как нельзя лучше объяснено в данной исследовательской работе. Я также привела ссылку на него в конце этого поста.

Изначально индекс стабильности популяции (PSI) был разработан для мониторинга изменений в распределении между внеплановыми выборками (ООТ) и выборками периода времени разработки при оценке кредитных рисков. В настоящее время использование индекса PSI стало более гибким по своей природе, что позволяет исследовать изменения как распределений, связанных с атрибутами модели, так и популяций в целом, включая зависимые и независимые переменные CSI. Мы рассмотрим это в следующем разделе.

Индекс PSI отражает тенденцию к изменению популяции в целом, в то время как индекс CSI обычно сосредоточен на используемых индивидуальных переменных модели.


Источник

Изменение в распределении популяции может быть связано:

  • с изменениями в экономической среде, такими как экономический кризис, COVID-19 и т. д.;
  • изменениями в источниках данных;
  • изменениями во внутренней политике, которые прямо или косвенно влияют на распределение популяции;
  • проблемами с интеграцией данных, которые могут привести к ошибкам в данных;
  • проблемами при программировании/кодировании, такими как реализация модели или пропуск некоторых важных этапов в коде оценки качества работы модели.

Поскольку изменение распределения не обязательно должно сопровождаться изменением зависимой переменной, индекс PSI также можно использовать для изучения сходства/различия между любыми выборками. Например, для сравнения уровня образования, дохода и состояния здоровья двух или нескольких популяций в социально-демографических исследованиях.

ШАГИ ДЛЯ РАСЧЕТА ИНДЕКСА PSI (Ссылка)

  1. Сортируем оцениваемую переменную по убыванию в оцениваемой выборке.
  2. Разделяем данные на 10 или 20 групп (дециль).
  3. Рассчитываем процент записей в каждой группе на основании оцениваемой выборки.
  4. Рассчитываем процент записей в каждой группе на основании выборки разработки.
  5. Рассчитываем разницу между шагами 3 и 4.
  6. Берем натуральный логарифм (Шаг 3 / Шаг 4).
  7. Умножаем шаг 5 на шаг 6.

ТАБЛИЦА EXCEL ИНДЕКСА PSI:

Изображение предоставлено автором

ПРАВИЛА ТОЛКОВАНИЯ (Ссылка)

  1. Индекс PSI < 0,1 без изменений. Вы можете продолжить использование существующей модели.
  2. Индекс PSI >= 0,1, но меньше 0,2 требуются небольшие изменения.
  3. PSI >= 0,2 требуются значительные изменения. В идеале модель больше не должна использоваться. Ее следует обучить заново / заменить другой.

Также можно использовать условный диапазон форматирования красную, желтую и зеленую зоны (Red-Amber-Green zone). Красный цвет тревожное состояние, при котором индекс PSI составляет более 20%, желтый это 1020%, при этом модель должна находиться под наблюдением, а зеленый это этап, на котором модель считается пригодной для использования, т. е. < 10%.

Теперь, исходя из варианта использования, эти пороговые значения корректируются в соответствии с актуальностью для бизнеса, но идея остается прежней следить за изменениями в популяции.

Индекс стабильности характеристик (CSI)


Эта характеристика отвечает на вопрос, какая именно переменная вызывает изменения в распределении популяции. Она сравнивает распределение независимой переменной в наборе оцениваемых данных с набором данных с этапа разработки, а также обнаруживает изменения в распределении входных переменных, которые оцениваются с течением времени.

Это помогает определить, какая изменяющаяся переменная в основном вызывает изменение метрик качества модели.


Когда эффективность модели ухудшается, проверка изменений в распределении переменных модели может помочь выявить возможные причины этого. Как правило, это делается после проверки, в результате которой выяснилось, что индекс PSI не находится в зеленой зоне (< 0,1 в целом). Таким образом можно проверить, какие переменные в основном задают распределение популяции.

Если хотя бы одна переменная значительно изменилась или если показатели нескольких переменных немного изменились, возможно, пришло время обучить модель заново или заменить ее другой.

При вычислении индекса CSI предпринимаются те же действия, что и при вычислении индекса PSI. Разница лишь в том, что решение принимается на основе значений выборки с этапа разработки для конкретной переменной (путем разбиения их на диапазоны и установки пределов этих значений в качестве пороговых значений). Затем при вычислении значений частот для любой валидационной / внеплановой (ООТ) выборки просто применяются те же пороговые значения к данным и вычисляются значения частоты (при помощи той же формулы, которую мы использовали при вычислении индекса PSI).

ТАБЛИЦА EXCEL ИНДЕКСА CSI


Изображение предоставлено автором

Таким образом, индекс PSI может помочь определить расхождения в распределениях популяций в целом, если они значительны, а индекс CSI может помочь еще больше сузить их до нескольких ответственных за это переменных.

Ссылка на исследование
Подробнее..

Data Analyst или Data Scientist кем бы вам хотелось быть?

10.07.2020 16:05:35 | Автор: admin
Каково находиться в каждой из этих ролей, рассказывает Matt Przybyla, автор статьи, опубликованной в блоге towardsdatascience.com. Предлагаем вам ее перевод.


Фото с сайта Unsplash. Автор: Christina @ wocintechchat.com

Мне довелось поработать и профессиональным аналитиком данных (Data Analyst), и исследователем данных (Data Scientist). Думаю, было бы полезно поделиться опытом по каждой должности, указывая ключевые различия в повседневных задачах. Я надеюсь, что моя статья поможет определиться, что подходит именно вам. А тем, кто уже работает, возможно, после прочтения захочется изменить свою должность. Некоторые начинают аналитиками данных, а затем переходят в исследователи. Не так популярен, но не менее интересен путь от исследователя на невысоких позициях до аналитика на позиции сеньора. Обе должности имеют свои особенности и требуют определенных умений, о которых необходимо знать, прежде чем сделать следующий большой шаг в профессиональном развитии.

Ниже я, опираясь на свой опыт, расскажу, что такое быть аналитиком данных и исследователем данных, и подробно отвечу на наиболее частые вопросы о каждой позиции.

Data Analyst


Если вы хотите описывать данные за прошедший период или текущий момент и презентовать стейкхолдерам ключевые результаты поиска, полную визуализацию изменений и тенденций, значит, вам подходит позиция аналитика данных. У упомянутых должностей есть общие черты, которые я описывал в другой статье, охватывающей сходства и различия между необходимыми для этих позиций навыками. Сейчас же я хочу показать, как роль аналитика данных в сравнении с ролью исследователя данных ощущается. Очень важно понимать, чего ждать этим специалистам в их повседневной работе. Аналитик будет взаимодействовать с разными людьми, много общаться и поддерживать высокий темп выполнения задач выше, чем требуется от исследователя данных.

Поэтому впечатления, получаемые на каждой из должностей, могут сильно различаться.

Ниже вы найдете ответы на самые частые вопросы о том, с чем сталкиваются аналитики данных.

  • С кем придется работать?

В основном со стейкхолдерами компании, которые запрашивают обобщение данных, визуализацию выводов и отчеты по результатам. Общение, как правило, устное или через цифровые каналы: электронную почту, Slack и Jira. По моему опыту, вам предстоит тесно взаимодействовать с человеческой и аналитической составляющими бизнеса, а не инженерной и производственной.

  • Кому предоставляются результаты?

Вероятнее всего, вышеупомянутым стейкхолдерам. Однако если у вас есть менеджер, вы отчитываетесь перед ним, а он уже передает данные стейкхолдерам. Не исключен и вариант, когда вы собираете пул запросов, составляете по ним отчет и презентуете стейкхолдерам. Для составления отчетов у вас могут быть такие инструменты, как Tableau, Google Data Studio, Power BI и Salesforce, которые обеспечивают легкий доступ к данным, например к файлам CSV. Другие инструменты требуют больше технических усилий составления расширенных запросов к базам данных с помощью SQL.

  • Какими будут темпы работы над проектом?

Значительно выше, чем у исследователей данных. Вы можете подготавливать несколько пулов данных (запросов) или отчетов ежедневно и крупные презентации с выводами еженедельно. Поскольку вы не строите модели и не составляете прогнозы (обычно), а результаты скорее описательные и ситуативные, работа идет быстрее.

Data Scientist


Исследователи данных довольно сильно отличаются от аналитиков данных. Они могут использовать одинаковые инструменты и языки, но исследователю приходится работать с другими людьми, над более крупными проектами (такими как создание и внедрение модели машинного обучения) и тратить на это больше времени. Аналитики данных обычно работают над своими проектами самостоятельно: например, использовать панель Tableau для презентации результатов может и один человек. Исследователи данных вправе привлекать нескольких инженеров и менеджеров по продукту для эффективного выполнения бизнес-задач с использованием правильных инструментов и качественных решений.

  • С кем придется работать?

В отличие от аналитика данных, вам предстоит взаимодействовать со стейкхолдерами только по некоторым вопросам, по другим же, связанным с моделями и результатами их использования вопросам вы будете обращаться к инженерам данных, инженерам по программному обеспечению и менеджерам по продукту.

  • Кому предоставляются результаты?

Вы можете делиться ими со стейкхолдерами, а также с инженерами, которым важно иметь представление о готовом продукте, чтобы, например, разработать UI (пользовательский интерфейс) в соответствии с вашими прогнозами.

  • Какими будут темпы работы над проектом?

Вероятно, самая большая разница в восприятии и функционировании этих должностей заключается в количестве времени на каждый проект. Скорость работы аналитиков данных довольно высока, а исследователям данных могут потребоваться недели или даже месяцы для завершения проекта. Разработка моделей и подготовка проектов исследователя данных это долгие процессы, поскольку они включают сбор данных, разведочный анализ данных, создание основной модели, итерирование, настройку модели и извлечение результатов.

Заключение



Фото с сайта Unsplash. Автор: Markus Winkler

Аналитики и исследователи данных пользуются одинаковыми инструментами, такими как Tableau, SQL и даже Python, но профессиональные задачи у них могут быть очень разными. Повседневная деятельность аналитика данных включает больше собраний и личного взаимодействия, требует прокачанных софт-скиллов и быстрого выполнения проектов. Работа исследователя предполагает более долгие процессы, общение с инженерами и менеджерами по продуктам, а также построение прогностических моделей, осмысляющих новые данные или явления в их развитии, тогда как аналитики фокусируются на прошлом и текущем состоянии.

Надеюсь, статья была интересной и полезной. Спасибо за внимание!
Подробнее..

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru