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

Web components как альтернатива iframe на примере Angular-компонентов

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

Всем привет! Я Сергей, фронтенд-разработчик из команды привлечения Центрального университета. Занимаюсь проектами, связанными с регистрацией абитуриентов на мероприятия, и внутренними проектами по управлению мероприятиями. 

Осенью мы ждем поступление бакалавров. Чтобы начать набор, нужно встроить форму регистрации в лендинг на CMS. Форма довольно простая: пара полей для ввода данных, диалоговое окно с текстом соглашения об обработке персональных данных и кнопка отправки данных на сервер. Для скорости работы и проверки работоспособности идеи решили встроить приложение через iframe. Но форма стала обрастать различными бизнес-требованиями, которые приносили проблемы. В статье расскажу, с какими трудностями мы столкнулись и как их решали.

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

Работа с аренами: почти избавляемся от GC

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

Меня зовут Максим Горозий. Я тимлид в Т-Банке, работаю над нашей образовательной платформой, которая служит для разных направлений бизнеса. В ИТ больше 10 лет и успел поработать в двух GameDev-компаниях, где управление памятью занимало весомое время в оптимизации производительности кода. Люблю строить системы и взаимосвязи между ними, а также EdTech и преподавание, а еще больше — работать над инструментами обучения. Хотя начинал с C, я идеологический фанат Go, DDD и Agile.

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

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

Подходы к наблюдаемости от Т-Банка

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

Всем привет. Меня зовут Дима, в Т-Банке я руковожу Центром надежности информационных систем. Мы проводим консультирование, обучаем и внедряем SRE-практики, нанимаем и аттестуем инженеров. В общем, делаем все, чтобы помочь командам Т-Банка — а их уже более 2500 — разрабатывать надежные сервисы для всех категорий пользователей и при этом крепко спать по ночам.

Мониторинг ИТ-систем — важнейшая составляющая надежности. Расскажу о том, какие подходы мы использовали, как и почему пришли к нынешнему состоянию и как планируем развиваться дальше.

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

Java Digest #14

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

Всем привет! 👋 👋 👋 👋 Мы — Java-разработчики Т-Банка: Андрей, Арсений, Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом.

В этом выпуске — самые свежие новости из мира Java и сопутствующих технологий. JDK 23 изменяет политику обработки аннотаций, требуя дополнительной опции командной строки. Вышла новая версия Spring Framework 6.2.0-M4 с улучшениями в ядре, тестировании и поддержке Protobuf 4.x. Maven Central вводит ограничения на загрузку для крупных проектов. Новые сборки раннего доступа JDK 24 и Leyden, а также еще много всего интересного. Приятного чтения!

Читать выпуск 14
Всего голосов 15: ↑12 и ↓3+10
Комментарии0

Работа с событиями на стероидах

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

Это будет познавательная статья про одну из самых интересных возможностей Angular, о которой редко вспоминают. Но также это будет и реклама нашей open-source-библиотеки. Поскольку вы, возможно, просто не знаете, насколько она вам нужна. 

За какой-то 1кБ gzip вы сможете улучшить DX во многих различных сценариях, которые мы рассмотрим ниже. Если вы уже знакомы с этой библиотекой, в статье я расскажу про пару новых возможностей.

Как Angular работает с событиями? Что происходит, когда вы пишете (click) в шаблоне? Какая магия обрабатывает клавишу Escape, когда вы подписываетесь на (keydown.esc)? Немного заглянем в исходный код и узнаем про малоизвестный публичный API и как можно использовать его себе во благо.

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

Scala Digest. Выпуск 18

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

Привет, Хабр! Наша коллега Карина в этом месяце защитила диплом и принимает по этому поводу поздравления в комментариях (。•̀ᴗ-)✧ 

А тем временем мы — Рома, Настя и Эвелина, бэкенд-разработчики Т-Банка — пишем код на Scala и продолжаем гореть желанием его популяризировать.

Мы собираем и агрегируем новости из разных источников, включая Scala Times, блог Petr Zapletal и канал Scala Nishtyaki, добавляем дополнительные новости и собственные комментарии. Мотивацию черпаем из желания развиваться и делиться полученными знаниями. Приветствуем любую обратную связь! (づ ◕‿◕ )づ

Теперь вы можете поделиться собственными материалами!

Читать восемнадцатый выпуск
Всего голосов 6: ↑6 и ↓0+6
Комментарии2

Как устроены видеоконференции

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

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

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

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

Как отказаться от скриншотов в тестировании

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

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

Часто ли вы сталкивались с ситуацией, когда тесты падали из-за того, что на скриншоте появился сторонний элемент, который выпустила другая команда? Часто ли вы сталкивались… с самыми разными причинами, из-за которых приходится сидеть и анализировать фейлы скриншотных тестов?

Меня зовут Александр Гончар, я инженер по обеспечению качества в Т-Банке. Хочу поделиться опытом, как избавиться от скриншотных тестов.

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

Tramvai — фреймворк для создания веб-приложений

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

30 августа 2021 года на GitHub прошел первый релиз исходного кода фреймворка Tramvai. При этом свою историю фреймворк начал гораздо раньше и долгое время был внутренней разработкой компании.

Tramvai предназначен для создания универсальных (SSR) React-приложений наряду с Next.js, Remix и SvelteKit. Фреймворк служит основой для десятков приложений и решает проблемы наших разработчиков с помощью более чем 150 библиотек и модулей, разработанных специально для tramvai-приложений.

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

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

Космопути отдела нагрузочного тестирования — Cosmos

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

Всем привет! Я Вера, инженер по обеспечению качества в Т-Банке. Работала в разных командах и направлениях. Стараюсь всегда расширять свои знания и узнавать что-то новое.

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

Перед командой стояла задача создать схему действий для внедрения и настройки нагрузочного тестирования в проектах. Схема должна подходить для всех проектов и быть удобной для использования. Это статья об истории создания и развития автоматизированной системы Cosmos. 

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

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

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

Привет! Я Антон, Android-разработчик в команде Т-Бизнеса. Занимаюсь интеграцией нескольких наших внутренних SDK в приложение и иногда участвую в их разработке.

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

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

Java Digest #13

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

Всем привет! 👋 👋 👋👋

Мы Java-разработчики Т-Банка: Андрей, Арсений, Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом.

В этом выпуске: первые JEP, направленные в JDK 23, введение в Graal VM, состояние экосистемы Java на 2024 год. Посмотрим несколько интересных релизов: мажорную версию Kotlin 2.0, открытие раннего доступа к IntelliJ IDEA 2024.2 и предрелизную версию Spring AI 1.0.0. Погрузимся в JDK Mission Control, познакомимся с дата-ориентированным программированием через серию статей авторства Nicolai Parlog и разберемся в том, какой JDK выбрать для всего проекта.

Читать тринадцатый выпуск
Всего голосов 15: ↑14 и ↓1+14
Комментарии1

Scala Digest. Выпуск 17

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

Привет, Хабр! Мы — Рома, Настя, Карина — приветствуем свежую кровь в нашей небольшой, но уютной команде! Эвелина присоединилась к нам месяц назад с горящими глазами и желанием нести Scala в программистский народ. Естественно, в качестве первого испытания Эвелина ходила с томиком Одерски по офисам ИТ-компаний и спрашивала: «Верите ли вы в функциональную парадигму?»

Мы рады видеть новых бойцов в наших рядах и уверены, что сможем делать дайджест еще лучше. А вы можете поделиться собственными материалами — мы опубликуем их и скажем вам спасибо в следующем выпуске 🩷

Читать выпуск 17
Всего голосов 6: ↑6 и ↓0+7
Комментарии1

Декомпозиция — ваша суперсила

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

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

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

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

Быстрее, выше, сильнее: оптимизируем Spring-контекст для тестов

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

Всем привет! Я Юнес, SDET в Тинькофф. Помогаю автоматизаторам создавать более эффективные и надежные тесты, готовить тестовые данные и настраивать CI/CD-пайплайны. 

Расскажу о доступных способах оптимизации Spring-контекста для тестов. Будет здорово, если у вас есть знания о Spring Framework и опыт написания тестов: тогда мы будем на одной волне. Давайте разберемся в хитросплетениях аннотаций и конфигураций вместе под катом!

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

Java Digest #12

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

Всем привет! ? ? ??

Мы — Java-разработчики Тинькофф: Андрей, Арсений, Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом.

В этом месяце в меню обновления: Intellij Idea с модным терминалом и AI-подсказками, миграции на новые версии Spring Boot за пару кликов в новой версии Java on VS Code, не забыли обновить и Micronaut, GraalVm, PMD и JMC. На горячее JEPы: Exception handling in switch, Derived Record Creation, Stream Gatherers, Vector API, String Templates. Не забыли и про бесплатный сыр — доступ к Spring Academy Pro. 

Утоляем голод по новым знаниям интересными статьями и видео, для любителей экзотики — новые инструменты сборки, если не пробовали bld. А на десерт стоит присмотреться презентациям с прошедшего Jpoint 2024. 

Читать двенадцатый выпуск
Всего голосов 22: ↑22 и ↓0+23
Комментарии5

Scala Digest. Выпуск 16

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

Привет, Хабр! Мы — Рома, Настя и Карина — бэкенд-разработчики Тинькофф, пишем код на Scala и горим желанием его популяризировать.
Мы собираем и агрегируем новости из разных источников, включая Scala Times, блог Petr Zapletal и канал Scala Nishtyaki, добавляем дополнительные новости и собственные комментарии. Свою мотивацию мы черпаем из желания развиваться и делиться полученными знаниями. Приветствуем любую обратную связь! (づ ◕‿◕ )づ

Теперь вы можете поделиться собственными материалами!

Читать шестнадцатый выпуск
Всего голосов 13: ↑13 и ↓0+15
Комментарии2

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

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

Всем привет! Меня зовут Мария Ходякова, я продуктовый аналитик Тинькофф Страхования. В этой статье мы поговорим о множественном тестировании. Хорошо известен такой подход, как А/В-тестирование, когда в тесте участвуют две выборки. Но иногда нужно сравнить больше двух выборок и определить статистически значимо лучшую. Например, найти среди пяти баннеров в приложении лучший по конверсии продаж. Именно для этого и нужно множественное тестирование. 

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

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

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

От простого ИТ-ландшафта к единой платформе разработки: эволюция ИТ в Тинькофф

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


Создание внутренней платформы разработки — спасение для больших компаний во многих кейсах: помогает избавиться от «зоопарка технологий», унифицировать стандарты и подходы, обеспечить безопасность и стабильно улучшать ИТ внутри компании. Но создание единой платформы — результат эволюционного пути развития, и часто этот путь занимает десятки лет.
Читать дальше →
Всего голосов 13: ↑12 и ↓1+19
Комментарии4

Обобщенные фабрики тайпгардов в TypeScript

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

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

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

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

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

Информация

Сайт
l.tbank.ru
Дата регистрации
Дата основания
Численность
свыше 10 000 человек
Местоположение
Россия