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

Следование style guide для .proto файлов с помощью protolint в GitHub Actions

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

В этом посте я расскажу, как настроить protolint для проверки .proto файлов на соответствие официальному style guide в GitHub Actions и поделюсь практическим опытом его использования.

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Комментарии 0

Обеспечение обратной совместимости gRPC API с помощью protolock в GitHub Actions

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

В этом посте я поделюсь с вами подробной инструкцией по настройке автоматической проверки обратной совместимости gRPC API с помощью protolock в GitHub Actions.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 0

Эффективное создание и деплой gRPC API с помощью GitHub Actions и Packages для проекта на Kotlin и React

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

В этом посте я покажу, как с помощью GitHub Actions легко реализовать генерацию и публикацию gRPC API пакетов в GitHub Packages, в реестрах Apache Maven и npm. Если вы хотите освоить GitHub Packages для своих проектов и научиться генерировать gRPC API для сервисов на Kotlin/Java и gRPC-web клиентов — добро пожаловать под кат.

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 3

Реактивные формы во Flutter: как делать формы с меньшими трудозатратами

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

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

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 4

Регулярные выражения в реальных задачах

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

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

Читать далее
Всего голосов 21: ↑19 и ↓2 +17
Комментарии 17

Helena.4.0 – новый алгоритм для подбора гиперпараметров

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

С целью автоматизации процесса подбора гиперпараметров автором данной статьи разработан алгоритм Helena.4.0. Конечной целью является создание автоматической системы построения моделей (auto-ML), которая бы подбирала гиперпараметры за минимальное время.

С помощью алгоритма Helena.4.0 можно подбирать гиперпараметры для моделей градиентного бустинга, нейросетей, и более того – для генетических алгоритмов. Автор считает, что алгоритмы Helena могут заменить в генетических алгоритмах генеративную часть – т.е. уйти от биологических аналогий, заменив псевдобиологическую генерацию признаков путем процедур «скрещивания» и «мутаций» на генерацию с помощью указанных алгоритмов.

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

Сравнение алгоритма Helena.4.0 с наиболее популярными конкурентами (Optuna, HyperOpt, RandomSearch) показывает его высокую конкурентоспособность.

В отличие от других алгоритмов, не использующих градиент для максимизации функции, алгоритмов Helena.4.0 способен успешно противостоять комбинаторному взрыву. Т.е. алгоритм Helena.4.0 достаточно стабильно работает, несмотря на увеличение размерности пространства. Время, необходимое алгоритму Helena.4.0 для поиска максимума функции, оценивается как квадратичная функция от размерности пространства.

Ниже в статье приведено подробное описание алгоритма Helena.4.0 и результаты сравнительных тестов с алгоритмами-конкурентами.

Читать далее
Всего голосов 17: ↑14 и ↓3 +11
Комментарии 16

Кадровый электронный документооборот (КЭДО) в Росбанке: как мы сделали свой продукт в соответствии с законодательством

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

Привет, Хабр! На связи Артём Сидоров, руководитель центра информационной безопасности розничного бизнеса Росбанка, и Анна Хохлова, директор проекта КЭДО. Во время пандемии кадровый документооборот стал серьезной головной болью для многих компаний. К 2022 году все вроде бы приспособились к различным коробочным решениям для КЭДО, но фокус на импортозамещение поначалу добавил неопределенности в стратегии работы с поставщиками. Условия рынка менялись, но затягивать с развитием КЭДО мы не могли. В этом посте мы подробно расскажем о событиях тех месяцев и о том, к чему в итоге пришли в Росбанке.

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 2

Flutter DevTools: анализируем и улучшаем Flutter-приложения на примере «Росбанк Инвест»

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

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

Читать далее
Всего голосов 13: ↑13 и ↓0 +13
Комментарии 2

Сможете ли вы отличить собаку от кошки, или Как объяснить проблемы дата-сайентиста коллегам. Часть 3

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

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

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

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Сможете ли вы отличить собаку от кошки, или Как объяснить проблемы дата-сайентиста коллегам. Часть 2

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

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

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 7

Сможете ли вы отличить собаку от кошки, или Как объяснить проблемы дата-сайентиста коллегам. Часть 1

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

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

Читать далее
Всего голосов 12: ↑10 и ↓2 +8
Комментарии 29

Градиентный бустинг: как подобрать гиперпараметры модели в 5 раз быстрее, чем обычно?

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

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

Читать далее
Всего голосов 4: ↑4 и ↓0 +4
Комментарии 4

Краткосрочное и долгосрочное планирование в Scrum и agile

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

Эта статья помогает понять, как команды в Scrum и agile могут давать гарантии и сроки, сохраняя гибкость в планировании. Она будет полезна тем, кто заинтересован в четких сроках реализации доработок: заказчикам, пользователям, владельцам продукта, другим командам и отделам. А также разработчикам — для понимания, почему сроки так важны стейкхолдерам и как можно вести диалог о сроках, сохраняя при этом гибкость.

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Комментарии 14

Hibernate — проблема декартова произведения при запросах с пагинацией

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

Привет! Меня зовут Артём Гордиенко, я работаю Java/Kotlin-разработчиком в Росбанке и занимаюсь разработкой микросервисов, необходимых для внешнеэкономической деятельности интернет-клиент-банка юридических лиц. Реализация этого доклада стала возможной благодаря одному-единственному сообщению, обнаруженному в логах одного нового микросервиса. Как оказалось, причина сообщения серьезно влияет на производительность приложения. Мне это показалось довольно интересным, и захотелось поделиться информацией с другими разработчиками. 

Многие сталкиваются с реализацией вывода списочных данных с пагинацией из БД. В Spring Data и в самом Hibernate есть стандартные решения, которые позволяют достаточно просто решить эту задачу. Но у предлагаемых решений есть подводные камни, и со временем или даже сразу они могут серьезно повлиять на производительность. В худшем случае — и вовсе привести к падению приложения.

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

Читать далее
Всего голосов 21: ↑20 и ↓1 +19
Комментарии 23

Как создать интерактивный дашборд с нуля через ChatGPT

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

Всем привет! Меня зовут Татьяна Яковлева, я работаю системным аналитиком в Росбанке в Центре компетенций развития технологий некредитных продуктов. В этой статье я расскажу, как использовать ChatGPT для визуализации данных и построении дашбордов при помощи Python и фреймворка Dash; поделюсь готовыми промтами для создания дашборда за несколько минут.

Читать далее
Всего голосов 16: ↑13 и ↓3 +10
Комментарии 9

Особенности асинхронности в Python

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

Привет, Хабр! Меня зовут Николай Нагорный, я работаю в Росбанке над платформой Advisors’ Axiom. В этом посте я подробно расскажу о важной фиче, которая появилась в Python 3.5 — асинхронности. Затрону основные концепции и инструменты, приведу примеры кода. Пост будет полезен новичкам для понимания основ асинхронности и, может, даже опытным разработчикам в поиске новых идей и подходов.

Читать далее
Всего голосов 14: ↑8 и ↓6 +2
Комментарии 13

Как мы отказались от поддержки Internet Explorer в интернет-клиент-банке и никто не пострадал

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

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

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 18

Как мы подружили Postman и Zephyr

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

Всем привет! Меня зовут Вова Романов, я занимаюсь развитием инструментов тестирования в Росбанке. В прошлом году мы перешли на платформу тест-менеджмента Zephyr Scale и сейчас активно внедряем ее в команды. Недавно задались вопросом: а можно ли передавать результаты запросов Postman в тестовые прогоны Zephyr с определенным количеством проверок (тестов) в каждом запросе? Ведь есть API Zephyr для публикации результатов, и нужно всего лишь подружить его с результатами запросов Postman. Готового рецепта в Сети не нашлось, так что в это посте я поделюсь тем, как это сделали мы.

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 3

Микрофронтенды с Module Federation: истории внедрения в готовый проект и создания с нуля

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

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

Читать далее
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 2

Используем аннотацию @Transactional like a pro

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

Привет, Хабр! Меня зовут Никита Летов, я тимлид бэкенд-разработки мобильного приложения Росбанка для физических лиц. Этот пост входит в серию постов по разработке бэкенд-микросервисов на Java и Spring и является адаптацией моего доклада с JPoint 2022

Также хочу предупредить, что данный пост не cookbook и не предоставляет идеально приготовленное решение какой-либо бизнес-проблемы. Это разбор одной технологии, которая при правильном использовании может помочь вам в решении реальной проблемы. А может и не помочь — всё зависит от ее природы.

Читать далее
Всего голосов 17: ↑16 и ↓1 +15
Комментарии 11

Информация

Сайт
www.rosbank.ru
Дата регистрации
Дата основания
Численность
5 001–10 000 человек
Местоположение
Россия