ar
Feedback
дата инженеретта

дата инженеретта

الذهاب إلى القناة على Telegram

мелкое — крупно, в глубоком разговоре мудрость приходит по вопросам сюда: @aigul_sea

إظهار المزيد
3 427
المشتركون
+324 ساعات
+97 أيام
+2330 أيام
أرشيف المشاركات
Как забытый ON CLUSTER поставил меня в тупик Я создала таблицу ReplicatedReplacingMergeTree, потом переделала на обычный ReplicatedMergeTree. Дропнула таблицы, но тупо забыла ON CLUSTER, и вот что из этого вышло 🫤 Запускаю загрузку, она падает, я чищу табличку и гружу заново. Казалось бы, проблемы больше нет? Сверяюсь по каунтам - сильно отличается. Снова перезагружаю - вообще другие каунты стали. Что происходит? Смотрю инфу по репликам:

SELECT hostName(), pid, count()
FROM clusterAllReplicas('default', schema.table)
GROUP BY hostName(), pid
ORDER BY pid, hostName();
На двух хостах сходится, на третьем сильно меньше данных и вообще нет большого куска, при этом все цифры разъезжаются с источником… Я делаю truncate - а с третьего хоста данные вообще не удаляются. Делаю truncate sync - снова ничего не происходит. SYSTEM SYNC REPLICA schema.table - то же самое 🤔 Иишка советует заглянуть в system.distributed_ddl_queue - но там все Finished. Потом смотрю zookeeper_path:

SELECT
  hostName(),
  zookeeper_path,
  total_replicas,
  active_replicas,
  last_queue_update_exception
FROM clusterAllReplicas('default', system.replicas)
WHERE database = 'schema'
     AND table = 'table';
Первые 2 хоста в одной репликационной группе: /clickhouse/tables/9e0fe594-04f6-41ad-8137-385f08c2fbe5/shard1 total_replicas = 2 А третья живет отдельно: /clickhouse/tables/faee8477-d2a6-47c9-8cc9-8a3f44972612/shard1 total_replicas = 1 Дальше смотрю DDL на разных хостах:

SELECT hostName(), create_table_query
FROM clusterAllReplicas('default', system.tables)
WHERE database = 'schema'
AND name = 'table';
Первые две - ReplicatedReplacingMergeTree Третья - ReplicatedMergeTree Поверх этих таблиц еще была Distributed, а она читает табличку на основе параметра load_balancing:

SELECT value
FROM system.settings
WHERE name = 'load_balancing';
В моем случае там был random, и он постоянно возвращал данные с третьей реплики (кроме random, есть еще несколько) А почему данных на третьей реплике было меньше? Все еще помните про самый первый процесс, который упал? Так вот он записал кусок данных, но почистить их кх уже не смог. А при следующем запуске запись пошла в другую реплику В общем, два забытых слова привели к тотальной смеси двух миров @data_engineerette

В начале лета я рассказывала, как начала проходить курс по алгосам, сейчас делюсь с вами промежуточными впечатлениями🙂 👩‍💻 Первый месяц я активно садилась за задачи раз или два в неделю - этого было вполне достаточно. Сам смысл курса подается не как "пока самостоятельно не решите 100 задач на литкоде, из-за компа не выходите", а как "сначала смотрим объяснение и решение, потом идем кодить, если не запомнили - смотрим еще раз и повторяем" В рамках одного 10-минутного видоса разбирается одна задача, иногда с несколькими вариантами решения, в конце анализируется сложность по времени и памяти. Что я заметила - когда мне голосом объясняют суть задачи, мне становится в разы понятнее. Поэтому мой типичный флоу занятий такой: я смотрю 1-2 минутки с объяснением условия, иду решать сама, потом досматриваю С какого-то момента действительно появился азарт, хочется решить как можно больше задач до момента усталости) Пока я отметила для себя всего 2 задачки, которые вызвали трудности, и я оценила их по сложности на 5/10 по сравнению со всеми остальными 📊 Для трекинга прогресса нам рекомендовали завести гугл табличку с решенными задачами, затраченным временем и комментами. Я туда еще вписываю свои впечатления по задаче, новые синтаксические конструкции и инсайты после объяснений. Пока из интересного - идея с выделением виртуального места в массиве, иногда полезно идти с конца, также понравился мой собственный подход с просмотром только 1/4 матрицы 📞 Лайв созвоны случаются в конце спринта, где кураторы вместе с учениками разбирают задачи на самостоятельное прорешивание, отвечают на вопросы. Но вопросы можно задавать и в чатике, там все очень активные, периодически кураторы присылают разборы на задачи с собесов В июле с отпусками я подзабросила курс🤩 В текущем спринте начали темы связных список и стека, но я надеюсь быстренько все догнать @data_engineerette

Походу салон нанял себе дата аналитика🤭 Или можно подключить аналитику у самого сервиса по записи? В любом случае я теперь п
Походу салон нанял себе дата аналитика🤭 Или можно подключить аналитику у самого сервиса по записи? В любом случае я теперь переживаю, что, если не запишусь сейчас, кому-то на дейли придется объяснять просадку retention rate😕 @data_engineerette

Как разогнать Lakehouse-ный S3 в 3 раза? 18 августа VK Tech проводит митап про платформы данных. И там будет интересный кейс
Как разогнать Lakehouse-ный S3 в 3 раза? 18 августа VK Tech проводит митап про платформы данных. И там будет интересный кейс Авито про ситуацию, когда производительность дата-платформы упирается не в движок, а в S3 🙂 Их аналитическая платформа работает на Trino и Vertica поверх Hive-каталогов, а данные лежат в S3 на HDD. Доступная конфигурация S3 уперлась в предел масштабирования и 20 ГБайт/с на чтение. Что придумали: 🤩взяли три S3 кластера 🤩распределили объекты каждой таблицы между ними по хешу пути 🤩превратили существующие HAProxy-сайдкары на compute-нодах в stateless-шардирующий прокси 🤩каждая нода стала сразу ходить в нужный S3 без отдельного proxy layer В итоге пиковую скорость чтения увеличили с 20 до 60 ГБайт/с🚀 На митапе Дмитрий Листвин из Авито расскажет, как они писали расширение HAProxy на Lua, реализовали ListObjects и DeleteObjects, какие проблемы собрали и как теперь решардируют и эксплуатируют эту конструкцию. Еще будет доклад Павла Кутакова из VK Tech про архитектуру VK Data Platform гиперконвергентной дата-платформы на k8s: управление СУБД и сервисами, отказоустойчивость, сеть, безопасность и наблюдаемость. А после инженеры RWB и VK Tech разберут подготовку сегментов для таргетинга на Trino и DataFusion и обсудят, как AI-агенты и новые типы нагрузок изменят платформы данных. И куда же без нетворкинга, пиццы🍕 и приятных напитков 🍺 📅 18 августа, сбор в 17:30 📍 Москва, БЦ «Скайлайт» 💻 Можно подключиться онлайн 🚀 Регистрация тут: https://vk.cc/d0fvkw?erid=2VtzqvrCo3H

Анти чек-лист работы в DE По ходу жизни собрала список того, что мне не очень нравится в работе. И вот что в него вошло: 1️⃣К
Анти чек-лист работы в DE По ходу жизни собрала список того, что мне не очень нравится в работе. И вот что в него вошло: 1️⃣Канбан У вас нет пула задач на ближайшее время. К вам могут приходить аналитики и менеджеры с адхоками, которым нужны отчеты еще вчера. Вы не можете спокойно распределить время на свои задачи. В канбане будут всегда прилетать новые задачи, которые нужно взять, как только закончите предыдущую. И вместе с этим постоянное ощущение напряга 2️⃣ Проектная работа Проекты заканчиваются. Допустим, он длится год, потом вам обещают найти другой. А если проект свернут раньше года? А если другой проект не найдется? 3️⃣ Срочный трудовой договор Он может быть короче даже самого проекта. А если договор не продлят? Не проще ли сразу найти нормальное место и не жить в страхе от приближения того самого дня? 4️⃣ Ты - единственный DE Я в такое лезть не пробовала, но внутренне становится некомфортно. Представь, у тебя больше нет DEшной экспертизы в команде. Если не получается - надеешься только на себя (ну и на иишку) 5️⃣ В стеке только 3 инструмента На рынке де столько всего требуется, как потом красиво преподать свой опыт, когда ты все последнее время писал только SQL и YAML? 6️⃣ Очень сложные задачи А это я бы назвала другой крайностью 5го пункта) Делать настолько уникальное, что в других местах абсолютно не нужно. Или просто лично для меня непонятное, например, писать заливку данных на Rust 7️⃣ Уникальный стек Молодец, ты освоишь инструмент, который нигде больше не используется 8️⃣ Нет созвонов Вот вообще. Хотя бы раз в несколько дней. Просто заканчиваешь одну задачку и берешь следующую. В такие моменты складывается ощущение, что члены команды между собой не общаются. У кого-то такой подход может вызывать лишь восторг) Но для меня общение с коллегами - реально важная часть и чего не хватает на удаленке 9️⃣ Нет чатика с мемами Это тоже в тему общения с командой и создания более прочных коммуникативных связей 💫💫💫💫💫💫💫💫💫💫💫 Здесь я привела свое субъективное мнение, вы можете поспорить или дополнить своими пунктами🥺 @data_engineerette

Lakehouse для аналитиков и инженеров данных Приглашаем изучить популярный подход построения хранилищ данных Data Lakehouse c
Lakehouse для аналитиков и инженеров данных Приглашаем изучить популярный подход построения хранилищ данных Data Lakehouse c разделенным Compute и Storage на основе Iceberg и Trino.  В программе курса: • Современная архитектура аналитических систем от DWH и Data Lake до Lakehouse с разделением Compute и Storage на базе Apache Iceberg и Trino • Iceberg: управление файлами, снимками, каталогами, схемами изменений и очисткой.  • Практическое использование Iceberg Catalog, работа с кластером Trino (на Kubernetes), подключение данных на S3 и выполнение SQL/ Python-запросов. • Работа с Iceberg+Trinо на больших масштабах: сложные запросы к датасету TPC-DS (2.8 млрд строк), интеграция с DBT, Apache Airflow, оценка производительность систем.  • Построение пайплайнов, инструменты  для корректной поддержки, обновления и масштабирования Lakehouse-инфраструктуры на уровне предприятия.  Кто мы: R&D-центр Devhands, наш канал. Автор курса — Алексей Белозерский, CDO в inSales (Сбер 2B), ex: VK Tech, М.Видео, Эльдорадо 🗓 Старт курса: 27 августа Изучить программу и записаться можно здесь. Ждём вас! Реклама. ИП Рыбак А.А. ИНН 771407709607 Erid: 2VtzquZf5с8

Ребят, а тут есть такие, кто идет на дата конфу в Лондоне? https://www.bigdataldn.com Она бесплатная, нужно просто прилететь�
Ребят, а тут есть такие, кто идет на дата конфу в Лондоне? https://www.bigdataldn.com Она бесплатная, нужно просто прилететь🙂 По темам очень похоже: лейкхаус, AI агенты, data fabric, data governance. И сессии от топовых компаний: Databricks, Microsoft, Google, JetBrains, dbt Labs, Snowflake… Я вот зарегалась и даже на некоторое время задумалась над подачей визы🤭 Но потом как вспомнила, что ИМЕННО В ЭТИ ДАТЫ у меня конфа в Москве Так что ищу шпиониро😎 Полную программу конференции можно хотя бы полистать тут @data_engineerette

Более 30 лидеров IT-индустрии поделятся практическим опытом управления командами, отдельными сотрудниками и ИИ-агентами — на
Более 30 лидеров IT-индустрии поделятся практическим опытом управления командами, отдельными сотрудниками и ИИ-агентами — на конференции для тимлидов TEAM LEAD TODAY 2026. Мероприятие пройдет 10 сентября в Москве (ВДНХ, Бизнес.Техноград). В числе спикеров — эксперты компаний Сбер, Газпромнефть, Альфа Банк, Гринатом, Шереметьево Хэндлинг, Билайн, Positive Technologies, Skillaz, Herbarium Games и многих других. 500+ участников | 30+ спикеров | 10 часов нетворкинга TEAM LEAD TODAY объединит лекторий и несколько интерактивных форматов, позволяющих участникам обмениваться рабочими инструментами, инсайтами и применять новые знания сразу на практике. В программе: кейсы спикеров, панельные дискуссии, битва промптов, живое ревью, собеседование на скорости, speed networking, карьерные консультации, сложная 1:1, peer-to-peer круглый стол и многое другое. TEAM LEAD TODAY — площадка, где обсуждают, как строить эффективные команды, управлять сложными проектами, развивать ИТ-культуру и совмещать техническую экспертизу с лидерскими качествами. Присоединяйтесь к встрече лидеров ИТ-индустрии, чтобы научиться принимать решения увереннее, управлять смешанной командой из людей и ИИ-агентов и приобрести новые профессиональные связи в неформальной атмосфере. TEAM LEAD TODAY 2026 | Кейсы и практика для тимлидов 🗓 10 сентября 2026 📍 Бизнес.Техноград | Москва Подробности и регистрация на сайте teamleadtoday.ru Ловите скидку 25% на билеты — по промокоду DATAE25

пупупу у меня всего 9 с половиной😚
пупупу у меня всего 9 с половиной😚

Отгадайте с первой попытки, за какой это было период и что случилось😁😁 @data_engineerette
Отгадайте с первой попытки, за какой это было период и что случилось😁😁 @data_engineerette

Если хочешь развиваться в бэкенд-разработке — выстроить сильную базу, углубиться в архитектуру или перейти в роль тимлида — в
Если хочешь развиваться в бэкенд-разработке — выстроить сильную базу, углубиться в архитектуру или перейти в роль тимлида — в Центральном университете (ЦУ) есть магистратура под каждый сценарий. И на нее можно получить грант до 75%. Места ограничены, дедлайн подачи заявок — 20 августа. «Бэкенд-разработка» — это офлайн-направление (пары по вечерам и в выходные в центре Москвы) с тремя треками на выбор: ⚫️Технический — для студентов старших курсов и разработчиков в начале карьеры. Языки программирования, DevOps-инструменты, базы данных, архитектура ПО и распределенные системы. Программа ежегодно обновляется под реальные запросы компаний, а преподают разработчики, тимлиды и CTO из ведущих IT-компаний. К выпуску — сильное портфолио бэкенд-проектов ⚫️Совместный с MAGNIT TECH — обучение на реальных кейсах и архитектуре распределенных систем федерального масштаба, буткемп с экспертами компании и возможность выйти на оплачиваемую стажировку в техническую команду в течение первого года ⚫️Тимлидский — для опытных разработчиков, которые хотят перейти к роли руководителя команды: выстраивать процессы разработки, принимать архитектурные решения и развивать команду Магистратура в ЦУ — это 2 года обучения, которое можно совмещать с работой, и диплом государственного образца. Карьерная поддержка начинается еще во время учебы: консультации, тренировочные собеседования и помощь с трудоустройством. Студенты уже в процессе обучения выходят на новые позиции или повышаются в грейде в Яндексе, Авито, Т-Банке и других компаниях. 🏆Поступление проходит через грантовый конкурс — это одновременно способ попасть на программу и возможность выиграть финансовую поддержку на все время обучения: грант покрывает до 75% стоимости. В 2026 году доступно 550 грантов на все программы магистратуры. Подробнее о программе и условиях участия в конкурсе — по ссылке

Сеньорские вопросы 🤵 Чем круче вы становитесь, чем в более highload сторону вы идете, чем быстрее развиваются ллмки, тем вопросики к вам становятся все серьезнее Собрала для вас подборку таких вопросов по технологиям: ✨ Spark Из чего состоит executor memory? Что такое spark.memory.storageFraction? В чем разница между Sort-Merge Join и Broadcast на маленькой таблице? Каким образом уменьшить количество шафла? Зачем нужен data spill? Как работает AQE? Какие проблемы спарка в кубере? 🧊Iceberg Как айсберг работает с параллельным изменением одного файла и нескольких? Почему при записи из старой таблицы в новую в айсберге джоба бежит очень долго?  Почему при перекладке в айсберг забивается кэш? Какие проблемы с айсбергом, кроме maintenance? 🌺 Airflow, Python Что такое TYPE_CHECKING? Как добавить шаблонизированное поле, если оператор не поддерживает jinja? Что такое dynamic task mapping? 🖥 ClickHouse Если данные писались в одну ноду клика, то при ее падении какие данные будут лежать на остальных? Какие проблемы с Replacing Merge Tree при вставке 5тб данных? 300 колонок, 8 ключей - в чем проблема такого подхода и как лучше поменять? 🧘Kafka Как интеграция Spark-Kafka умеет обеспечивать exactly once? Как будет читать спарк из кафки, если 10 коров, 5 партиций? Сколько будет простаивать экзекьюторов? Как будет читаться таблица в спарке, если 1ТБ один файл, 20 коров? Сколько будет простаивать экзекьюторов? Как будут читать 10 инстансов приложения из 5 партиций? @data_engineerette

Всем привет! Возвращаюсь на связь, на прошлой неделе была в отпуске😌 А пока на нашем рынке я такого не видела, но на зарубеж
Всем привет! Возвращаюсь на связь, на прошлой неделе была в отпуске😌 А пока на нашем рынке я такого не видела, но на зарубежном после HR-интервью присылается очень подробное и информативное саммари: о чем говорили, что нужно спросить в следующий раз, ваши плюсы/минусы, соответствие вакансии @data_engineerette

Системный аналитик помогает бизнесу и разработке говорить на одном языке: разбирает задачи компании, описывает требования, пр
Системный аналитик помогает бизнесу и разработке говорить на одном языке: разбирает задачи компании, описывает требования, проектирует IT-решения и следит, чтобы система работала на реальные цели бизнеса. Онлайн-магистратура СПбГУ и Нетологии «Системный анализ и интеллектуальные системы управления бизнес-процессами» готовит специалистов на стыке IT и управления. В программе сочетаются академическая база СПбГУ и прикладные инструменты Нетологии. Студенты изучают математическое моделирование, алгоритмы, системный анализ, Python, BI-системы, no-code-инструменты, управление проектами и подходы к внедрению искусственного интеллекта. Такой набор навыков помогает работать со сложными бизнес-процессами: находить узкие места, снижать риски при разработке, формулировать требования к системам и сопровождать внедрение IT-решений. Обучение проходит полностью онлайн. После выпуска вы получаете диплом магистра СПбГУ очного образца по направлению «Прикладная информатика». Подробнее о программе Реклама. ООО “Нетология” ОГРН 1207700135884 Erid: 2VSb5yo9LAn

Кажется, я уработалась😕 Это моя первая мысль, как только я села в такси
+1
Кажется, я уработалась😕 Это моя первая мысль, как только я села в такси

Раскрываю тайну Наверняка у многих был такой момент, что вы заходите в YARN, находите Hive-запрос, хотите в него провалиться,
Раскрываю тайну Наверняка у многих был такой момент, что вы заходите в YARN, находите Hive-запрос, хотите в него провалиться, но Tez UI недоступен? Теперь вы знаете, как он выглядит @data_engineerette

Пойдемте прокачиваться 🧐 Кажется, многие айтишники в какой-то момент приходят к одной мысли: хочется не только писать код и
Пойдемте прокачиваться 🧐 Кажется, многие айтишники в какой-то момент приходят к одной мысли: хочется не только писать код и закрывать задачи, но и делиться опытом, влиять на развитие профессии и видеть результаты своей работы в людях Чтобы это все реализовалось, в Центральном университете придумали фаст-трек для будущих преподавателей направления «Разработка» Всего за одни выходные, 27 и 28 июня, вы пройдете основные этапы найма: 📍техническое интервью с действующим преподавателем 📍пробное 20-минутное занятие Что такое Центральный университет? Это вуз нового типа, открытый при поддержке Т-Банка, Яндекса, Авито и более 60 других партнеров. Здесь преподают более 600 специалистов из ИТ-индустрии и преподавателей ведущих университетов страны, а учатся более 2200 студентов. Что важно: ✨преподавание можно совмещать с основной работой ✨подберут удобное расписание ✨опыт преподавания необязателен, подойдет любой софтовый, например, менторство или выступления на митапах ✨на старте все расскажут и подскажут Кого ждут: 📍мидлов с уверенными знаниями Python, Java или фронтенд-разработки 📍сеньоров в инфраструктуре, инжиниринге данных и архитектуре решений 📍 Встречаемся 27–28 июня, онлайн и в кампусе Центрального университета (м. «Маяковская») Регаемся тут до 24 июня

Data + AI 🍿 Вчера-сегодня проходит Data + AI Summit от Databricks. Основная суть — как работать с данными в эру AI, реклама
+5
Data + AI 🍿 Вчера-сегодня проходит Data + AI Summit от Databricks. Основная суть — как работать с данными в эру AI, реклама собственных разработок, интервью с партнерами и крупными пользователями, кейсы применения сервисов Меня больше всего поразило — как они красиво говорят, у них такая чистая четкая речь и акцент, как на аудировании😍 И больше 30к людей в офлайне!! Есть очень много интересных моментов, которые я пометила себе: 🤩Аннонсировали Lakehouse//RT на собственном движке Reyden, который возвращает результат на огромном объеме данных за мс и не требует перекладки данных в отдельную бд под дэши (красивые графички тут) ✨✨ 🤩Обсуждали Lakebase — это постгря как движок над s3. Чтобы опять-таки хранить данные в одном месте, а не перекладывать из OLTP в OLAP-системы🤪 🤩LTAP (Lake Transactional/Analytical Processing) = Lakebase + Lakehouse. Данные пишутся строками => строки конвертятся в столбцы => чтение по столбцам. Правда, нам не сказали, насколько эта конвертация затратна❓ 🤩На сцене побывал Ryan Blue, один из главных создателей Iceberg. Он сказал, что в Databricks уже поддерживается iceberg v3, где одна из фич — это кросс-поддержка iceberg+delta lake, которые на диске лежат одинаково, и не надо ничего переписывать при смене формата. А к концу q4 или чуть позже уже выйдет iceberg v4 🤩Genie One + Genie Ontology — чат-бот, дополненный глоссарием/знаниями предметной области компании на основе графов + коннектов к гугл драйв/почте/и т.д. А еще он умеет чекать пермишены к данным перед тем, как вернуть ответ. А агентов можно шерить с коллегами✨ 🤩Добавляется отдельный агент Genie ZeroOps, который постоянно следит за кластером. Если в 2 часа ночи упал пайплайн, он пойдет искать причины по линейджу всех зависимостей, внесет изменения в код, потестит в песочнице, подготовит фикс и отправит алерт о готовности. Вам остается только аппрувнуть✨✨ 🤩Omnigent — платформа, где можно миксовать несколько моделек, чтобы они делали разные операции. Это называется "meta-harness" 🤩В Uber за 1 квартал потратили годовой бюджет на AI 🤩Pepsico — один из пользаков, у которых раньше было 600 дата лейков😳 🤩Databricks заколлабились с OpenAI (приходил кофаундер Greg Brockman), чтобы их модельки забустили дата-сервисы @data_engineerette

Hive vs HMS
HMS - Hive Metastore
Я долгое время вообще не знала про существование HMS. Для меня HMS и Hive шли неразрывно, и я не отличала одно от другого. Я же такая не одна, да?🌸 Но в один момент до меня дошло, что: 🤩Hive - это движок, который через синтаксис SQL (HiveQL) умеет ходить к данным. Мы пишем запросы как будто в обычной бд, но они становятся MapReduce/Tez/Spark задачами и ходят в файлики 🤩HMS - это каталог метаданных: схема таблиц, пути к файлам, типы данных, партиции и т.д. Ему для работы нужна бд. Чаще всего это PostgreSQL, MySQL Для работы Hive обязательно нужен HMS А вот сам HMS может использоваться и отдельно - с тем же Spark, Trino, Impala 🧊В контексте Iceberg мы используем HMS как технический каталог. Например, чтобы понимать, что таблице db.orders соответствует файл 000-asdkd27sn.metadata.json Подробнее про внутрянку hms я рассказывала здесь Про каталоги — тут @data_engineerette

Кажется, каждую неделю появляется новый пост о том, как ИИ скоро заменит аналитиков Но если внимательнее посмотреть на ситуацию, становится понятно: происходит совсем другое. Компании по-прежнему ищут специалистов по данным. Просто меняются требования. Все меньше ценится умение выполнять одну конкретную задачу и все больше — способность видеть весь процесс работы с данными и понимать, как отдельные инструменты помогают решать бизнес-задачи. Поэтому сегодня вопрос уже не в том, «заменит ли меня ИИ». Гораздо полезнее спросить себя: какие качества будут особенно востребованы, когда ИИ станет привычным рабочим инструментом? 16 июня пройдет бесплатный вебинар «День открытых дверей с Анатолием Карповым», где разберут, как трансформируются профессии в сфере данных, какие компетенции усиливают ценность специалиста и на что уже сейчас не стоит делать основную ставку. Узнайте, как меняется отрасль и что поможет оставаться востребованным специалистом в ближайшие годы: https://clc.to/erid_2W5zFHPhnA5 Реклама. ООО «КАРПОВ КУРСЫ». ИНН 7811764627. erid: 2W5zFHPhnA5