Как стать автором
Обновить
Сначала показывать

Количественные исследования в продуктовом дизайне: как данные кормят бизнес в сфере недвижимости

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров276

Давайте поговорим о том, что лежит в основе любого успешного цифрового продукта — о данных, которые становятся «хлебом насущным» для бизнеса. Именно они помогают компаниям не просто выживать, но и расти, превращая гипотезы в прибыльные решения. В этой статье мы разберём, как количественные исследования в продуктовом дизайне становятся инструментом, который не только улучшает пользовательский опыт, но и напрямую влияет на ключевые бизнес-метрики в сфере недвижимости.

Вникнуть

Переходим от legacy к построению Feature Store

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров1.7K

Невероятная история о том, как внедрить систему Feature Store в проект с огромным legacy и получить профит.

Привет, Хабр! Меня зовут Евгений Дащенко, я из компании «Домклик», которая решает все вопросы, связанные с недвижимостью, включая оценку стоимости недвижимости любого типа. Это статья по мотивам моего доклада на конференции Highload++ про интерфейс между данными и ML-моделями Feature Store: как мы сделали его с нашей командой, каких результатов добились и с какими подводными камнями столкнулись на пути.

Читать далее

Альтернатива Zod размером 1 КБ

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров2.6K

19 марта 2025 года вышла стабильная версия Valibot — библиотеки для валидации данных в JavaScript/TypeScript. Разработанная как альтернатива популярному Zod, она сочетает минималистичный дизайн с мощными возможностями.

В этой статье мы сравним Valibot и Zod по трём ключевым параметрам: синтаксису API, размеру библиотеки и скорости работы. Вы узнаете, чем эти решения отличаются друг от друга и почему стоит использовать специализированные инструменты валидации входящих данных.

Читать далее

Проектируем собственную inhouse Feature Platform

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров1K

Всем хорошего дня! На связи с вами Домклик #MLOps, и эта статья будет полезна тем, кто интересуется построением внутренней платформы.

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

Как спроектировать такую платформу самостоятельно и что важно учесть в требованиях, чтобы она действительно работала?

Скорее читать

SSG своими руками

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров3.7K

Привет, Хабр!

Сегодня я хочу поделиться с вами руководством, как реализовать Static Site Generation (SSG) в React без использования сторонних фреймворков, таких как Next.js, TanStack Start, React Router и им подобных. Сразу оговорюсь: я не считаю их чем-то «плохим» и не агитирую против их применения. Всё гораздо проще: иногда по тем или иным причинам нет возможности использовать эти инструменты, или самостоятельная реализация оказывается предпочтительнее из-за количества изменений в кодовой базе.

Если вам интересна тема стратегий рендеринга веб-приложений, то прошу под кат.

Читать далее

Как мы тестируем дизайн внутренних продуктов и почему это влияет на ипотеку

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров870

Привет! Меня зовут Сергей, я дизайнер в команде, которая делает внутренний инструмент для сотрудников ДомКлик — тех, кто каждый день работает с клиентами и помогает им оформить или сопроводить ипотеку.

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

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

Читать далее

Как мы прикрутили RAG для интент-классификации, или Трудности перевода на LLM-ский

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров5.1K

И не опять, а снова — про этот ваш RAG. Многие продуктовые команды сейчас пробуют приспособить его для своих задач — и мы, команда Speech&Text в компании Домклик, не избежали этой участи. Но не (только) потому, что это модно и молодёжно — попробовать RAG‑подход нас побудила необходимость решить определённые насущные проблемы. Что же это за проблемы, как мы встраивали RAG и что из этого получилось? Если интересно узнать, то милости просим в текст :-)

Читать далее

Хоть и безобразно, но единообразно

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров6K

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

Читать далее

Тайны рейтингов: как добиться стабильно высокого рейтинга Android-приложения?

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2.1K

По данным исследований (Data.ai, Sensor Tower, Statista), Android-приложения имеют на 10-30 % более низкие оценки, чем iOS-аналоги. Например, приложение может получить 4,5 на iOS и 3,5-4,0 на Android.

Меня зовут Анастасия Симонова, я Android-разработчик в команде Домклик. Поделюсь нюансами разработки под Android и предложу некоторые решения для избежания проблем в будущем. Готовы? Приступим!

Читать далее

Безопасное взаимодействие с API: от ошибок к стабильности

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров1.9K

Каждый frontend-разработчик сталкивался с ошибкой вида TypeError: Cannot read property 'name' of undefined. Это часть целого класса ошибок в JavaScript, возникающих из-за несоответствия фактического формата данных ожидаемому. В этой статье расскажу, как избавиться от подобных проблем и добиться стабильности, внедрив три ключевых шага: API-слой, Backend-for-Frontend (BFF) и проверку с помощью Zod.

Читать далее

Погружение в мир Lint'a в Android-проекте (часть 2)

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров1.5K

Продолжим рассматривать различные нюансы статического анализа с помощью Lint. Опираться будем на предыдущую статью. С момента её публикации прошло много времени, за которое вышло несколько значимых обновлений Android Gradle Plugin (а с ним и всех артефактов линтера), а также вторая версия Kotlin с новым компилятором. Вкратце рассмотрим наиболее заметные для нас изменения с небольшими примерами. Кроме того, удалось найти что-то похожее на полноценную документацию по lint (правда, редко обновляющуюся), наиболее интересные моменты оттуда тоже рассмотрим.

Читать далее

Нейроисследования в работе UX-редактора: выводы учёных, которые улучшат тексты вашего продукта

Время на прочтение5 мин
Количество просмотров3.8K

Привет всем. Это Маша Русскова — UX-редактор Домклик. Я отвечаю за интерфейсные тексты. На пересечении нейробиологии, маркетинга и дизайна начинается поле для дискуссии о том, насколько исследования когнитивных функций применимы к пользовательскому опыту. Делюсь подборкой интересных исследований о текстовом наполнении интерфейсов, результаты которых можно запросто использовать для проектирования ваших цифровых продуктов. Даже если в вашей команде нет UX-редактора. Поехали?

Читать далее

Разработка плагина для Android Studio

Время на прочтение10 мин
Количество просмотров2.8K

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

Читать далее

Как выстроить работу команды продуктовых дизайнеров, не привлекая внимания санитаров

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров1.1K

Привет! Меня зовут Артём Литвин, последние три года я работаю дизайн-лидом в компании Домклик и руковожу командой из девяти продуктовых дизайнеров. Хочу поделиться своим опытом, как выстроить эффективную работу в дизайн-отделе. Мы рассмотрим три ключевые темы, которые могут помочь улучшить работу в вашей команде:

— Продуктовые активности: как делать продукты лучше.

— Коммуникационные активности: как дизайн‑отделу работать слаженно и с удовольствием.

— Форматы коммуникации: как эффективно доносить информацию и обмениваться идеями.

Читать далее

Витрина компонентов, или Единая точка правды в дизайн-системе. Часть 2

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров584

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

Интересно, что в финале написания статьи я поняла, что всë написанное, можно смело применять к любому своему проекту! :)

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

Читать далее

Opensearch, Logstash и dynamic mapping

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2K

У нас в Домклик огромное количество микро-сервисов, около 5000. Все они пишут какие-то логи. В этой статье я хочу рассказать о том, как у нас в компании настроен маппинг в индексах Opensearch и какие "фишки" мы используем, чтобы минимизировать работы по настройке маппинга.

Читать далее

Знакомство с FEEL в Camunda 8

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров984

Язык FEEL (Friendly Enough Expression Language) — мощный инструмент для упрощения работы с бизнес‑процессами в Camunda 8. Он предоставляет удобные и интуитивно понятные средства для создания выражений, которые могут использоваться как представителями бизнеса, так и разработчиками. В этой статье мы рассмотрим, как FEEL применяется в BPMN‑схемах, DMN‑таблицах и скриптовых задачах, а также обсудим его влияние на производительность и удобство разработки.

Читать далее

Рекурсивные запросы в SQLAlchemy

Время на прочтение18 мин
Количество просмотров4.4K

Когда возникает необходимость работать с иерархической структурой данных, кажется, что решение давно найдено, ведь подобные задачи уже неоднократно решались. Возможно, даже выбран инструмент, например, Python и SQLAlchemy. Однако, углубляясь в задачу, понимаешь, что вариантов множество, даже в вопросе, как извлечь данные из базы: использовать стратегию selectin для загрузки родительских элементов? Или, возможно, стоит применить joinload? А может, лучше воспользоваться CTE‑запросами, которые рекомендуются в 90% статей? Но насколько CTE действительно эффективно по сравнению с другими методами? Более того, большинство примеров рассматривают ситуации в идеальных условиях, далёких от реальных проектов.

В этой статье я рассмотрю основные способы получения иерархической структуры из БД на примере реального многослойного приложения с использованием SQLAlchemy 2.0. Как обычно, есть важные нюансы, о которых редко упоминают, хотя они весьма любопытны. В завершение проведу сравнение производительности всех описанных подходов.

Погружаемся

Дегустируем Rspack

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2.3K

В последнее время язык программирования Rust находится на самом гребне волны хайпа. То тут, то там пестрят такие заголовки: «делаем на раст some_gnu_cli_utility», «Rust‑реализация привычной программы», «давайте перепишем на Rust ВООБЩЕ ВСЁ». Мне и самому очень нравится этот язык, и рост его популярности считаю вполне заслуженным. Несмотря на крутую кривую обучения и весьма высокий порог входа, в Rust правильно сделано если не всё, то почти всё. Многие языки годами и десятилетиями шли к тому, что «крабоводам» предлагалось «из коробки» на заре истории Rust.

Эпоха, когда во фронтенд‑экосистеме раз в неделю появлялся новый JS‑фреймворк, канула в Лету. На дворе 2024-й, теперь раз в неделю появляется новый бандлер, причём зачастую написанный именно на Rust (например, Turbopack, Rolldown, Farm и Mako от китайских товарищей). В этой статье я хочу опробовать в действии наиболее многообещающий из них — Rspack. Он позиционируется как быстрый сборщик, имеющий полную обратную совместимость с Webpack. Разработчики Rspack несколько месяцев назад выпустили стабильную мажорную версию (1.0) и продолжают активно развивать проект.

Что ж, давайте его попробуем. В качестве подопытного кролика возьмём не очередной Hello World, специально заточенный под бенчмарки, а реальный сложный проект, в котором есть:

— четыре режима сборки Webpack;

— сложная предметная область и, соответственно, сложная логика;

— 550+ React‑компонентов.

Кстати, вот моя статья, где описывается, как содержать в чистоте конфигурационные файлы на подобного рода «атомоходах».

Читать далее

Как мы строили процессы в Домклик

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров3K

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

Читать далее
1
23 ...

Информация

Сайт
domclick.ru
Дата регистрации
Дата основания
Численность
501–1 000 человек
Местоположение
Россия
Представитель
Dangorche