Использование Pydantic сегодня стало нормой, и это правильно. Но иногда на ревью вижу, что используют его не всегда корректно.
Например, метод BaseModel.model_dump() по умолчанию не преобразует стандартные типы, такие как datetime, UUID или Decimal, в простой сериализуемый для JSON вид. Тогда пишут кастмоный сериализатор для этих типов чтобы функция json.dump() не падала с ошибкой.
import uuid
from datetime import datetime
from decimal import Decimal
from uuid import UUID
from pydantic import BaseModel
class MyModel(BaseModel):
id: UUID
date: datetime
value: Decimal
obj = MyModel(
id=uuid.uuid4(),
date=datetime.now(),
value='1.23'
)
print(obj.model_dump())
# не подходит для json.dump
# {
# 'id': UUID('4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1'),
# 'date': datetime.datetime(2025, 12, 12, 12, 12, 12, 111111),
# 'value': Decimal('1.23')
# }
# добавляем свой кастомный сериализатор
json.dumps(obj.model_dump(), cls=MySerializer)
# {
# 'id': '4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1',
# 'date': '2025-12-12T12:12:12.111111',
# 'value': '1.23'
# }
В данном случае класс MySerializer обрабатывает datetime, UUID и Decimal. Например так:
class MySerializer(json.JSONEncoder):
def default(self, o):
if isinstance(o, Decimal):
return str(o)
elif isinstance(o, datetime):
return o.isoformat()
elif isinstance(o, UUID):
return str(o)
return super().default(o)
Специально для тех, кто всё еще так делает - в этом нет необходимости!
Pydantic может это сделать сам, просто нужно добавить параметр mode="json".
json.dumps(obj.model_dump(mode="json"))
# {
# 'id': '4f8c1bc4-25fd-40cd-9dbe-2c73639b0dc1',
# 'date': '2012-12-12T12:12:12.111111',
# 'value': '1.23'
# }
#pydantic#libs
#Москва или #remote
Маркетолог в онлайн-школу GET ART FIT
GET ART FIT – это онлайн-школа по комплексному построению карьеры художника: от составления портфолио и создания проектов до организации выставок в Москве и Санкт-Петербурге. Основные программы школы – это онлайн арт-резиденции, лекции и курсы
✨Задачи
— Разработка маркетинговой стратегии (в тч запуск новых продуктов), анализ воронок и сегментация клиентской базы (CRM: AMO / GetCourse);
— Проведение CustDev и выявление инсайтов для креативов и рекламных кампаний;
— Аудит сайта, обновление и создание страниц, вёрстка контента (отзывы, тексты, видео, боты, виджеты);
— Подбор площадок и планирование вебинаров, участие в проведении;
— Работа с партнёрами (блогеры и лидеры мнений) и юридическими задачами: согласование условий, составление ТЗ и таймлайнов;
— Планирование и вёрстка email-рассылок;
— Разработка автоворонок, чат-ботов, реферальной системы, настройка воронок под трафик (в связке с техспециалистами);
— Поиск релевантных каналов продвижения, создание Reels (сценарии), взаимодействие с блогерами, бюджетирование закупки трафика
Важно: не обязательно выполнять всё технические задачи самостоятельно, но важно уметь координировать и управлять процессом с тех специалистом
✨Требования
— Опыт в маркетинге от 2 лет
— Понимание основ интернет-маркетинга: ЦА, оффер, воронка, путь клиента.
— Умение работать с информацией: анализ, формулирование выводов, поиск решений.
— Навыки письменной коммуникации: грамотная и убедительная подача мыслей.
— Способность работать в команде: быстро включаться, слышать других, доносить свои идеи.
— Самоорганизация и ответственность: соблюдение сроков, инициативность, умение вести задачи в Trello/Notion.
Личностные качества:
— Высокая обучаемость и стремление к развитию.
— Предпринимательское мышление: «где рост?», «где деньги?», «что усилить?».
— Стремление брать инициативу и доводить до результата
✨Будет бонусом
• Проживание в Москве
• Опыт работы в онлайн-школах/ проектах
• Знание теории искусства (профессиональные курсы/ магистратура/ опыт работы в культурных институциях)
✨От команды
• Возможность участвовать в социально важном и нужном проекте, меняющем рынок искусства
• Удаленная работа
• З/п по результатам собеседования
⚡️ Откликнуться можно
На почту [email protected] с темой письма «Маркетолог», мотивационным письмом и небольшим рассказом о вашем опыте
Вакансия: Data Content Lead в JamesEdition
Слово @mara_dvch
Ищу человека на позицию Data Content Lead в свою команду маркетинга. Компания - JamesEdition.com, международный маркетплейс со специализацией на премиальной недвижимости. Компания основана в 2008 году, но сохраняет размеры (50+ сотрудников) и динамику роста стартапа. Горизонтальная структура, full remote, зарплата зависит от вашего местонахождения (индексируется по стране, в которой находится сотрудник), но всегда в рынке.
С компании есть русскоговорящие сотрудники, часть топ-менеджмента имеет опыт работы в России (например, в Avito). Но язык коммуникации в компании и создания контента - английский. Нужен С1 и выше: нужно будет редактировать не только правильность, но и tone контента.
От себя могу добавить, что нужен человек, который примет Data content stream в том виде, в котором он есть сейчас (проекту год), и будет с интересом развивать его дальше. Я бы очень хотела найти человека, который поможет мне сделать JamesEdition Data Insights саб-брендом компании.
Подробное опсание вакансии
Пожалуста, откликайтесь по ссылке, а потом можете написать @mara_dvch
#foreign
#remote
iPlayTech в Евросоюз на удаленку ищут дата специалиста по отчетам и таблицам! Excel, Google sheet, классно если какой-то биай знаете. Но работа непростая 😁
https://www.linkedin.com/jobs/view/4351868262
#foreign
#remote
Активный поиск продолжается!)
🗺 Data Visualization Analyst (Geo focus)
📍 Удаленка!
оформление - Казахстан/Узбекистан
Ищем аналитика, который умеет превращать геоданные в понятные визуализации. Фокус работы - помощь отделу маркетингу рассказывать понятным визуальным языком сложную информацию пользователям и клиентам.
Что нужно знать:
✅ ГИС-инструменты: QGIS, Mapbox, kepler.gl, deck.gl, Leaflet
✅ BI/веб-визуализация: Tableau, Superset, D3.js, Vega-Lite, Plotly, Flourish, Observable
✅ Python (GeoPandas, Shapely, Folium, Plotly) или SQL (PostGIS, ClickHouse, BigQuery GIS)
✅ Принципы проекций, кластеризация, H3, тепловые и плотностные карты
Будет плюсом: опыт в геоаналитике, data journalism, международных исследованиях, работе с открытыми данными и API (Google Places, OSM Overpass, HERE).
Подробнее о вакансии: https://docs.google.com/document/d/1DfRUuMTlnweIZuSNst73DbKdCepgaZPQDJK2fl2x94Y/edit?tab=t.0
📩 Пиши в Telegram: @hrmentor_23
#foreign
#remote
Подборка вакансий от DVS!
Virtual Data Entry / Typist – Remote at Global Staffing Inc | Toronto, ON
Data Visualization Engineer at Visa | Foster City CA, Austin TX, or Bellevue WA
Principal Scientific Software Engineer at Genentech | San Francisco, CA USA
#foreign
#remote
NTT DATA Europe & Latam ищут в Европе на удаленку датавиз спеца, чтобы в R и InDesign умел! Ммм! Как вкусно! 😍
https://www.linkedin.com/jobs/view/4036484448
#foreign
#remote
Подборка работы от DVS
Latest dataviz jobs
Research Analyst, Data Analytics Specialist at Center for Sustainable Energy | Remote
Tableau Developer at CUNY Institute for Implementation Science in Population Health | New York, NY
Senior Data Visualization Designer at Moody's Ratings | New York, US remote
#foreign
#remote
Не совсем датавиз но около того - мало ли кто захочет работать с прекрасной дата-артисткой Валентиной Д'Ефилиппо! И сделать ей красивущий веб сайт!
https://www.linkedin.com/posts/valentinadefilippo_freelancedesigners-webdesign-nocode-activity-7223718778050654208-KkNw?utm_source=share&utm_medium=member_desktop
#foreign
#remote
В штаты на удаленку ищут под проект GIS и датавиз спеца!
https://phg.tbe.taleo.net/phg02/ats/careers/v2/viewRequisition?org=SOCIIMPA2&cws=39&rid=4885
За добычу спасибо @voodoo_woodpecker🤗
#foreign
#remote