Социальные сети Рунета
Четверг, 16 мая 2024

Об одном способе реализации архитектуры крупного Flutter-приложения Привет! Меня зовут Олег Скирюк, я лидирую контент-разработку в одной из команд билайна. Сам я перешёл в мобильную разработку из веба три года назад, после чего собрал и обучил одну из первых Flutter-команд в компании. Вместе с этой командой мы постоянно экспериментируем и пр...

Flutter и ГОСТ TLS Меня зовут Куприёв Андрей, я Flutter‑разработчик в команде Центра развития финансовых технологий (ЦРФТ) Россельхозбанка. В этой статье мы рассмотрим, как реализовать поддержку протокола ГОСТ TLS в приложениях, разработанных на Flutter.Flutter, с ...

Соединяем Flutter, Firebase и ESP32 в единую систему Всем привет! Это Мурат Насиров, Flutter-разработчик в Friflex. Мы разрабатываем высоконагруженные мобильные приложения для бизнеса и специализируемся на Flutter. Сегодня расскажу, как использовать микроконтроллер ESP32 в связке с Flutter-приложением. В качестве примера ...

Опыт внедрения компонентной разработки Привет! Меня зовут Александр Омельяненко, я работаю тимлидом Flutter-команды в AGIMA. Расскажу, как и почему на одном из наших проектов мы внедрили компонентный подход к разработке и какие плоды нам это дало. В статье покажу основные плюсы и минусы нашего решения. А еще затр...

Решаем трудности адаптации мобильных приложений с Responsive_framework Hola, Amigos! Меня зовут Ярослав Цемко, я Flutter-разработчик в компании заказной разработки Amiga. Сейчас я расскажу об очень крутом плагине, который помог нам решить проблемы, связанные с адаптацией контента под разные дисплеи в одном из наших проектов. Читать далее

Инструкция: как быстро настроить GitLab CI/CD на Flutter-проекте Привет! Я Александр Омельяненко, Flutter-разработчик в AGIMA. Недавно мне понадобилось быстро настроить CI/CD на Flutter-проекте. Те несколько руководств, что я нашел в интернете по этой теме, были либо с нерабочими примерами, либо запутанные и просто плохого качества. Но вс...

Шпаргалка для QA: как тестировать Flutter-приложения Привет! Меня зовут Юлия Андреева, я QA-специалист в AGIMA. Мы пилим и тестируем много Flutter-приложений. И недавно я заметила, что не все коллеги понимают специфику их тестирования. В этой статье расскажу про основные инструменты и подходы, которые мы используем. Сосредоточ...

Как быстро интегрировать Систему быстрых платежей (СБП) в приложение на Flutter Всем привет! Меня зовут Мурат Насиров, я Flutter-разработчик в Friflex. Мы разрабатываем мобильные приложения и специализируемся на решениях для ритейла. На одном из наших проектов мне пришлось столкнуться с внедрением кнопки оплаты через Систему Быстрых Платежей (СБП). В эт...

Transition Animation: настраиваем анимацию переходов во Flutter Привет! Меня зовут Айдар Мавлетбаев, я Flutter-разработчик в AGIMA. Современное приложение почти невозможно представить без анимации. И один из ее типов — Transition Animation, или анимация переходов. Ее используют, чтобы переход с одной страницы на другую был плавным и крас...

Как автоматизировать заполнение changelog через GitHub Action Привет, Хабр! Меня зовут Юрий Петров, я автор Youtube-канала «Мобильный разработчик» и Flutter Tech Lead в компании Friflex. Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. Разработчики используют GitHub, чтобы писать и хранить свои прое...

Избавляемся от паролей Меня зовут Александр Чикайло, я разрабатываю межсетевой экран уровня веб-приложений PT Application Firewall в Positive Technologies и специализируюсь на защите веба. Сегодня речь пойдет о беспарольной аутентификации и ее безопасном применении в приложениях. В этом материале ...

О, вы из Англии? Локализация Ozon Seller на iOS Всем привет! Меня зовут Андрей, и я делаю iOS-приложение для продавцов Ozon Seller. Наша команда поставляет фичи, красит кнопки, работает над перформансом и  всячески улучшает пользовательский опыт работы продавцов на Ozon.Нашим приложением активно пользуются юзеры из р...

Как быстро получать данные из ОС Аврора через интерфейс D-Bus во Flutter-приложении Привет, Хабр! Меня зовут Юрий Петров, я автор ютуб‑канала «Мобильный разработчик» и Flutter Tech Lead в компании Friflex. Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. В этой статье я расскажу, как с помощью ин...

Как настроить GitHub Actions и не заплакать: пошаговая инструкция Как настроить GitHub Actions и не заплакать: пошаговая инструкцияПривет всем! Меня зовут Виталий, я фронтендер в Mish. Решил недавно освоить полноценный автоматический деплой проекта, чтобы все работало само. Расскажу и вам, что из этого получилось.В статье буду разговариват...

Как написать ТЗ на разработку чат-бота или AI-ассистента  Привет, Хабр! Меня зовут Элина Тедеева, и я тимлид команды внедрения в команде Just AI. В идеальном мире разработка бота или голосового ассистента начинается с технического задания — именно оно должно определять все этапы: от идеи до реализации. О том, почему...

Как я создавал мобильное приложение для хранения прочитанных книг BookDesk Всем привет! Меня зовут Александр, мне 33 года и я React-разработчик (10 лет опыта во фронтенде), я из Беларуси.Я хочу рассказать о моем опыте создания мобильного приложения для хранениях прочитанных книг BookDesk.Все началось еще в 2020 году, когда началась пандемия коронав...

Кот в мешке: как приручить дикий бинарник Всем привет. Меня зовут Василий. Я работаю SRE в Яндекс Маркете. Недавно у нас прошли тренировки по DevOps от Young&&Yandex. Сегодня я разберу финальное задание, как и обещал участникам тренировок. Оно состоит в том, чтобы развернуть инсталляцию приложения из готовог...

Интеграция видеоплеера YouTube во Flutter Hola, Amigos! Меня зовут Вова Зевеке, я Flutter-разработчик в Amiga. В одном из проектов передо мной стояла задача — интегрировать видеоплеер во Flutter- приложение, с которого можно было бы смотреть видео с YouTube. Казалось бы, подключаем  пакет youtube_player_flutter...

Релиз-менеджер — почему он вам нужен Привет! Меня зовут Ксения, я уже больше 7 лет занимаюсь релизами и сейчас работаю релиз-менеджером в RuStore. Сегодня хочу рассказать больше об этой роли, в каких случаях он вам нужен (спойлер, не всегда) и когда её можно переложить на другого сотрудника.  Читать далее

[Перевод] Интеграция нативных SDK во Flutter-приложение Мир мобильной разработки постоянно меняется. В поиске эффективных решений разработчики пошли по пути новых технологий и интеграций. Одним из самых ярких маяков на этом пути стал Flutter — набор инструментов пользовательского интерфейса от Google, который позволяет пользовате...

[Перевод] Тестирование пользовательского интерфейса | Flutter Привет, если вы на пути изучения Flutter/Dart или вам просто интересно почитать про путь изучения, подписывайтесь на мой канал в telegram, буду рад вас видеть! А сегодня поговорим про работу тестирования приложения во Flutter!Вы узнаете, как: • Понимать автоматизир...

Реализация многооконного приложения на Vue 3 В наше время чуть ли не каждое приложение использует браузерный клиент. Это просто в написании, это кроссплатформенно, это легко в использовании. Браузерные решения уже активно используются и в промышленной сфере: аналитиками, операторами. WEB-приложения для управления промы...

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

Platform Engineering: что, зачем и как Привет! Меня зовут Александр Тарханов, я тимлид команды платформы в 05.ru. Сегодня расскажу о набирающем популярность тренде Platform Engineering и постараюсь ответить, что это, зачем необходимо и как это реализовать. Что дальше

Padding vs SizedBox. Что выбрать для вёрстки отступов Column и Row Здравы будьте! С вами на связи руководитель Flutter-направления Mad Brains Николай Омётов. В этой статье я проведу разбор особенностей вёрстки отступов с помощью Padding и SizedBox и расскажу, что выбрала наша команда для создания единого стиля кода. Читать далее

Разработка мобильного клиента СДУ «Приоритет» под ОС «Аврора» на фреймворке Qt Всем привет! Меня зовут Илья, и я разработчик ПО в области автоматизации документооборота в компании «Диджитал Дизайн». Так получилось, что изначально я iOS-разработчик, но по воле случая мне удалось поучаствовать в создании мобильного приложения — клиента СДУ «Приоритет» (д...

Как дизайнеры помогают заменить GitLab: что из этого получилось Привет! Меня зовут Валерия, я дизайнер внутренних сервисов в Ozon Tech. Наша команда занимается продуктами, которые коллеги используют для доступа к инфраструктуре Ozon, приоритизации задач, проведения регламентных работ, выкатки и управления релизами.Сегодня речь пойдёт про...

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

Особенности проектирования интерфейсов в ИБ продуктах на примере Ampire Привет хабр! Меня зовут Виталий Матыцин, я отвечаю за дизайн в Ampire. Cегодня хочу рассказать об особенностях и подводных камнях, с которыми мне пришлось столкнуться во время редизайна. Читать далее

NativeScript в мире кроссплатформенной разработки Давайте знакомиться! Меня зовут Игорь. Я разработчик кроссплатформенных мобильных приложений в компании Smartex. В этой статье я расскажу о NativeScript, основных преимуществах платформы и ее недостатках.Материал будет полезен не только разработчикам, которые уже пишут прило...

Пуш-уведомления RuStore Привет! Меня зовут Артем Ковардин, я работаю в VK и мы с командой разрабатываем Push Service RuStore и SDK для него. Если вы занимаетесь разработкой мобильных приложений и хотели бы иметь канал коммуникации с пользователями или же вам просто интересно то, как работают разраб...

Открываем курс по Kubernetes и рассказываем, зачем разработчику знать DevOps Два года назад мы запустили в школе Metaclass курс «Деплой приложений в Kubernetes». С сегодняшнего дня мы делаем его бесплатным и приглашаем пройти всех, кто хочет прокачаться и попасть на стажировку к нам в команду.В нашей компании все сотрудники проходят этот курс, поэтом...

Как показать номер версии на экране загру… Привет, Хабр! Меня зовут Сергей, и я 3 года работаю Android/iOS разработчиком. Написал с нуля приложение для фитнес-клубов (Google Play/App Store — если интересно, код под NDA, его не могу показать) и дорабатываю малоизвестный банк. За это время накопилось много интерес...

[recovery mode] Как стать Flutter-разработчиком бесплатно? Всем привет! Я Даниил Беликов, мобильный разработчик в крупной российской компании. Мои знакомые часто интересуются, стоит ли им входить в IT и на кого учиться. Обычно я отвечаю, что если человек визуал, есть смысл попробовать Flutter. Во-первых, это востребовано. Во-вторых,...

Как устроен @State в SwiftUI Привет! Меня зовут Илья, я iOS разработчик в компании Банки.руУже больше двух лет наше приложение мы пишем на SwiftUI. В статье расскажу о Property Wrapper'е @State. Читать далее

Что учесть при портировании приложения на Аврору Привет, Хабр! Меня зовут Дмитрий Мозер, я Flutter Team Lead в Friflex и участник бета-тестирования ОС Аврора. Занимаюсь, в том числе, созданием приложений на Flutter для ОС Аврора.Мы специализируемся на Flutter и активно участвуем в развитии фреймворка на ОС Аврора. Мы уже п...

Как я столкнулся с Tarantool-ом: разбор подводных камней на примере микросервисного pet-проекта Привет, Хабр! Меня зовут Сергей Скубач, я работаю в VK и разрабатываю облачное хранилище WorkDisk. Мы используем Tarantool в своём продукте, так как его разрабатывают и развивают наши коллеги. Я впервые столкнулся с Tarantool именно в VK, и для более глубокого понимания реши...

Настраиваем кросс-обновления Android-приложений между сторами Привет, Хабр! Меня зовут Тимофей, я Android-разработчик в Сравни. Давайте поговорим о кросс-обновлении Android-приложений без привязки к конкретному стору – так, чтобы пользователи могли устанавливать из одного источника, а обновлять – из другого, без необходимости удалять и...

Ферма тестирования SberDevices Салют, хабр! В интернете уже довольно много материалов о том, как другие команды строили свои решения для тестирования мобильных приложений (и не только), например: Яндекс Колхоз, Ферма мобильных устройств Selectel, Ферма девайсов VK, Ферма мобильных устройств в Сбере, Мобил...

Собирать данные VS интерпретировать их: типичные ошибки в e-commerce аналитике Каждый день мы собираем больше 200 ГБ данных о клиентах Lamoda, которые листают сайт и делают заказы. Но красивые цифры про наше хранилище — это одно, а правильные выводы из данных — совсем другое.Меня зовут Александр Айваз, я руковожу командой Data & Analytics в Lamoda ...

Секрет внутренней связи: откровения Маруси о том, как она научилась слушать себя Привет, Хабр! Меня зовут Коля Кремер, уже 4 года я работаю в команде мобильного приложения Маруси, где мы постоянно стараемся сделать так, чтобы с нашим помощником было удобно и интересно общаться. Я несколько раз начинал писать и откладывал этот ретроспективный пост, н...

Колодец с неприоритетными багами. Как мы закрыли 50 задач за две недели и научились не копить их В  Lamoda Tech мы работаем не только над e-comm платформой и приложениями, но и создаем продукты для внутренних пользователей. Например, системы для пунктов выдачи заказов, приложения для пеших курьеров и так далее.Когда от пользователей этих приложений прилетает критич...

Как впервые запустить подкаст: прошли этот путь и расскажем обо всех подводных камнях Привет! На связи Ксюша Калинина, менеджер команды Influence Marketing и SMM в Selectel. Недавно мы запустили подкаст «Сегодня на ретро» — это было очень интересно, но сложно. Например, мы не знали, что жаркие споры в начале эпизода можно получить, только если разговорить го...

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

Как PaaS решил проблемы стандартизации разработки сервиса одной утилитой Привет

OpenStreetMap в Flutter-проекте: что такое flutter_map, как его внедрить и чем дополнить Всем привет! Меня зовут Анна Ахлёстова, я Flutter-разработчик в Friflex. Ранее мы обсудили, как использовать инструменты yandex_mapkit в Flutter-проекте. В этой статье рассмотрим еще один плагин для работы с картографическими сервисами – flutter_map, изучим его возможности, ...

Разработка децентрализованных приложений на Spring Boot: инструменты Web3 Tech Привет! Меня зовут Даниил, я разработчик в Web3 Tech. Недавно в JVM-инструментарии для нашей основной платформы «Конфидент» состоялся новый релиз, в который вошли библиотеки клиента для взаимодействия с нодой и Spring Boot стартеры. Далее в посте я расскажу об этих библиотек...

Как мы интегрировались в казахстанский маркетплейс или история о нюансах Привет! Меня зовут Ваня Крючков, я бэкенд-разработчик в Далее. Сегодня поделюсь опытом интеграции интернет-магазина Haier с маркетплейсом Kaspi. Это история о том, как, несмотря на ограничения и не самое удобное API, нам удалось интегрироваться с самым популярным маркетплейс...

Использование resilience4j со Spring Boot resilience4j библиотека, предоставляющая набор инструментов для повышения надежности и отказоустойчивости java приложений прежде всего в микросервисной архитектуреРассмотрим какие в ней есть инструменты, как их использовать в Spring Boot приложении с помощью аннотаций, как н...

Поезд «Jira – Kaiten». Путь Х5 Около года назад мы начали миграцию с системы Jira, которая использовалась для управления задачами, на российскую платформу Kaiten. Проект миграции – весьма амбициозный, ведь всего в системе у нас работают около 7 500 пользователей с огромным количеством сложных процессов. В...

Разделение презентационного слоя фичи на модули в Android приложении Привет, Хабр! Я, Алексей, ведущий разработчик в платформенной команде Альфа-Бизнес Мобайл. В этой статье речь пойдет про приложение Альфа-Бизнес и об одной из архитектурных проблем, с которой сталкиваются на любом среднем/крупном проекте, рассмотрим несколько способов, котор...

Где заканчивается Flutter и начинается платформа? Сердце фреймворка Flutter (который для разработчиков часто представляется только в виде набора классов на языке Dart) написано на языке С и компилируется в двоичный артефакт, известный как Flutter Engine, подключаемый к приложению и используемый из Dart-классов через механиз...

Playground. Как сэкономить время на настройке локальной среды Привет, Хабр! Меня зовут Никита, и я Go-разработчик. В свободное от работы время я интересуюсь платформенной разработкой, а в рабочее — практикую в команде PaaS в СберМаркете. Моя специализация — локальное окружение разработчика и тулинг. Главная метрика, на которую работает...

Тестируем приложение как сын маминой подруги или взгляд на Trace Based Testing Привет! Меня зовут Сергей, я бэкенд разработчик команды SEO в Банки.ру.В этой статье хочу описать свое знакомство с техникой Trace Based Testing (TBT): • расскажу о концепциях, которые чаще всего используются сейчас в тестировании• кратко опишу, что такое distributed ...

Как стоит и как не стоит использовать HttpClient в .NET Всем привет! Меня зовут Андрей Федотов, я бэкенд-разработчик в одной из команд платформы интернета вещей ZIIoT Oil&Gas. В этой статье я рассказываю, что нужно знать и как работать с HttpClient в .NET, чтобы не получить трудноподдерживаемый и сложный код и не нарваться на...

Виджетная система: как масштабировать образовательную платформу без боли и слёз? Почему если веб-проект собирается расти, но пока не понимает, куда и как, — виджетная система может стать спасением. Меня зовут Антон Фокин, я CEO студии QTIM и сегодня я расскажу о нашем опыте. Читать далее

Как использовать Spring в качестве фреймворка для Flink-приложений Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Недавно мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в наши продукты в цикле статей. В ...

Как использовать ресурсы Kubernetes по максимуму для работы с Go-приложениями Привет! Меня зовут Антон Жуков, я руковожу группой разработки в Сбермаркете. В профессии я уже более 12 лет, с Golang работаю с 2016 года, а с Kubernetes — с 2018 года. В этой статье расскажу об основах Kubernetes, возможных проблемах и решениях, а также о том, как грам...

Подводные грабли экспертных утилит при работе с инцидентами Привет, Хабр! Меня зовут Максим Суханов, я ведущий эксперт в команде CICADA8 Центра инноваций МТС Future Crew. Это подразделение отвечает, в том числе, за реагирование на инциденты кибербезпасности, форензику и реверс-инжиниринг вредоносного ПО. Ещё я занимаюсь другими инте...

Разбираемся с работой брокеров, или Что такое гарантия доставки сообщений и как с этим жить… В эпоху мгновенной коммуникации, гарантия доставки сообщений становится не просто плюсом, но и неотъемлемой частью репутации сервиса. Как быть уверенным, что ваше сообщение дойдет до адресата именно тогда, когда это нужно? Привет, Хабр, меня зовут Сергей Коник, я работаю в С...

Дебаггинг приложения без Xcode Привет, меня зовут Владимир Петров, я iOS разработчик в Альфа-Банке. Я вам расскажу как мы сделали свой дебаг-инструмент и научились дебажить наше приложение без Xcode. Обратите внимание на статью, если думали над тем, чтобы делать свое решение или готовое — расскажу, к...

Swift UI: от сомнений к успешному внедрению Всем привет, меня зовут Фарид Хусаинов, я тим-лид команды мобильной разработки Банки.ру. Мы делаем iOS-приложения компании Банки.ру, а именно – наше основное приложение и приложение, посвященное страхованию.Два с половиной года назад мы приняли решение перевести наше мо...

Как перезапускать PySpark-приложение и зачем это может понадобиться Сегодня все крупные компании сохраняют и обрабатывают большие объёмы информации, причём стремятся делать это максимально эффективным для бизнеса способом. Меня зовут Мазаев Роман и я работаю в проекте загрузки данных на платформу SberData. Мы используем PySpark, который позв...

HypEx и мэтчинг. Эксперимент без A/B-тестирования? Привет, Хабр! Меня зовут Дмитрий Тихомиров, я работаю в блоке «Финансы» в команде разработки HypEx (Hypotheses and Experiments) — open source-библиотеки для Python. Наша команда хотела придумать ёмкое название для фреймворка, чтобы оно отражало суть происходящего и помогало ...

Google Apps Script и с чем его едят Всем привет! Меня зовут Леша Штанько, я системный администратор и интегратор (если остается время, еще и JS-разработчик :D) в AGIMA. Если представить Google большим айсбергом, то на его верхушке точно разместятся всеми любимые и популярные инструменты, вроде Google Sheets и ...

Выгорание на работе: что это такое и по каким причинам происходит Привет, Хабр! Меня зовут Даниил Старосек, я работаю аналитиком на проекте «Единое фронтальное решение» (ЕФР) в Россельхозбанке. В прошлый раз я рассказал о работе в условиях the roof is on fire на испытательном сроке: проект и сроки горят, старший коллега в отпуске, а ты в к...

Вы за это заплатите! Цена Чистой Архитектуры Всем привет, меня зовут Артемий, я работаю старшим Android-разработчиком в команде пользовательского профиля в RuStore. Мой опыт в индустрии уже 8 лет. За это время я успел поработать в разных проектах и компаниях. У меня был опыт работы в проекте, в котором было свыше 300 м...

Как упростить себе жизнь: удобные юнит-тесты с JUnit и AssertJ Для тестирования Java-приложений создано столько полезных инструментов, что в них немудрено запутаться. Вместе с тем с помощью каждого из них можно решить строго определенный круг прикладных задач. Меня зовут Константин Шибков, я старший Java-разработчик CDEK и программный д...

PaaS два года спустя. Обзор инструментов и какие задачи они решают Друзья, привет! Если у вас так же много разработчиков как у нас, то и им, возможно,  стало тесно стоять в очереди на deploy в монолите. А значит, вы можете решить перейти на микросервисную архитектуру и дать каждому игроку свой мяч каждой команде свой микросервис. ...

Оптимизация DevOps: Как персональные стенды и Grafana улучшают разработку и мониторинг Всем привет, меня зовут Зуев Алексей, и я работаю DevOps-инженером в компании Bimeister! Сегодня я расскажу вам о том, как мы облегчаем жизнь нашим разработчикам и как разработчик может отследить состояние своего микросервиса в namespace Kubernetes. Основная цель этой статьи...

Сложности роста Ruby-приложений Привет! Меня зовут Валентин Бритвич, я Unit Lead интеграций в СберМаркете. Когда СберМаркет был стартапом, мы начинали с одного Rails-монолита, но бизнес рос, и стали появляться сотни партнёров на подключение, кастомные интеграции, которые нужно поддерживать, а с ними и проб...

Библиотека на Go для работы с RuStore API Привет, Хабр!Меня зовут Энрике, и я работаю Go-разработчиком в RuStore. Сегодня хочу рассказать про библиотеку на Go для комфортной работы с API магазина приложений RuStore. Иногда авторизация через API и получение JWE-токена занимают больше времени, чем хотелось бы. С ...

Современный С++ в разработке девайсов Привет, Хабр.Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера.На прошедшей недавно конференции Салют, OS DevConf! я выступил с докладом, в котором рассказал, как мы с командой разрабатываем приложения на С++ для умных ...

Вся наша жизнь – игра: или как прижилась геймификация внутри мобильного приложения в ритейле Здравствуйте, меня зовут Амалия, я специалист по обеспечению качества в команде мобильного приложения «Пятёрочка». Хочу начать с небольшой истории. В школьные годы я любила онлайн-игру в жанре хоррор Requiem Online. В ней была пара игроков, которые участвовали в закрытом тес...

Прыжок по облакам: кейс миграции MS SQL Server из Azure в VK Cloud Миграция ИТ-инфраструктуры из облака в облако — квест, с которым сейчас сталкиваются многие компании и на своих шишках понимают сложность всего процесса. И чем больше инфраструктура, тем выше уровень сложности этого квеста. Особенно если перенести надо работающий сервис с ...

Погружение в мир адаптивной верстки с Flutter Я Магин Максим, Flutter-разработчик агентства мобильной разработки Instadev. Поговорим о таком понятии как “адаптивная верстка”. Разберем, для чего она нужна, чем отличается от других видов верстки и какие подводные камни могут встретиться при использовании.Каждый разработчи...

Рулим запуском Spark-приложений в Airflow с помощью самописного оператора Airflow в Lamoda Tech играет роль оркестратора процессов обработки данных. Ежедневно с его помощью мы запускаем 1 800+ тасок на проде, примерно половина из которых являются Spark-приложениями.Все Spark-приложения сабмитятся из Docker-контейнеров. И здесь сталкиваемся с пробл...

Команда любого продукта должна уметь работать с пользователями? Меня зовут Виктор Попов, я — технический владелец продукта CI/CD в Samokat.tech. Мы с командой разрабатываем там комплекс CI/CD  инструментов. Это единый продукт, который должен удовлетворить потребности продуктовых команд. Правда, не так просто разобраться, а удовлетво...

Декомпозиция программных компонент Здравствуйте, меня зовут Дмитрий Карловский и я.. люблю власть. Когда я берусь за клавиатуру, каждый байтик начинает плясать под мою дудку. Но когда этих байтиков становится по настоящему много, уследить за всеми становится сложно. Поэтому давайте сравним популярные паттерн...

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

По заветам кота Вжуха: превращаем веб-приложение в сервис на платформе VK Mini Apps VK Mini Apps — это платформа для создания мини-приложений, работающих внутри ВКонтакте. На ней можно создать продукт любого масштаба — от лендинга до сложного сервиса с множеством функций. А ещё вы можете портировать на площадку ваше веб-приложение, чтобы получить доступ к о...

Пошаговая инструкция создания нового вида контроля в «1С: Управление холдингом» Привет, Хабр! Меня зовут Донскова Елена, я работаю разработчиком на проектах внедрения 1C в IBS, занимаюсь разработкой нового функционала и модифицирую типовой функционал для удовлетворения потребностей бизнеса. Сегодня я расскажу о том, как создать новый вид контроля в сист...

Бегущий по витринам KION. Как контент попадает на витрины приложений Привет, Хабр! Меня зовут Алексей Жиряков, я техлид backend-команды витрины онлайн-кинотеатра KION. В этой статье я расскажу вам, как в нашем сервисе формируется витрина с фильмами и сериалами. Приподниму завесу тайны над нашей архитектурой и поделюсь, как мы компонуем выдачу...

Камера как сканер штрих-кодов: проблемы, инструменты и эксперименты Всем привет, меня зовут Никита, я старший разработчик в компании Озон и работаю над iOS-приложением «Пункт Озон».«Пункт Озон» — это мобильное приложение для работников и менеджеров пункта выдачи заказов (далее просто ПВЗ). В приложении множество различных разделов для повсед...

«Битва Роботов»: ошибки «невыжившего» Привет всем любителям робототехники! Меня зовут Настя, я — руководитель Студенческого конструкторского бюро НИТУ МИСИС и капитан команды BlackOut, которая в 2023 году участвовала в первой «Битве роботов» и… получила бесценный опыт) Многие знают про когнитивное искажение «оши...

Как мы наладили процесс разработки внутренних приложений с помощью Appsmith Привет! Меня зовут Алексей, я аналитик данных в команде BI финансового маркетплейса Банки.ру. Сегодня хочу поделиться опытом работы с Appsmith. Это low-код инструмент для автоматизации бизнес-процессов. В статье расскажу, зачем вообще нам понадобился подобный инструмент...

Как работает дедупликация данных в потоке Kafka-to-Kafka? Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в цикле статей.В предыдущей части «Как исп...

Анализ и оценка перспективы использования LSMW для автоматизации подготовки тестовых данных в SAP Привет, Хабр! Меня зовут Василь Хамидуллин, я работаю в ЦК тестирования решений на платформе SAP в компании РСХБ-Интех. В прошлый раз я делился опытом тестирования бизнес процессов, внедряемых модулей SAP, в банке. Сегодня расскажу вам про LSMW, и как данный инструмент ...

Анимация в браузерах и как с ней работать Многие разработчики умеют создавать красивые и плавные анимации, но далеко не все понимают, как на самом деле они работают и что происходит «под капотом» браузера в момент их отрисовки и запуска. Вместе с тем, работа с анимацией без знания основных нюансов нередко заканчивае...

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

[Перевод] Добавляем подсказки в приложение с помощью TipKit Когда TipKit был впервые упомянут во время выступления на WWDC 2023, я поначалу предположил, что это какой-то новый способ отображения приложений в приложении Tips и, возможно, Spotlight. Вместо этого мы увидели встроенный компонент для добавления небольших обучающих предста...

Как подключиться к Flutter приложению в режиме нативного debug на ОС Аврора Привет, Хабр! Меня зовут Юрий Петров, я Flutter Team Lead в Friflex и автор ютуб-канала «Юрий Петров | Всё об IT». Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. А также мы делаем  свой вклад в развитие экосистемы Аврора + Flutter. В эт...

Что делать, если твой заказчик — весы, или Как заговорить на одном языке с бытовой техникой Меня зовут Алексей Плаксин, я системный аналитик в компании KODE и сейчас расскажу вам, как делал реверс-инжиниринг бытовой техники.Однажды к нам пришел крупный бренд бытовой техники, который в том числе производит и продает «умную» технику для дома. Нам нужно было в коротки...

Сферический коммивояжёр в вакууме и в реальной жизни Некоторое время назад я участвовал в разработке приложения для фирмы, работающей в сфере транспортной логистики. Поскольку в тот момент фирма только начинала свою активную деятельность, многие процессы были еще не автоматизированы, и менеджер каждый вечер тратил два часа сво...

По граблям, по граблям. Пишем отзывчивый интерактивный виджет IOS 17 Всем привет! На связи Анна Жаркова, руководитель группы мобильной разработки в компании Usetech. В 2023 году на WWDC Apple представили много нового и интересного API, среди которого были долгожданные интерактивные виджеты, реагирующие на нажатия в моменте. Однако, как показы...

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

Анализируем виды тестов для Frontend С развитием веба сайты превратились в сложные приложения, которыми ежедневно пользуются десятки и сотни миллионов людей: почта, облачные хранилища, соцсети, маркетплейсы, стриминговые платформы и т. д. И каждое из них должно работать корректно. Как это сделать...

GraphQL и микросервисная архитектура: объединяем сервисы в федерацию Меня зовут Владислав Гончаров, я разработчик в команде Platform V DataSpace СберТеха. Расскажу, как мы решаем вопрос с объединением сервисов в GraphQL и микросервисной архитектуре, которая позволяет разбить любое большое приложение на маленькие сервисы. С одной стороны, их п...

От конструктора до облака: какие есть способы разработки мобильных приложений Привет! На связи Вася Крючков, уже больше 7 лет я занимаюсь разработкой мобильных приложений и сейчас работаю в компании IMSHOP.IO, где за 5 лет разработали больше 150 приложений для ритейла. За эти годы часто встречал случаи, когда е-com менеджеры и технические директора сл...

Быстрый старт, или Как ускорить запуск iOS-приложений Всем привет! Меня зовут Фируза, я iOS-разработчик в компании SimbirSoft. В этой статье мы попробуем разобраться, как ускорить запуск приложения, а именно:• что происходит от момента нажатия на иконку приложения до представления возможности пользователю взаимодействовать с U...

Проект Альфа-Бизнес Mobile Web (веб-приложение), или Что делать если AppStore — всё? Начиная с ведения санкций в 2022 вниманием не обошел и банковский сектор. Сказалось это и на возможности вести разработку и обновлять банковские приложения в Google Play и AppStore. Если ограничение Google Play можно обойти через множество альтернативных сторов или, на худой...

Релиз без ошибок. Невозможное возможно? Привет! Меня зовут Сергей, я технический эксперт в компании Bercut. Когда-то увлекался Delphi и J2ME, издал несколько книг на эти темы, а сейчас создаю высоконагруженные приложения для баз данных.Первой СУБД, с которой я познакомился — случилось это в далеком 2002 году, ...

5 идей, как улучшить Discovery-процессы в команде, если ты продуктовый дизайнер Всем привет! Меня зовут Дарья Томилова, я старший продуктовый дизайнер в СберМаркете. Полтора года назад я пришла в кроссфункциональную команду, которая работает над сервисом самовывоза, — это когда клиент оформляет заказ через приложение СберМаркета, но не пользуется опцией...

Понимаем с полуслова: как работает поиск товаров в СберМаркете Всем привет! Меня зовут Аня Власова. Я работаю ML-инженером в команде Поиска СберМаркета. В этой статье я расскажу, как устроены наши процессы: с момента, когда пользователь вводит запрос, до получения поисковой выдачи. Если вы разрабатываете поиск или просто интересуетесь т...

Альтернатива Nova: почему решили перейти с самописного решения на Orchid Привет. Меня зовут Артем, я backend-разработчик в Пиробайте. Когда я только пришел в компанию, то узнал, что команда разрабатывает административные панели на основе самописного решения, созданного внутри студии. Когда-то за основу был взят шаблон Inspinia, и для него написан...

Техническое собеседование инженеров мобильной разработки в RuStore Привет Хабр, меня зовут Вячеслав Таранников, я старший Android-разработчик в команде монетизации RuStore, и сегодня хочу поделиться взглядом, из каких ингредиентов можно собрать полезное и эффективное техническое интервью. Читать далее

Как я стал ментором за пределами компании Всем привет! Меня зовут Юра Тюрин, я CTO, управляю разработкой SaaS-приложения для ритейла с командой из трёх десятков разработчиков, тестировщиков, DevOps-инженеров. Специализируюсь на разработке клиент-серверных мобильных и веб-приложений. Наставничеством внутри компании я...

Что такое semantic-release и как с ним работать Привет! Я — Алексей Бондаренко, работаю в команде Платформа Банки.ру. Сегодня хочу рассказать о semantic-release и его практическом применении на примере упрощения разработки и внедрения библиотеки в проект.  Читать далее

Как мы создавали дизайн-систему: опыт компании Звук Привет, Хабр! Меня зовут Мария Бажина, я Android Developer в компании Звук. Вот уже полтора года я работаю над дизайн-системой, поэтому знаю здесь каждую мелочь. И в этой статье я хочу рассказать, зачем нам нужна дизайн-система и в каком виде она существует в нашем прое...

Postman Interceptor — альтернатива классическому сниффингу (краткий гайд по установке и взаимодействию) Привет, хабровчане! У вас было такое, когда снифаешь спокойно трафик через бесплатную версию Charles, а потом появляется окошко через час работы и закрывает программу? А может вы думаете, что переросли функционал других снифферов и хотите попробовать что-то новое и необычное...

Step by step: интегрируем интерактивные 2D/3D-объекты в iOS-приложение Привет, Хабр! Меня зовут Степан, я iOS-разработчик SimbirSoft.В очередной раз открыв одно из ежедневных приложений, я обнаружил любопытную фичу: интерактивный 3D-элемент в виде звездочки. Казалось бы, ничего необычного, но это сделало взаимодействие с приложением немного при...

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

Как Додо Пицца доставляет свежий код: история мобильного CI для iOS Мобильная разработка под iOS особенная: собрать приложение можно только на macOS, среда разработки по сути только одна, большая часть принятого в сообществе тулинга написана на Ruby, свой пакетный менеджер появился только пару лет назад. Тяжко.А когда речь заходит про автома...

Как и где практиковаться начинающему мобильному разработчику Всем привет! Меня зовут Миша Вассер. Я руковожу мобильной разработкой в AGIMA, а ещё я наставник и автор на курсе «Android-разработчик» в Яндекс Практикуме. Помню то время, когда я начинал заниматься разработкой, — материалы были в основном на английском, а специализированны...

Границы проекта в условиях «the roof is on fire» Привет, Хабр! Меня зовут Даниил Старосек, я работаю аналитиком в проекте ЕФР в Россельхозбанке. Сегодня расскажу вам о работе в условиях the roof is on fire. Поскольку мне не совсем комфортно говорить о себе в первом лице, будем использовать усл...

ChatGPT плохо отвечает на «простые вопросы». Как это починить? Привет, Хабр! Меня зовут Антон Разжигаев, я аспирант в Сколтехе и участник научной группы Fusion Brain (AIRI), работающей над мультимодальными подходами. В этой статье я расскажу о нашей последней работе — Multilingual Triple Match — системе для поиска ответов на фактологиче...

Шаблонный сервис C# Всем привет, я разработчик из компании Bimeister и я хочу рассказать о шаблонном C# сервисе, который мы создали, чтобы унифицировать наши приложения и сократить время работы разработчиков над базовой настройкой приложения.Мы начинали небольшой компанией с одним основным серв...

Как мы удвоили разрешение фотографий с помощью камеры Flutter на iOS Привет, меня зовут Сергей, и я мобильный разработчик в компании Brickit. Некоторое время назад мы наконец мигрировали приложения для iOS и Android на общий код на Flutter. Мы были в восторге от результата, но сам переход был далеко не гладким. Одной из важных частей этой ава...

Пароли в открытом доступе: ищем с помощью машинного обучения Я больше 10 лет работаю в IT и знаю, что сложнее всего предотвратить риски, связанные с человеческим фактором. Мы разрабатываем самые надежные способы защиты. Но всего один оставленный в открытом доступе пароль сведет все усилия к нулю. А чего только не отыщешь в тикета...

Как департамент утилизации CPU превратился в департамент экономии железа, выдерживающий нагрузку в 1 млн RPS Привет, меня зовут Мария, когда-то я работала на шахте, потом на заводе, а 3.5 года назад пришла в Ozon Tech. Сейчас я старший Golang-разработчик в команде product-facade. Это самый высоконагруженный сервис маркетплейса, но так было не всегда.Хотите узнать, что скрывается по...

Пристальный взгляд на отладку JavaScript приложений Всем привет! Меня зовут Паша Востриков, я делаю на JS/TS много разного в «Лаборатории Касперского»: фронт, облачные сервисы (Node.js), штуки для коробочной поставки (OnPrem), платформенные компоненты и библиотеки. И, конечно же, Open Source. Сегодня хотел бы затронуть тему ...

Epic Games Store мотивирует разработчиков повышенной прибылью Сегодня появилась крайне интересная информация о платформе Epic Games Store, которая должна понравиться многим разработчикам видеоигр. Суть нововведения заключается в том, что данная платформа теперь будет привлекать разработчиков, выпустивших свои видеоигры на других платфо...

Главные KPI для эффективной работы команд Всем привет!Меня зовут Петр и я работу в одном из крупных банков, буду рассказывать об управлении ИТ в крупной организации. Сегодня первой темой станет система KPI для управления командами. Расскажу зачем вообще нужны KPI, какой путь прошла наша компания, и в конце открою с...

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

Библиотека Scout — быстрый и безопасный DI на Kotlin Привет! Меня зовут Александр Миронычев. Я занимаюсь инфраструктурой приложения Яндекс Маркет под Android. Около двух лет назад при работе над модульностью у меня появилось желание написать собственную библиотеку для внедрения зависимостей, которая позволила бы ускорить сборк...

Главные отличия PCA от UMAP и t-SNE Здесь будет рассказано о главных отличиях самого старого и базового алгоритма снижения размерности - PCA от его популярных современных коллег - UMAP и t-SNE. Предполагается, что читатель уже предварительно что-то слышал про эти алгоритмы, поэтому подробного объяснения каждог...

Как сэкономить миллионы рублей, или перевод документации нейродвижками Всем привет!Меня зовут Александр Денисов. Я работаю в компании Naumen и отвечаю за документирование и локализацию программного продукта Naumen Contact Center (NCC).В этой статье я расскажу о том, как у нас был автоматизирован процесс перевода документации с помощью нейродвиж...

Топ-3 причины, почему вы должны использовать Copilot Всем привет! Меня зовут Анатолий Барцев, я frontend-разработчик в команде Модерации Циан. Я решил протестировать Copilot, чтобы оценить, полезен ли он для реальной разработки. В статье расскажу, какие выделил для себя плюсы использования, а также покажу, как GitHub Copilot п...

Лучшие практики RuStore: правила хорошего Code Review для Android Привет, я Михаил Емельянов, руководитель Android-направления в RuStore. Над стором трудится большая команда разработчиков, проект регулярно дорабатывается, а количество новых строк кода неизменно увеличивается. За год работы команда магазина приложений выпустила невероя...

Цифровая археология: как гик копирует дискеты для спасения старых игр и приложений Сегодня мы расскажем небольшую историю Джона К. Морриса, программиста и известного участника комьюнити, посвящённого компьютерам Apple II. Поняв, что драгоценные данные с гибких дисков от времени стали безвозвратно теряться, он решил создать собственный способ сохранить люби...

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

Kaspresso для самых маленьких Привет! Меня зовут Элчин, я занимаюсь автоматизацией мобильных приложений в hh.ru и расскажу вам о том, как написать первый тест на Android. В разработке автотестов мы используем Kotlin и нативный фреймворк Kaspresso, о котором я напишу подробней в этой статье. Читать далее

Что такое MLOps и как мы внедряли каскады моделей Привет, меня зовут Александр Егоров, я MLOps инженер. В статье расскажу о том, как мы в банке выкатываем огромное количество моделей. Разберём не только пайплайн по выкладке отдельных моделей, но и целые каскады. Читать далее

Приключение на 20 минут: как войти (и не выйти) в готовую автоматизацию на проекте Всем привет, меня зовут Никита, и я QA-инженер в компании Bimeister. Мы помогаем промышленным предприятиям с цифровой трансформацией. Грубо говоря, помещаем завод с детализацией до каждой балки в окно браузера. Сейчас я работаю в компании чуть больше полугода, поэтому по све...

10 признаков недопонятого Agile, или почему ваш Agile не работает Всем привет! Меня зовут Анна Мозер, я работаю тимлидом системных аналитиков в X5 Tech. Мне удалось поработать и в корпорации, и в стартапе, и в качестве фриланс Delivery Manager на этапе запуска стартап команды. Системный аналитик находится в центре между бизнесом и ком...

В Google Play Store появилась функция удалённого удаления приложений Сегодня в релиз отправилась версия приложения Google Play Store (цифровой магазин приложений для устройств на операционной системе Android) с индексом 38.8, в которой компания Google добавила возможность удаления приложений удалённо с устройств, подключённых к аккаунту польз...

Метод SMART. Что это и почему про него важно знать руководителю? Привет! Меня зовут Лера, я в управлении проектами уже 7 лет. Реализовывала проекты на стыке AR/VR/ML-технологий в сервисной компании. Сейчас работаю в EdTech и параллельно занимаюсь менторством начинающих проджектов и руководителей.Прежде чем мы перейдем к основной...

Что такое продуктовый подход и особенности использования его элементов в государственном банке Привет, Хабр! Меня зовут Олег Брандин, я главный архитектор в РСХБ‑Интех. Сегодня расскажу вам свое понимание пути от ИТ‑стратегии и ЦиЗ СЦТ (Цели и задачи Стратегии цифровой трансформации) до формирования продуктовой команды и защиты бюджета в реалиях го...

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

Как мы загрузочный экран приложения в полезный для пользователя инструмент превратили. Кейс онлайн-кинотеатра KION Привет, Хабр! Меня зовут Михаил Фандуберин, я Product Owner, отвечающий за авторизацию и онбординг в KION. В прошлом августе я написал статью о повышении конверсии регистраций на примере страницы входа онлайн-кинотеатра KION. Сегодня расскажу о другом проекте — работе со ста...

Расчетная архитектура платформы для A/B-тестов Mail.Ru Привет Хабр! Меня зовут Андрей Каймаков, я работаю в продуктовой аналитике Mail.ru в VK. Сейчас практически каждая IT-компания (да и не только IT) знает про A/B-тесты и понимает важность проверки новых фичей с помощью этого метода. Когда фичей становится много, то A/B-тесты ...

Как менять команды, не увольняясь из компании. Культура горизонтальной мобильности в Контуре Меня зовут Настя Миронова, я менеджер разработки в Контуре и уже около двух лет  руковожу командой Рейнджеров – это разработчики без своего продукта, такие мобильные инженеры. Команда появилась в конце 2020 года, и за это время мы постоянно исследуем, чем можем помочь п...

Что ждёт мобильную разработку в 2024 году Привет! Меня зовут Таня Шашлова, я руковожу образовательными продуктами по мобильной разработке в Практикуме. Чтобы обучать людей профессии и помогать им найти работу, нам важно понимать, как меняется рынок, поэтому мы с командой держим руку на пульсе — общаемся с разра...

В поиске оптимального подхода к миграциям в Go Привет! Меня зовут Нина, и я Golang разработчик.Однажды, мы поняли, что в нашей компании очень много Go-сервисов, но каждая команда использует свой инструмент и подход. Поэтому мы решили систематизировать и унифицировать инструменты, используемые для создания и применения ми...

Почему FilamentPHP — это хорошее решение для создания CMS Привет, Хабр! Меня зовут Егор Черненок, я работаю PHP-разработчиком в AGIMA. В этой статье расскажу вам о FilamentPHP. В документации говорится, что это набор красивых Fullstack-компонентов для Laravel. От себя добавлю, что он отлично подходит для построения CMS. А теперь по...

Система мета-сборки GN: краткий обзор и подходы Привет! Меня зовут Александр, я работаю в VK в команде браузера Atom. В его основе лежит open source-движок Сhromium. Сегодня хочу поговорить о системе мета-сборки GN. Её используют в крупных проектах Google (Chrome, Fuchsia, а также связанных с ними), и, например, когда раз...

Apache Flink: динамическое определение выходного топика в Kafka Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в цикле статей.В предыдущей статье — «Apac...

Где работать в IT в 2023: DatsTeam Наша рубрика «Где работать в IT» — это интервью с интересными айти-компаниями, в которых они делятся подробностями о процессах своей работы. Представители индустрии отвечают на вопросы о найме, условиях, командах и технологиях.В этом выпуске мы расскажем про компанию DatsTea...

Объектно-ориентированный подход к написани REST-клиентов, или возможна ли жизнь без Open API Как-то в общении с моим другом-разработчиком из одной крупной софтверной компании у нас зашёл разговор о взаимодействии распределённых команд. В его компании было множество достаточно изолированных команд, каждая из которых разрабатывала свой сервис. В ответ на мой вопрос, к...

database/sql: плохой, хороший, злой Многие Golang-разработчики  пробовали работать с БД в Go, и у каждого — свои боли. В этой статье разберём библиотеку database/sql как безотносительно конкретной СУБД, так и применительно к YDB. Рассмотрим трудности эксплуатации при использовании драйвера database/sql на...

Модели вероятности дефолта: практические аспекты разработки и подводные камни Когда люди задумываются о профессии data scientist-а они в первую очередь вспоминают нейронные сети, которые создают красивые картинки или ведут с человеком псевдоосмысленные диалоги. Существует огромное количество материалов посвященных такого рода моделям, и они безусловно...

Документация как сервис: как мы генерируем документы независимо от стека разработки Привет, Хабр. Меня зовут Наталья Павликова, в YADRO я работаю в команде DocOps. У нас обширная инфраструктура вокруг задач документирования, которая немного напоминает ходячий замок Хаула. Сегодня я расскажу о небольшой ее части — процессе автоматической генерации и публикац...

Экстремальные практики программирования: что, как и зачем Всем привет! Меня зовут Сергей Бережной, я работаю в Яндексе уже 18 лет: в 2005 году пришёл разработчиком интерфейсов, потом руководил подразделениями разного размера, а сейчас я директор по взаимодействию с разработчиками. Ещё я много занимаюсь обучением: в рамках наших сез...

Apple Vision Pro: обзор платформы и создание первого мобильного приложения Привет! Меня зовут Андрей Груненков, я iOS - разработчик в агентстве InstaDev. Делаем мобильные приложения, которые помогают бизнесу расти. В этой статье я расскажу о том, как разработать первое мобильное приложение для платформы Apple Vision Pro.Для начала надо сказать пару...

Как мы построили свой лунапарк (с блекджеком, разумеется) или опыт внедрения системы управления ИТ-проектами Привет, Хабр! На связи команда Проектного офиса НЛМК-ИТ. В жизни каждого Проектного офиса наступает момент, когда населяющие его менеджеры и другие сотрудники задумываются о внедрении системы управления проектами. Манящая простотой и выгодами идея редко обходится без подводн...

Как работает блокчейн Scroll: технические детали и обзор архитектуры Привет, Хабр! Меня зовут Леша Куценко, я разработчик смарт-контрактов на Solidity в команде MetaLamp. ​​В этой статье я расскажу про основные технические принципы блокчейна Scroll, которые повлияли на дизайн блокчейна, а также дам обзор общей архитектуры блокчейна.Из этой ст...

Как я документацию для дизайн-токенов в Storybook генерировал Привет, Хабр! Меня зовут Саша, я Full-Stack разработчик и последние 7 лет пишу фронтенд, 6 из которых я работаю в американском стартапе. Я думаю ни для кого не секрет, что бизнес процессы в стартапах, мягко сказать,  хромают. Я же как оптимист вижу возможность в ка...

Программист мало пишет, но много читает Здравствуйте, меня зовут Александр, я backend-разработчик. Цель данной публикации – проанализировать затраты времени при разработке приложений. Расчеты приведены на основе web приложений на языке Python. Так же не рассматривается ситуация разработки MVP для получения различн...

WidgetKit в iOS — не просто большие иконки Меня зовут Даша, я iOS-разработчик в Surf. Сегодня я освежу в вашей памяти философию и design виджетов. Подсвечу технические аспекты, которые помогут, если вы собираетесь делать свой первый виджет или хотите вдохнуть жизнь в старый. А ещё затрону несколько неочевидных, ...

[recovery mode] Кто входит в команду разработки игр? В этой статье я расскажу про тех людей или те профессии, которые участвуют в предпродакшене, продакшене и постпродакшене. Понятно, что все зависит от целей и возможностей. Для хакатона будет достаточно программиста, дизайнера и чувака, который делает всё. Для создания GTA 6 ...

Мифический человеко-DevOps Привет! Меня зовут Эмин, я тех-лид платформенных команд в Профи. В этой статье поделюсь мнением о том, что такое хороший DevOps и какими качествами должен обладать DevOps-инженер.  Читать далее

Kotlin (не) против Java: особенности компиляции в байткод В 1995 году Sun Microsystems представили Java — объектно-ориентированный язык программирования, основное кредо которого можно сформулировать так: «Написано один раз, работает всегда». В 2011 году как улучшенную альтернативу Java компания JetBrains представила Kotlin — язык с...

Коротко про алгоритмы и структуры данных Привет, Хабр! Меня зовут Ричард, я работаю в команде kPHP в VK, занимаюсь разработкой kPHP, плагинов для IDE, а также другого инструментария, делая жизнь разработчиков проще. В своей работе мне приходится иметь дело с PSI деревьями, AST, самопис...

Как настроить тестирование с Vanessa Automation и Gitlab с нуля Боитесь, что тесты пропадут, если компьютер сломается? Хотите видеть историю изменений? Вынуждены запускать тесты в отпуске, т.к. у других членов команды нет к ним доступа? Не можете одновременно работать над написанием и прогоном? Знакомы эти проблемы, хотите избавиться от ...

Оптимизируем параметры запуска приложения Spark. Часть первая Привет! Меня зовут Андрей Чучалов, я работаю в билайне, и в этом посте я расскажу про оптимизацию параметров запуска приложений в Spark, поиск проблем и повышение производительности. Разберем запуск приложений Spark в базовой и расширенной версиях, покажу методы расчёта осно...

Как мы прогнозируем объемы грузоперевозок на основе машинного обучения, используя MLflow Привет, коллеги! Меня зовут Александр Кузьмичев, и я ведущий специалист по анализу данных в Первой грузовой компании. Мы с коллегами разработали «Прогнозатор» — инструмент для оценки объемов грузоперевозок между ж/д станциями. В основе лежит открытая платформа MLflow, и сего...

Protestware: найти и обезвредить Protestware: найти и обезвредить Привет, Хабр! Меня зовут Владимир Исабеков, я работаю в Swordfish Security, где занимаюсь динамическим анализом приложений. Сегодня мы поговорим о таком явлении, как Protestware, когда вредоносный код встраивается в открытые программные компо...

Обзор Polygon zkEVM: как работает L2 решение для Ethereum Привет, Хабр! Меня зовут Леша Куценко, я разработчик смарт-контрактов в команде MetaLamp, мой основной стек – Solidity. В этой статье я подробнее расскажу про решение для масштабирования с нулевым разглашением (Zero-knowledge proof), а именно – о блокчейне второго уровня Pol...

Отладка в PL/SQL Developer Привет! Меня зовут Алексей Маряхин, я работаю разработчиком на Oracle и пишу много, очень много кода. И когда программа ведёт себя не так, как ожидалось, на помощь приходит отладка. Не так давно выяснил, что не все разработчики владеют функционалом отладки или знаю...

Как сделать макеты удобнее для команды Привет! Меня зовут Владимир Крылов, и я проектирую внутренние сервисы в Ozon.Продуктовые дизайнеры упаковывают решения проблем в макеты, которые часто смотрят коллеги: другие дизайнеры, менеджеры, аналитики, разработчики и QA-инженеры. Важно, чтобы макеты были максимально по...

Как успешно пройти собеседование на Technical Product Manager в Тинькофф? Личный опыт Всем привет, меня зовут Виктор и на днях я выхожу в Тинькофф на позицию тех-продакта в Платформу базовых мобильных технологий.Во время подготовки к собеседованиям мне очень помогла статья на Хабре, однако там речь шла о позиции QA. Поэтому в этой статье я хочу рассказать о л...

Надёжность граничных прокси в контейнеризированных приложениях на примере Platform V Synapse Service Mesh Привет, Хабр! Меня зовут Данила Трушин, я руководитель направления в СберТехе. Мы с командой развиваем Platform V Synapse Service Mesh — продукт, который обеспечивает надёжную безопасную интеграцию и оркестрацию микросервисов в облаке.При промышленно...

Как мы работаем с ресурсами в веб-приложениях Приложения, созданные на платформе 1С:Предприятие, могут быть развернуты в трёхзвенной архитектуре (Клиент – Сервер приложений – СУБД). Клиентская часть приложения может работать, в частности, как веб-клиент, в браузере. Веб-клиент – это довольно сложный фреймворк на JavaScr...

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

Кем работать в IT в 2024: ведущий разработчик 1С Рубрика «Кем работать в IT» — это интервью с представителями IT-профессий, в которых специалисты рассказывают о тонкостях своей работы: плюсах, минусах, подводных камнях и заработной плате. Мы надеемся, что джунам и стажёрам она поможет больше узнать о том, что их ожидает на...

Что я делал, когда развивал свою карьеру бэкенд разработчика Меня зовут Константин, последние 6 лет я профессионально занимаюсь разработкой. К сожалению (а может быть и к счастью) у меня нет фундаментального образования по computer-science. Я решил сменить профессию после 30, поменяв предметную область с фондового рынка на программиро...

Хватит маппить все руками, используй Mapster Привет, Хабр! Меня зовут Георгий, я С#-разработчик в SimbirSoft. Хочу рассказать об опыте использования библиотеки Mapster: как он может упростить разработку, сэкономить силы и частично избавиться от рутины маппинга.Данная статья подойдет и тем, кто только собирается открыть...

Горизонтальные связи и ролевая модель большой команды Когда отряд теряет бойца — коллега даже в большой команде уходит в отпуск или увольняется, — работа часто буксует или останавливается. Происходит это, так как внезапно выясняется, что ушедший был «узким местом» или «критичным звеном». Мне удалось снизить влияние этих «узких ...

Горизонтальные связи и ролевая модель большой команды Когда отряд теряет бойца — коллега даже в большой команде уходит в отпуск или увольняется, — работа часто буксует или останавливается. Происходит это, так как внезапно выясняется, что ушедший был «узким местом» или «критичным звеном». Мне удалось снизить влияние этих «узких ...

Можно ли обойтись без нативных языков, разрабатывая на Flutter и RN? Привет! Меня зовут Дима, я разрабатываю мобильные приложения на Flutter в Пиробайт. Все чаще мне приходится сталкиваться с задачами, в которых требуется обращение к нативному API устройства. Пакетов на pub.dev для решения этих задач мне всегда хватает. Но бывают моменты, ког...

Diplodoc — открытый набор инструментов для создания документации Всем привет, меня зовут Женя Колесников, я из команды Yandex Infrastructure. Сегодня я расскажу, как мы пришли к написанию документации в концепции Docs as Code, придумали для этого набор инструментов, назвали его красивым именем Diplodoc и выложили в опенсорс — теперь вы то...

QA под капотом. Тестируем и настраиваем 1С-Битрикс Привет, Хабр! Меня зовут Анастасия, я QA-специалист SimbirSoft и работаю на проектах с 1С-Битрикс. Не единожды я могла наблюдать, насколько эффективно бывает допустить QA-команду внутрь CMS, чтобы достичь бизнес-целей клиента. И на примере нескольких кейсов из разных проекто...

Проекции в Vertica: что это, как использовать, и почему не стоит создавать их под каждый запрос Иван Якунин, продуктовый аналитик команды Fintech Marketplace, рассказал про то, как в Авито работают с Vertica, и на примерах объяснил, что такое проекции, и когда их стоит использовать. Читать далее

Зачем нужен проектный офис, если компания работает в продуктовом подходе? Привет! Это Оля Муттер, руководитель проектного офиса в СберМаркет Tech. Сегодня я хочу рассказать о проектном подходе в продуктовой разработке. Нужны ли проджекты, если в компании уже есть продакты? Как построить синергию между проектным офисом и продуктовой командой и каку...

Опыт создания Ajax-приложения В начале В данной статье речь пойдет о написании Ajax-приложения. Если говорить проще — то, о написании сайта – работающего без перезагрузок. Быстро, легко, доступно. В этой статье не будет рассматриваться код серверной стороны, будут только примеры, для лучшего понимания. ...

Приглашаем на Ozon Tech Community BI Meetup Всем привет!Меня зовут Дмитрий, я руководитель группы разработки инструментов BI. Стоит ли говорить, что данные вокруг нас и, если мы не умеем с ними работать, то мы не можем функционировать как бизнес вообще? Наша команда платформы данных старается обуздать десятки пет...

Платформа инвестиционного бизнеса. Как устроена IPS в РСХБ Привет, Хабр! Меня зовут Денис Антонов, я работаю SRE‑инженером и менеджером системы на платформе IPS (Investment Platform Solutions) в Блоке ИТ‑развития Инвестиционного бизнеса РСХБ‑Интех (дочерняя технологическая компания Россельхозбанка). Совместно с коллег...

DVC — прекрасный инструмент для DataScience Привет Хабр, меня зовут Дмитрий Несмеянов, я являюсь руководителем направления разработки ML-инфраструктуры "ЛОКО-банка". Сегодня я хочу рассказать про DVC: инструмент, который многие, незаслуженно, обходят стороной. Была хорошая статья от Райффайзен Банк, в этой статье я по...

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

О чем говорят руки. 2 место на соревновании Kaggle Приветствую всех читателей! Меня зовут Артем Топоров, и сегодня я хочу поделиться с вами своим опытом участия в соревновании по распознаванию жестового языка, организованном компанией Google. На этом соревновании, собравшем 1139 команд со всего мира, нам удалось занять 2 мес...

Автоматизируем сборку и деплой приложения в GitLab CI/CD: подробное руководство с примерами При разработке приложений рано или поздно наступает момент, когда заниматься развёртыванием вручную становится затратно и неудобно. Как следствие на помощь приходит автоматизация этого процесса с помощью специально настроенных пайплайнов непрерывной интеграции и непрерывной ...

DataOps Platform: из чего состоит наша платформа для работы с данными и как мы её создавали Привет, Хабр! Меня зовут Наджим Мохаммад, я руководитель продукта МТС. Вместе с моим коллегой, руководителем направления разработки платформы МТС Big Data Максимом Бартеневым сегодня мы  поговорим об эволюции платформ данных и нюансах работы платформы МТС для работы с д...

Инсайдерам Windows 11 доступна новая версия приложения «Фотографии» на базе Windows App SDK Компания Microsoft начала тестирование новой версии приложения «Фотографии» для Windows 11, созданной с помощью Windows App SDK (WASDK). Новая версия получила номер 2024.11040.1002.0 и доступна инсайдерам на каналах Dev и Canary. Теперь приложение «Фотографии» использует ак...

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

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

Как тестировщику уйти из корпорации в стартап и не сойти с ума Меня зовут Лена и я QA Engineer в Brickit, приложении для сканирования кубиков Lego. До этого мне довелось поработать в крупном зеленом банке. В этой статье я расскажу об отличиях корпорации и стартапа в разрезе процессов тестирования и разработки, а также дам несколько прак...

Это база: как создать эффективный рекламный баннер в приложении Всем привет! Меня зовут Света Благодарева, я графический дизайнер, развиваю направление партнёрских коммуникаций в приложении «Кошелёк». В этой статье я поделюсь четырьмя полезными советами, к которым я пришла путём проб и ошибок, АВ-тестирования и большого количества экспер...

Как изменилась Amnezia за 2023 год Первые наши пользователи помнят Amnezia как приложение созданное одним человеком, в светлом дизайне и на английском языке. Сегодня AmneziaVPN - это проект, над которым работает целая команда людей из разных стран. Мы стали больше,  приобрели много опыта и теперь имеем ...

Excel vs Grafana: Автоматизация дежурств Привет, Хабр! Меня зовут Ахмед, я Deputy CTO в Сравни. Сегодня расскажу вам об опыте управления дежурствами в ИТ-команде.Представьте: вы нашли баг на проде; хотите рассказать о находке коллегам, которые отвечают за эту функциональность. Идёте в рабочий мессенджер, пишет...

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

Релизный цикл без компромиссов: надежно для клиентов, удобно для разработки При построении релизного цикла приходится балансировать между двумя крайностями. С одной стороны, хочется по максимуму отлавливать баги и дотошно проверять каждый релиз. С другой — быстрее выпускать обновления и приносить клиентам больше пользы. Мы в Mindbox долго ...

Как мы в РСХБ построили ИБ-платформу с использованием OpenSource-инструментов Привет, Хабр! Меня зовут Михаил Синельников, я DevSecOps TeamLead в РСХБ‑Интех. В сфере ИТ тружусь с 1999 года, в РСХБ попал в 2021 году. Ранее работал в качестве ведущего специалиста и руководителя направлений информационной безопасности в ...

Смогут ли разработчики конкурировать с нейросетями: оцениваем возможности AI и человека Привет, Хабр! Меня зовут Александр Демидов, я директор по разработке департамента управления технологиями МТС. Сегодня поговорим про использование в программировании нейросетей, включая ChatGPT и конкуренцию нейросетей и программистов.Всё чаще слышны разговоры, что вот-вот к...

Пять полезных бесплатных утилит для macOS Если на мобильных платформах большинство приложений и игр распространяется по условно-бесплатной модели, то на macOS ситуация обратная — разработчики сразу ставят ценник за готовую программу. Однако есть на Mac и бесплатные программы. Именно о пяти таких приложениях мы и рас...

ИНЬ-ЯН в UI/UX дизайне Привет, Хабр! Меня зовут Иван Вербов, я UI/UX дизайнер команды разработки платформы контейнеризации dBrain.cloud. Эта статья адресована моим коллегам-юиксерам, а также всем, кого затрагивают задачи анализа, обсуждения и согласования предложений и результатов работы над диз...

Unpacking аналитиков: виды, особенности и отличия Приветствую всех читателей Хабра!Меня зовут Белоусова Александра, я развиваю направление по обучению и стажировкам аналитиков в «Автомакон». У меня довольно разнообразный профессиональный опыт: была и бизнес-аналитиком, и системным, и аналитиком данных, руководила проектами ...

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

Большинство игр будет работать на SoC Snapdragon X Elite. Вопрос производительности пока открыт Уже летом на рынке должны появиться ноутбуки на основе SoC Qualcomm линейки Snapdragon X Elite. Первые тесты показывают, что по процессорной производительности, как минимум в этих самых тестах, топовая платформа линейки очень неплоха. Теперь Qualcomm говорит, что и игры...

Самые полезные библиотеки JS для красивых анимаций Интересное в исполнении приложение всегда сможет привлечь внимание, поскольку мы любим, когда красиво. Но что стоит за этим "красиво"? И начинка, и внешний вид. Сегодня я бы хотела поговорить о внешнем виде, ведь встречают по одежке. А конкретно - про анимации.Анимации добав...

Мульти-тенант в Django Привет, Хабр! Мульти-тенант (multi-tenancy) — это подход, который позволяет одному экземпляру приложения обслуживать множество клиентов или арендаторов (тенатов). Каждый арендатор изолирован от других, имея возможность кастомизации под свои нужды, при этом основной кодовой б...

Как мы реализовали кнопку со свайпом на Jetpack Compose Привет, Хабр! Меня зовут Женя Мельцайкин, я работаю в команде мобильной разработки Контура.Мы разрабатываем экосистему для бизнеса, которая оптимизирует рутинные задачи: работу с маркировкой, проверку контрагентов, товароучет, документооборот, отчетность. И в одном из продук...

Защита кода приложения Android. Когда хотели как лучше, а вышло не очень В статье расскажу пару случаев из практики анализа защиты приложений Android. Имена и место событий изменены. Любые совпадения — случайность Читать далее

Как автоматизировать использование дизайн токенов с помощью Stylelint и PostCSS Привет, Хабр!Меня зовут Саша и вот уже 7 лет я работаю фулстек разработчиком и пишу на C# и TypeScript/React.Сегодня я хотел бы поделиться своим небольшим успехом в автоматизации. В какой-то момент я понял, что во время код ревью я указываю разработчикам на одни и те же ошиб...

Большая шпаргалка по Docker: как распилить монолитный проект на части Погружение в мир контейнеризации с докером — это путь к оптимизации развёртыванию приложений, а также ключ к упрощению жизни разработчиков и системных администраторов. Меня зовут Андрей Аверков, в IT c 2008 начинал пусть с аналитика-проектировщика IT систем, 11 лет в роли ра...

Make It Right! Максимум пользы, минимум проблем: рекомендации по написанию API автотестов на Python Привет, Хабр! Меня зовут Катерина, я инженер по автотестированию в команде онлайн-кинотеатра PREMIER и сегодня я хотела бы поделиться с вами своим опытом в написании API автотестов на Python. Я работаю в сфере автотестирования уже довольно давно и на практике встречаю проект...

Что делать, если кандидат оказался сеньором или психом: советы на случай форс-мажоров Меня зовут Александр Гирев, я Android-разработчик и технический интервьюер. В одной компании я выполнял роль interview expert: следил за качеством собеседований, готовил рекомендации и матрицы вопросов, обучал начинающих интервьюеров.Однажды на интервью я спросил кандидата, ...

САПР-платформа nanoCAD на ОС Linux: что может и чего ждать. Впервые в открытом диалоге с разработчиком На форуме «СИЛА ПЛАТФОРМЫ» компания «Нанософт» анонсировала выход специальной версии Платформы nanoCAD для отечественной операционной системы Астра Линукс. Релиз нового продукта состоялся 24 октября 2023 года.Новость стала самой обсуждаемой среди участников форума и пользова...

Один компонент, 20+ фич, A/B-тесты: Поможет ли машина состояний? Сталкивались ли вы с проблемой возникновения багов из-за пересечения включенных фичей в приложении? Или, возможно, была необходимость одновременно проводить большое число A/B-экспериментов в одном компоненте? Некоторое время назад команда Почты Mail.ru решала задачу упр...

[recovery mode] Что есть реальность, или эффективен ли SCRUM Меня зовут Султанов, и я тимлид (тяжелый вздох). Стараюсь делать разработку эффективной. Иногда даже получается. Вместо предисловияAgile. Кругом Agile. Наверное не осталось людей, команд и организаций, которые работают не по Agile. Слово «SCRUM» прочно вошло в жизнь разрабо...

Мегагайд: культура работы с Git Привет всем! Меня зовут Юля, я фронтенд-разработчик, наставник на курсах по JS и React и организатор профессионального сообщества Tbilisi JS. В Практикуме я помогаю студентам на курсе «React-разработчик».За время работы в разных компаниях и над разными проектами я поняла, чт...

Подборка: навыки и инструменты начинающего Go-разработчика Привет! Меня зовут Александр Тетеркин, я Go-разработчик в VK. Раньше я писал на Python, потом перешел на Go — пишу на этом языке уже три года, а также являюсь наставником на курсе «Go-разработчик с нуля».Я знаю, что новички в любой сфере задаются вопросами о том, с чего нача...

Работа с UI-автотестами под Android: от запрета мерджа к особенностям запуска UI-автотесты под Android — отличный инструмент, который позволяет кратно сократить время на проверку разрабатываемых фич и свести к минимуму участие в ручном регрессионном тестировании инженеров по обеспечению качества. Но работать с UI-тестами надо правильно — иначе все мож...

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

Ozon Tech Community 1C Meetup Как сделать жизнь 1С разработчика проще? У нас есть ответ.Всем привет, меня зовут Евгений, я руководитель группы разработки финансовых систем 1С. Приглашаю вас на Ozon Tech Community 1C Meetup, 10 октября в Санкт-Петербурге.На встрече обсудим целую палитру тем: от подходов п...

Как реализовывается WebAssembly в Rust: кратко Привет, Хабр!Rust - язык, который за последние годы завоевал сердца разработчиков своей надежностью, а в особенности безопасностью. WebAssembly в свою очередь позволяет нам перенести производительность и мощь нативных приложений в браузер. Вместе эти инструменты позволяют сд...

Удалёнка в ИТ-2023: золотая пуля или преграда для карьеры? В чём хранить деньги, в рублях, твёрдой валюте или золоте? Кто круче, Александр Овечкин или Уэйн Гретцки? Что лучше, удалённая работа, гибрид или офис?В жизни множество вечных вопросов, попробуем ответить на последний. На эту тему написано уже немало статей, но тема не ...

Мониторинг на Python: как сохранить метрики в мультипроцессном режиме Привет, Хабр! Меня зовут Никита, я backend-разработчик команды клиентских сервисов. В Selectel мы строим и поддерживаем IT-инфраструктуру для компаний, которые развивают свои цифровые продукты. В нашем департаменте около 20 приложений, большая часть из которых работает на F...

Сравнение Open Source BI-платформ Привет, Habr!Меня зовут Остапенко Настя, я лидирую направление BI в компании Axenix. Год назад мы выпустили статью с большим обзором Российского рынка BI. На этот раз мы проведем сравнение трех популярных Open-Source BI-платформ: Apache Superset, Metabase и относительно ново...

[Перевод] Как продлить срок службы старых PHP-приложений PHP постоянно развивается. Каждый год радует нас крупным релизом, содержащим новые фичи, улучшения производительности, целую кучу исправлений и даже изменения в синтаксисе. Разработчики ядра PHP поддерживают две последние версии PHP, активно устраняя ошибки и добавляя исправ...

Как закрыть весь техдолг автотестов за два дня «по-домашнему» Привет, меня зовут Яна, я технический лидер тестирования Платежей и переводов Альфа-банка и сегодня мне бы хотелось поделиться с вами интересным опытом, который, в перспективе, можно использовать и как добрую традицию. Речь пойдет о мероприятии под названием «QA Automation D...

Экзотические баги и их устранение Привет, Хабр! Меня зовут Андрей Ахметов, я ведущий инженер и тестировщик системы ЕСПП в ООО «РСХБ-Интех», технологической дочке Россельхозбанка. Сегодня расскажу вам шесть небольших историй о том, какие экзотические баги бывают и как их устранять. Читать далее

Подход, который помог нам точно оценить трудозатраты на разработку дизайн-системы При планировании проекта команде дизайна приходится отвечать на много вопросов. Главные — что делать, как долго и сколько это будет стоить. Ответы есть не всегда и точно не у дизайнеров, которые занимаются отдельными задачами и не видят картину в целом. Меня зовут Александр...

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

[Перевод] Разбираемся с динамической памятью (кучей) в приложениях Java Начнём с простого вопроса. В самом ли деле каждый Java-разработчик понимает, как в Java работает память? Одна из обязанностей любого Java-разработчика — гарантировать, что в результате тонкой настройки приложения на Java из него получится выжать такую производительность, как...

Эволюция главного экрана: хаос, исследования и редизайн Всем привет! Меня зовут Анна Бугрий, я старший продуктовый дизайнер и работаю в сфере шесть лет. Последние два года создаю совершенный опыт и дизайн для пользователей  СберМаркета. Команда, в которой я работаю, отвечает за главный экран приложения и навигацию на всех пл...

Как я ищу себе сотрудников в команду DevSecOps и AppSec Привет! Меня зовут Михаил Синельников. Я DevSecOps TeamLead в РСХБ‑Интех. Тружусь в ИТ‑сфере уже 25 лет, немалую часть из которых — на руководящих должностях. Сегодня расскажу, как я ищу специалистов к себе в команду DevSecOps и A...

Айтишникам нельзя не быть креативными, и я сейчас это докажу Всем привет. Меня зовут Антон, я Scrum-мастер IT-отдела компании AppEvent и по-совместительству front-end разработчик. В моей первой статье на Хабр хочу рассказать вам, почему же айтишнику нужно быть креативным и как этот навык вообще можно проявить. Ведь зачастую он являетс...

7 причин моей гибкости. Как работают принципы ITIL Привет, меня зовут Кирилл, в СИГМЕ я работаю в департаменте решений SAP. И речь сегодня пойдет о 7 руководящих принципах ITIL, которые я хочу раскрыть на собственных примерах. Эти принципы не новы, но, как бывает с классикой, — к ней хочется возвращаться. Тем более что обозн...

[Перевод] Становится ли ПО хуже? Недавно я наткнулся на пост Никиты Прокопова Software disenchantment. Он заставил меня вспомнить пост Мацея Цегловски The Website Obesity Crisis и множество других статей подобного типа. Среди людей, пишущих о разработке ПО, возникает всё более широкий консенсус о том, что ...

Истории должны умереть Привет, меня зовут Андрей Осягин, я Product Owner в Домклике и отвечаю за продукт «Кабинет участника сделки». Он нужен для подготовки к ипотечной сделке с момента первичного одобрения заявки и до самой выдачи кредита. MAU Домклик сейчас превышает 16 млн пользователей.Я расск...

Помощь логистам: как сделать SMS-уведомления о разгрузке товара на складе на основе FastAPI Привет, Хабр! Меня зовут Анастасия Иванова, я технический писатель МТС Exolve. Сегодня расскажу о системе SMS-уведомлений, созданной с помощью FastAPI. Она оповещает логистов о прибытии автомобилей на склад и автоматически назначает приёмщиков.  Система интегрирована с ...

Отказоустойчивая архитектура: почему Tarantool не падает? Основная проблема в высоконагруженных приложениях — отказоустойчивость. Нагрузка с упавших узлов в кластере должна переключаться на живые. Это кажется несложной задачей, но на практике появляется много подводных камней. Мы с yngvar_antonsson потратили много времени на подд...

Формула успешного игрового сеттинга Привет. Меня зовут Николай и я работаю арт-директором в игровой индустрии. Сегодня я хотел бы рассказать о визуальном сеттинге в играх: привести аналитику популярных сеттингов на рынке мобильных и десктопных игр, рассказать о том, почему некоторые из них стали культовыми, и ...

[Перевод] Флаттер 3.18 | бета-релиз | Топ-8 фичей Привет! Меня зовут Саша Ворожищев, я руководитель направления Flutter/iOS в AGIMA. У одного из организаторов митапов Flutter Indore вышла хорошая статья — решили перевести ее для нашей команды и заодно для всех желающих. Дальше его текст с небольшими сокращениями, а после — ...

Впихнуть невпихуемое, или Как мы боролись с сервисами, которые слишком много «ели» Всем привет! Меня зовут Максим, я релиз-инженер Ozon, и в этой статье я расскажу про впихивание невпихуемого, или про оптимальную с точки зрения используемых ресурсов стратегию деплоя в Kubernetes, которая позволила нам сэкономить тысячи ядер CPU и терабайты RAM. Читать дале...

XMPP vs WebSockets: что использовать для приложения чата Если вы планируете разработать приложение для коммуникации в реальном времени, например чат, следует тщательно выбирать технологии. В этой статье Анастасия Иванова, технический писатель платформы МТС Exolve (входит в экосистему МТС), сравнивает два популярных инструмента — п...

Это база: нюансы работы с Redis. Часть 1 Привет! Меня зовут Петр и мы в компании Nixys очень любим Redis. Эта база используется, если не на каждом нашем проекте, то на подавляющем большинстве. Мы работали как с разными инсталляциями Redis, так и с разными версиями, вплоть до самых дремучих, вроде 2.2. Несмотря на т...

«Разгоняем» HashSet, HashMap и циклы на примере Dart Если вы занимались профилированием своего приложения, то, глядя на CPU Flame Chart, вероятно, испытывали смесь досады и азарта, глядя на особо «жирный» метод. Досады – что ваша программа всё ещё не идеальна по скорости. Азарт – от того, что вы можете докопаться до причины пр...

МойОфис обновил цифровое рабочее пространство Squadus. В релизе 1.4 улучшены возможности для коммуникации команд В 2023 году мы выпустили цифровое рабочее пространство Squadus. Продукт быстро приобрел популярность и стал востребованным: это полноценная замена решениям иностранных вендоров, ушедших с российского рынка. В частности, функциональность Squadus покрывает потребности пользова...

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

Мониторинг Apache Airflow. Оценка «прожорливости» тасок Всем привет! Случались ли у вас ситуации, когда количество DAG’ов в вашем Airflow переваливает за 800 и увеличивается на 10-20 DAG’ов в неделю? Согласен, звучит страшно, чувствуешь себя тем героем из Subway Surfers… А теперь представьте, что эта платформа является единой точ...

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

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

Лучшие альтернативы ChatGPT для QA Привет, Хабр! Меня зовут Иван, я Full Stack QA. Сегодня поговорим про альтернативы ChatGPT, которые работают на территории РФ без костылей и совершенно бесплатно.Каждую из LLM моделей я использую как в повседневной жизни, так при написании автотестов, изучения нового материа...

Самое важное про Android-разработку с developer keynote конференции Google I/O 2024 Всем привет! Меня зовут Мялкин Максим, я лид мобильной команды в KTS. Сейчас проходит Google IO 2024, и мы с ребятами в команде решили выпустить обзор треков, которые нам показались интересными. Мы сконцентрируемся на Android-направлении. На основном keynote все внимание бы...

Как управлять распределённой системой, не привлекая внимания санитаров Привет! Меня зовут Александр Попов, я tech lead команды маркетплейса 05.ru. Сейчас мы занимаемся бэком маркетплейса и некоторыми другими сервисами на рынке Дагестана. При разработке серверной части маркетплейса мы сразу решили строить её в распределённой архитектуре. Эт...

Kotlin Coroutines. Часть 1: Первое погружение Привет, Хабр!Меня зовут Соловьев Андрей, я Java-разработчик в «Рексофт». Сегодня мы поговорим про Kotlin Coroutines. Это моя первая серьезная публикация, и я буду рад вашему фидбеку.Ну что ж, давайте начинать! Читать далее

Потрошим golang: как устроена память Привет, меня зовут Стас, и я работаю в VK Cloud над разработкой облачных сервисов в команде Data Masters. Сервисы, запрошенные клиентами, так или иначе должны развернуться в том виде, в котором клиенты их запросили, в адекватные сроки и без ошибок. Существует множество мех...

Используй Силу, Люк: Single Pane of Glass в Мире SRE Привет, Хабр! Меня зовут Кирилл, я работаю в IT более 13 лет. Сначала инженером по внедрению, потом DevOps, потом SRE, также работал руководителем группы сопровождения. Сейчас SRE в VK Рекламе, поэтому знаю, как важно делать правильные инструменты для анализа проблем. В...

Как использовать html-элемент <dialog>? Привет, Хабр! Меня зовут Александр Григоренко, я фронтенд-разработчик. В основном, занимаюсь разработкой приложений на React, но также постоянно экспериментирую с различными технологиями.В своей работе я часто создаю собственные или использую уже готовые UI-компоненты. Пробл...

Как я написал свой первый классификатор эмоций Всем привет! Немного о себе. Меня зовут Максим, я работаю специалистом по Machine Learning в компании SimbirSoft. Последние два года я углубленно изучал область машинного обучения и компьютерного зрения и сегодня с удовольствием поделюсь с вами опытом разработки личного пет-...

Пользователи Android Auto жалуются на проблемы с GPS Пользователи автомобильной платформы Google начали жаловаться на проблемы с сигналом GPS, появившиеся после выхода стабильного обновления Android Auto 10.5. По словам некоторых пользователей, они столкнулись с проблемами, связанными с GPS во время вождения. Несколько п...

Давайте поговорим о Kubernetes Всем привет! Меня зовут Андрей, я DevOps инженер.Когда я начинал изучать Kubernetes (K8s), я перечитал много статей, и, что в статьях, что в документации, информация была сильно разрознена, обрывочна. Сложно было скомпоновать информацию в единое целое. На тот момент, мне бы ...

[recovery mode] Отчаяние, отказы и академический отпуск: как я за год вернул уверенность и стал Android-разработчиком Привет всем! Меня зовут Фаридун. В своём пути в мир разработки я неоднократно сталкивался с моментами, когда отчаяние казалось единственным компаньоном, а отказы накладывались печатью на каждом шаге.В своей первой статье на Хабре я хочу поделиться своей историей становления ...

SmartFlow: «В начале был пароль...» или новая аутентификация VK ID Привет, Хабр! Исторически сложилось, что первым способом аутентификации (в 1960-х) с появлением доступных компьютеров стал пароль. О рисках его использования и об изобретённых человечеством альтернативах мы подробно рассказали в статье о будущем беспарольной аутентифика...

Проводим и проходим собеседование по системному дизайну Привет Хабр, меня зовут Вячеслав Таранников, я старший Android-разработчик в команде монетизации RuStore, и сегодня хочу поделиться взглядом, из каких ингредиентов можно собрать полезное и эффективное техническое интервью.В предыдущей статье я рассказал, как мы пришли к сист...

От ручной сборки приложений к конвейеру: опыт бэк-офиса «Магнита» Как мы ежа и ужа собирали. Сказ об автосборке разномастных технологий под одну крышу. Если серьёзно: у нас было много разнообразной ручной работы на пути от разработчика до релиза приложения для сети магазинов. Мы научились хранить наши приложения в git и собирать их «одним ...

Связь системных ограничений и UX-дизайна: как устроено взаимодействие в системном подходе Привет! Меня зовут Настя, я UX-дизайнер в отделе технологических проектов «Леруа Мерлен». Мы занимаемся разработкой внутреннего технологического портала — это единый фронт, где продуктовые команды могут получить услуги других команд в режиме Self-Service. Мы предоставляем ин...

Мне плевать на твой браузер, я все равно открою ссылку в Edge! Боремся с новыми методами продвижения браузера MS Начиналось все прозаично - я приобрел новую версию Microsoft Office и решил ее переустановить с полным удалением и зачисткой всех "хвостов". Операционную систему использую Microsoft Windows 11 Pro. Установка прошла "без сучка и задоринки". Проверил что работает корпоративный...

Обзор Helm Dashboard — графического интерфейса для управления релизами Kubernetes Часто разработчики предпочитают использовать именно визуальные средства, чтобы более эффективно управлять релизами Kubernetes. Один из таких инструментов — Helm Dashboard. С его помощью можно самостоятельно создавать, развертывать, обновлять различные релизы Kubernetes-прило...

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

Сервисы дружитес. Как платформа упрощает создание интеграций без ошибок Всем привет! Кратко обо мне: меня зовут Никита и я уже третий год работаю над тем, чтобы платформа СберМаркета становилась лучше день ото дня. Мой основной язык программирования — Go, но, учитывая специфику платформенной разработки, еще и bash.В этой статье на примерах разбе...

Инженерная культура Росбанка: что это и какие у неё принципы Привет, Хабр! Меня зовут Кирилл Покладов, я ИТ-директор корпоративного, инвестиционного и депозитарного бизнеса в Росбанке. В этом посте я расскажу про инструмент, который помогает нашему банку развиваться быстрее и бороться со стереотипом о том, что все банки неповоротливы,...

End-to-end тестирование React приложения с помощью Playwright Привет, я Лиза – веб разработчик в одной зарубежной компании. Хочу поделиться тем, как я автоматизировала регрессионное тестирование в рабочем проекте на React с использованием довольно нового фреймворка Playwright. Разберемся, почему именно этот фреймворк, какие подводные к...

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

Использование Symfony / PHP (II) Привет! Я, Андрей, Symfony разработчик - мы делаем сайты. Каждый день мы тратим много ресурсов на администрирование и базовые настройки проектов. В этой статье я продолжаю делиться опытом, как можно адаптировать фреймворк Symfony под свои нужды. Сегодня я расскажу как мы раб...

Заметки руководителя проекта: советы начинающим, факапы для бывалых Привет, Хабр!Меня зовут Кристина Спирина, я руководитель проектов в IT.Сегодня мы пройдем по жизненному циклу проекта, на каждом этапе поговорим о важных моментах, о факапах, с которыми мы с командой сталкивались на практике, и о том, как мы их исправляли.В своей работе я оп...

Почему дизайн должен начинаться с исследования, даже когда всё очевидно Привет! Меня зовут Эмиль, и я продуктовый дизайнер в СберМаркете. Расскажу вам, как мы решили улучшить чекаут нашего сервиса и неожиданно для всех получили не тот результат, который хотели. Спойлер: в итоге мы всё исправили и сделали важные для себя выводы. Об этом тоже расс...

Существуют ли  джуниор-DevOps-инженеры и почему их ищут Привет! Меня зовут Сергей, я занимаюсь направлением DevOps в KTS. Сегодня поговорим о том, существуют ли джуниоры в DevOps-разработке — и какими они должны быть. Читать далее

Почему навигация в Google, Booking и Spotify именно такая, и какую лучше выбрать вам При работе над паттерном навигации моя команда выяснила интересный факт — мало материалов для дизайнеров. Я провела своё исследование: поговорила с разработчиками, проанализировала множество приложений и заглянула в гайдлайны.В статье покажу три самых популярных вида навигац...

Как студенты Практикума перепроектировали сайт Alfa Digital Привет! Меня зовут Максим, я продакт и студент курса «Продакт-менеджер». . В этой статье я расскажу о проекте по редизайну карьерного сайта Альфа-Банка — с ним наша команда победила на хакатоне Практикума. Читать далее

«Тинькофф» выпустил программу для установки приложений банка на iPhone Команда банка «Тинькофф» выпустил специальную программу под названием T-Mazing для компьютеров, которая позволяет пользователям самостоятельно решить проблему с установкой приложений банка на мобильные устройства на основе iOS.  T-Mazing для macOS и Wi...

Как выбрать и внедрить  OCR-систему для распознавания и сверки документов Приветствую, друзья! Меня зовут Александр Вихарев, и я работаю системным аналитиком в проектах для Fix Price. Одной из самых сложных задач при работе с документацией является сверка документов. Причем сверка трудна и с точки зрения программной реализации, если заниматьс...

Как сделать СКУД на стойку своими руками за 20 тыс. рублей Привет! Меня зовут Иван, я отвечаю за СКУД, видеонаблюдение и системы противопожарной безопасности в дата-центре Nubes Alto. Сегодня расскажу о том, как своими руками и за вменяемые деньги установить СКУД на стойку в серверной или в ЦОД. Решение буду показывать на примере ст...

[Перевод] Доводим разработчика до выгорания: три простых шага Если вы менеджер и хотите, чтобы ваши лучшие разработчики выгорели и разуверились в вашей способности руководить – могу помочь. Мне довелось работать в двух командах, подверженных выгоранию, и молча смотреть, как окружающие меня талантливые программисты один за другим покида...

Путь к мечте: как инвалидность не помешала стать разработчиком и продолжить борьбу за здоровье Меня зовут Станислав Герасимов, 31 год, я разработчик. Хочу рассказать свою жизненную историю и о том, как я, преодолевая трудности и преграды, шел и иду к своим мечтам — стать профессиональным разработчиком, поправить здоровье и найти друзей. Читать далее

Как тимлиду оценить «КПД разработки». 4 работающих способа — без хрустального шара и гадания на кофейной гуще Привет, Хабр! Я Аня Анциферова, продакт «Цифрового вагона». Я уже рассказывала о том, зачем ПГК пошли в разработку и какие продукты мы делаем. Несмотря на то, что сейчас у ПГК существует «дочка» — ПГК Диджитал, и там трудится порядка 400 человек, мы — не ИТ-гигант. А это зна...

Qualcomm Snapdragon X Elite поддерживает игры для Windows Инженер компании Qualcomm Иссам Халил упомянул на конференции Game Developers Conference 2024, что неанонсированные ноутбуки, работающие на базе процессора Snapdragon X Elite, могут запускать большинство современных видеоигр. В настоящее время у разработчиков есть три способ...

Как сделать тесты на Espresso более читабельными и стабильными Если вы писали тесты на Espresso — тестовом фреймворке от Google с открытым исходным кодом, — то вы знаете, что они не всегда стабильны и легко читаемы. Меня зовут Ксения Никитина, я являюсь Android-разработчиком в мобильной команде «Лаборатории Касперского». В этой статье я...

FineBI: Обработка данных для начинающих пользователей Хабр, привет!На связи команда Business Intelligence GlowByte. Да-да, те самые неугомонные, которые создали самое крупное русскоязычное сообщество FineBI, проводят обучения, собирают дайджесты и ежегодно организуют масштабные конференции. Меня зовут Александр, я руководи...

Call Activity vs SubProcess: В чём отличие? Приветствую моих читателей! Меня зовут Екатерина. Ранее 3.5 года я администрировала bpm-систему, сейчас вот уже более двух лет я работаю системным аналитиком и развиваю нашу собственную bpm-систему. В данной статье хочу рассказать о дилемме, с которой столкнул...

Backend-разработчик: из стажера в джуны Всем привет! Меня зовут Егор, я стажёр backend-разработчик в зарплатном проекте Росбанка (он же Payroll). В этой статье я расскажу про путь становления от «зеленого» стажера до боевой единицы в команде: через что мне пришлось пройти, с какими трудностями я столкнулся и как п...

Инженерная культура Росбанка: что это и какие у нее принципы. Часть 2 Привет! Меня зовут Кирилл Покладов, я ИТ-директор корпоративного, инвестиционного и депозитарного бизнеса в Росбанке. В прошлый раз я рассказал о некоторых принципах нашей инженерной культуры. Сегодня я продолжу знакомить вас с другими принципами, которые помогают совершенст...

Из микро в макро: как адаптировать мобильное приложение под ТВ-платформу Рано или поздно Android-разработчику станет любопытно попробовать новые платформы. Устройств с этой ОС много — есть из чего выбрать. Например, сейчас набирает популярность разработка под умные телевизоры.И вот здесь начинается самое интересное. Вроде бы и на смартфоне, и на ...

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

Как мы анализируем потребление памяти нативными приложениями Технологическая платформа 1С:Предприятие – это большой программный продукт (только на С++ - более 10 миллионов строк кода, а есть ещё Java и JavaScript). Подробнее про устройство платформы можно прочитать тут.В процессе эксплуатации решений, созданных на платформе 1С:Предпри...

Деревья ltree в PostgreSQL – простым языком Привет, Habr! Меня зовут Оля Плюта, я продуктовый аналитик маркетплейса Uzum Market. В этой статье я расскажу об иерархических деревьях ltree в PostgreSQL. Статья вводная, поэтому я постаралась сделать её максимально понятной и наглядной. Читать далее

Бизнес-правила в действии: семь лет развития и усовершенствования Business Rules Engine Привет! Меня зовут Владислав Кучинский. Я начинал свой карьерный путь в IT с разработки на С++ и Java, а сейчас являюсь руководителем группы Platform Event Management в компании Bercut. Сегодня я расскажу историю создания платформы Business Rules Engine (BRE) Bercut – систем...

FineBI под микроскопом: Обзор новых функций и улучшений в Q1 2024 Хабр, привет! Меня зовут Александр Ларин, я являюсь руководителем центра технической поддержки и обучения в GlowByte, а также лидером самого большого в России сообщества FineBI.Сегодня в нашем фокусе – обновления, которые не оставят равнодушными ни одного бизнес-аналити...

Как мы меняли чат-бот ВТБ для мессенджера ВКонтакте до прода и после Привет, Хабр. Меня зовут Мурат Атила, я фронтенд-разработчик в ВТБ. Недавно мы рассказывали на Хабре о запуске банка в мессенджере «ВКонтакте». В комментариях вы спрашивали про изнанку решения — и коллеги призвали меня ответить и рассказать побольше о том, как мы создавали б...

Пишем приложение на Python для подготовки к собеседованиям по Python На конец 2023 года язык программирования Python является самым популярным по индексу TIOBE. Что касается работы, то по количеству вакансий в мире язык Python занимает второе место (после JavaScript/TypeScript). Поэтому у соискателей на должность, где требуется Python, возник...

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

Посторонись, Copilot: подборка разнообразных AI-инструментов для разработчиков За пределами всем известного GitHub Copilot лежит огромный мир полезных приложений для программистов, и каждую неделю в нем появляется что-нибудь новенькое. В этом посте мы расскажем об этих инструментах — как полноценных конкурентах продукта GitHub, так и более специфи...

Microsoft прекращает поддержку прежней версии консоли в Windows Microsoft объявила о прекращении разработки и поддержки прежней версии консоли Windows, которая бывает необходима для запуска устаревших приложений командной строки, есть в режиме по умолчанию они работают некорректно. В будущих релизах Windows 11 этот компонент не будет ус...

[Перевод] Я счастлив, что больше не веб-разработчик Я написал своё первое одностраничное веб-приложение на Javascript в 2005 году, сразу после того, как узнал о XMLHttpRequest и до появления серьёзных фреймворков. Я оставил профессиональную веб-разработку примерно в 2009 году (а начал её в 1997 году с WebObjects), а последний...

Как тяжелый монолит обернуть в удобный интерфейс Собрались как-то вместе: продакты, HR, лиды и архитекторы ИТ, и начали думать, как же им перестроить HR-процессы в Банке так, чтобы улучшить клиентский опыт сотрудников и им стало удобно работать с HR-услугами..У нас была идея продуктового подхода, десяток backend систем, 23...

Какой должен быть уровень технической грамотности у менеджера проектов? Всем привет. Меня зовут Марина Заботина, работаю аккаунт-директором в диджитал-агентстве. У нас в штате 320 человек. Хочу поднять вроде бы простую, но холиварную тему о том, какой уровень технической грамотности должен быть у менеджера проектов (ПМ).Когда я сама только начин...

Трагические микрозаймы, украденные креды: какие Android-зловреды мы обнаружили в официальных маркетах Один из основных принципов защиты мобильного устройства от киберугроз — загружать приложения только из официальных маркетов, таких как Google Play или Apple App Store. Однако несмотря на то, что софт проходит множество проверок перед публикаций, это не гарантирует, что польз...

Range Loop в Go: подводные камни, как с ними бороться и что нас ждёт в версии 1.22 Привет, Хабр! Меня зовут Рафаэль Мустафин, я ментор на курсе «Go-разработчик» в Яндекс Практикуме. Эта статья посвящена нюансам цикла range в Go. Мы рассмотрим распространённые подводные камни, лучшие практики и интересные изменения, ожидаемые в Go 1.22. Читать далее

Перенести терабайты канбан-досок в облако: опыт команды Yandex Tracker Привет, меня зовут Мария Карпенко, я разработчик в команде Yandex Tracker — сервиса для управления процессами и проектами. Внутри Яндекса сервис  используется для постановки задач практически во всех командах, так что общее количество событий по задачам исчисляется уже ...

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

Оценка тестового покрытия интеграционных тестов с помощью JaCoCo. Инструкция к применению Всем привет! Меня зовут Александр и в hh.ru я занимаюсь решением инфраструктурных (и не только) задач, касающихся автотестирования. В статье я опишу один из подобных кейсов. Читать далее

Два вида мошенничества с помощью сайтов: розыгрыши айфонов, корм для собак и отъем денег через СБП Меня зовут Ростислав, я разработчик (одного из) чата для сайтов. Как правило, чаты можно подключить бесплатно на любой сайт. И среди пользователей чата появляются недобросовестные люди. Точнее говоря - явные мошенники. В этой статье я хочу рассказать о двух типах развода, с ...

AstraLinux для приборостроения Ни для кого не секрет, что в марте 2022 года был подписан приказ, согласно которому для безопасности и технологической независимости требуется перейти на отечественное ПО, в частности операционные системы. Мне стало интересно, если я переведу домашний ПК на AstraLinux, смогу...

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

Обновлённая «МойОфис Таблица»: как мы ускорили работу с документами в 50 (и более) раз В МойОфис мы регулярно прислушиваемся к пользователям и совершенствуем продукты с учётом их мнения. Речь не только о пожеланиях, которые мы напрямую получаем от коммерческих заказчиков: не менее внимательно мы анализируем и отзывы хабрасообщества.В одном из хабр-постов автор...

Apple Vision Pro vs Meta* Quest 3: что стоит купить и стоит ли? Раскрываем нюансы нашумевших устройств Всем привет!Меня зовут Никита, я — Tech Lead команды QuiXR. Сегодня я поделюсь с вами обзором Apple Vision Pro и Meta* Quest 3. Попробуем разобраться, соответствуют ли гарнитуры заявленным ценам? Кому и для чего подойдут?Мы сравним следующие особенности гарнитур:1. Внешний в...

[Перевод] Меняем моки репозиториев на in-memory реализации Одним из важнейших аспектов тестирования наряду с поиском ошибок в приложении является время, необходимое для его проведения. Если тестирование приложения занимает от нескольких минут до нескольких часов, то оно не подходит для разработки с использованием быстрого цикла обра...

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

Тесты: 100% покрытия и юниты не нужны Мы покрываем код тестами, когда хотим быть уверенными, что в негативных сценариях он сработает надёжно. Хочется, чтобы тесты были не бланковой заглушкой, а полезной нагрузкой, которая позволит считать, что наше поведение достаточно валидное. Так мы можем обеспечить корректно...

Как мы автоматизировали тендерные процедуры за счет интеграции SAP с ЭТП Всем привет! Меня зовут Олег Усов, я работаю старшим консультантом SAP MM в Fix Price. Хочу рассказать, как мы проводили интеграцию SAP с электронной торговой площадкой (ЭТП) и системой электронного документооборота (СЭД) для автоматизации ряда процессов по участию в закупка...

Тестируем AI на создании прикладного приложения Всем привет, я Григорий Тумаков, CTO в Моризо Диджитал.Недавно рассказал на Хабре, как мы в компании “потрогали” нейросети для прикладных задач разработки. Но там никаких серьезных выводов сделать не удалось.Поэтому решил на этом не останавливаться. Если есть инструменты — и...

Генерируем отчеты PDF на Android с использованием HTML и WebView в фоне Сервис, прежде всего, должен решать задачу пользователя. Часто приложения должны делать то, что, казалось бы, должно ложиться на плечи сервера и других публичных API. В рамках этой статьи хочу рассказать про наш опыт переноса функционала генерации PDF-отчетов на Android-устр...

Оптимизация веб-приложений: на что стоит обратить внимание Привет, Хабр! Меня зовут Андрей, я веб-разработчик в МТС Digital. Сегодня поделюсь своим опытом, как и зачем оптимизировать веб-приложения. В конкурентном мире онлайн-сервисов производительность стала ключевым фактором успеха — пользователи ожидают мгновенного доступа к инф...

Оса не проскочит: разбираемся в методиках тестирования и сравнения  ̶а̶н̶т̶и̶м̶о̶с̶к̶и̶т̶н̶ы̶е̶ ̶с̶е̶т̶к̶и̶ ̶  WAF Использование WAF для защиты веб-приложений и API уже давно стало необходимостью. И дело тут не только в требованиях регуляторов (152-ФЗ и 187-ФЗ, PCI DSS), но и в здравом смысле, стоит хотя бы посмотреть на количество взломов и утечек за последнее время. На рынке WAF м...

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

Техники usability — как проектировать сложные системы, чтобы они стали простыми для использования Существует заблуждение, что дизайн — это вопрос вкуса, и у него нет объективных критериев оценки. Но не стоит забывать об условиях использования приложения. Например, таких факторах, как шум, низкое качество, старое тормозное оборудование или программное обеспечение, огранич...

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

Зачем нужен индивидуальный план развития? Привет, Хабр! Меня зовут Ольга Николаева, я ведущий менеджер по персоналу в группе «Рексофт». Сегодня я расскажу про индивидуальный план развития (ИПР): как использовать этот инструмент, для чего он нужен, и как его создать так, чтобы он принес реальные результаты. Также мы ...

Как приоритизировать фичи с помощью Unit-экономики? Как понять, будет ли прибыльным продукт, который ты хочешь запустить? Стоит ли вообще брать фичу в разработку? Как заранее предсказать эффект от неё? Такие вопросы часто встают перед менеджерами продукта и продуктовыми аналитиками. А особенно остро они звучат, когда вы разра...

Решение на миллион: разбираем алгоритмические задачи с победителями True Tech Champ Привет, Хабр! Меня зовут Алина Ёжикова, я работаю в МТС Диджитал и делаю мероприятия для разработчиков. Сегодня расскажу, как мы организовали самый большой и сложный ивент в моей карьере — олимпиаду по программированию на восемь тысяч разработчиков.Я говорю про True Tech Cha...

[Перевод] Удачный переход Netflix на GraphQL В 2022 году с приложениями Netflix для iOS и Android произошли серьезные изменения. Мы перевели мобильные приложения Netflix на GraphQL с нулевым временем простоя, что повлекло за собой полное перепроектирование от клиента до уровня API.До недавнего времени наши мобильные пр...

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

Уравнение с тремя неизвестными: как отлавливать баги в системах хранения данных Привет! Меня зовут Никита Гуцалов, я инженер в компании YADRO и занимаюсь разработкой ПО для системы хранения данных TATLIN.UNIFIED. Вообще с системами хранения данных (СХД) я работаю уже много лет и люблю эту тему, поскольку она постоянно бросает новые вызовы, заставляя реш...

Подбираем параметры сессии в Apache Spark, чтобы не стоять в очереди Бывало у вас так, что некоторые аналитики запрашивают побольше вычислительных ядер и оперативной памяти для своих Jupyter-ноутбуков, а у вас в это время ничего не работает? У меня бывало, ведь недостаточно уметь разрабатывать код на Spark — еще нужно уметь его настраива...

Медленная сборка кода с .NET Roslyn: как найти и устранить причину .NET разработчики знают, что такое ждать сборки кода. Работать при этом невозможно: пока не увидишь, как обновится приложение, — не перейдешь к следующему шагу. А переключиться на другую задачу за это время не успеешь. Получается, если в день переписать к...

С 500 мс до нуля, или история о том, как я написал Node.js C++ addon и ускорил скидочный сервис в 500 раз Приветствую тебя! Меня зовут Дмитрий и я работаю в LAD. Сегодня я поведаю историю о том, как эволюционировал скидочный сервис одного из наших проектов. Пройдя путь от всеми нелюбимого, "тормозящего" сервиса, до сервиса, который имеет наилучшие показатели на недельных графика...

Как сделать автотесты гибкими и лаконичными При написании автотестов, так же как и при написании основного кода, важно придерживаться чистой архитектуры. Без нее мы можем столкнуться с некоторыми трудностями: при любых изменениях интерфейса потребуется обновлять код во множестве файлов, иногда тесты могут дублировать ...

Офис Apple в Москве: как я с нуля стал экспертом и попал на приватную вечеринку для разработчиков Это будет история из 2018 года, когда у Apple был большой офис в Москве, где иногда проводились закрытые мероприятия для разработчиков, на одно из которых меня компания пригласила лично. Приложулю я сделал, можно сказать, в одного (она была про путешествия), но если бы я пош...

Автоматизация создания тестовых данных и загрузки исторических данных в SAP на основе SAP GUI Scripting Привет, Хабр! Меня зовут Василь Хамидуллин, я работаю в ЦК тестирования АСУ ФХД в компании РСХБ‑Интех. Продолжу тему использования SAP для автоматизации подготовки данных. В прошлом материале говорили про LSMW и как данный инструмент можно испол...

Опыт автоматизации управления FPGA-стендами для распределенной команды: отказ от готового решения и работа над ошибками В software-разработке с автоматизацией обычно все неплохо: более-менее понятно, как настроить CI и автоматизировать отдельные этапы CI-конвейера. Есть множество готовых решений и практик. Но, когда речь заходит об автоматизации тестирования на «железе», появляется множество ...

Создаем экосистему из хаоса: как синхронизировать команды и управлять постоянно растущим продуктовым портфелем Привет, хабр! Меня зовут Алена, я системный аналитик.В статье поделюсь опытом выстраивания экосистемы продуктов и настройки слаженной работы между плохо знакомыми продуктовыми командами. Расскажу, когда и как использовать матрицу ролей, чтобы уменьшить время на постанов...

Идеальный кейс внедрения DevSecOps. Так бывает? Привет, на связи отдел безопасной разработки СИГМЫ (ОБР). И хоть наша команда сформировалась относительно недавно, мы уже приобщились к «вечному» — а именно «противостоянию» разработки и безопасников. Если вы читаете эту статью, скорее всего такое знакомо и вам. Но иногда в ...

Хорошие практики нагрузочного тестирования: гайд для тех, кто успел до «пожара» В каждом проекте рано или поздно наступает момент, когда нужно провести нагрузочное тестирование. Чаще всего это происходит поздно: сайт уже крашится под наплывом пользователей, стартовая страница не загружается, а обработка запросов в базе данных длится больше минуты. В так...

Введение в Apache Flink: осваиваем фреймворк на реальных примерах Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Недавно мы начали использовать фреймворк Apache Flink. Эту технологию выбрали, так как она (в отличие от Apache Spark) относится к true-стримингу и позволяет ...

Reflection в iOS: как посмотреть содержимое любой сущности В Swift, как и во многих других языках программирования, есть возможность получать информацию о структуре объекта в Runtime. Для этого в языке есть специальный механизм — Reflection. С его помощью можно просматривать содержимое любых сущностей, не зная о них абсолютно ничего...

Пресс-релиз сборки Windows 11 Insider Preview Build 23555 Компания Microsoft выпустила сборку Windows 11 Insider Preview Build 23555 для инсайдеров в Dev Channel. Исправления [Copilot] • Исправлена ​​проблема, которая приводила к сбою explorer.exe при попытке открытия Copilot с панели задач; [Диктор] • Исправлена ​​проблема, из-за ...

Когда одной ARIMA мало. Прогнозирование временных рядов нейросетями Привет, Хабр! Меня зовут Никита, я работаю в Мегафоне аналитиком больших данных. В этой статье я хочу поговорить про временные ряды, а если конкретнее, про использование нейросетей для их прогнозирования. В статье мы не только разберем две актуальные архитектуры для про...

Система иконок на React Очень часто при разработке React-приложения нам приходится работать с большим количеством иконок в проекте. Наверное, каждый разработчик стремится максимально упростить и автоматизировать подобные рутинные задачи. Есть несколько способов работы с иконками в веб-приложениях, ...

REST API на котиках Привет любителям котиков! Меня зовут Юля, я backend‑разработчик компании CDEK. Я сама не так давно изучала все эти сложные понятия в программировании, поэтому решила помочь и вам разобраться с одним из них.С какой стороны IT вы бы не пытали...

DevX: ориентированный на разработчиков подход к измерению и повышению производительности Привет, Хабр! Меня зовут Олег Хромов, в МТС я руковожу центром «Управление разработкой». В статье расскажу, как мы оцениваем производительность IT-специалистов. Универсальные методы работают плохо, поэтому мы пришли к специально адаптированному для IT подходу под названием D...

“Так ты хочешь кролика или нет?”: как простая автоматизация общения в Авито может принести вдвое больше лидов Привет, Хабр! Меня зовут Владислав, и один из моих проектов — интернет-магазин карликовых кроликов. Сегодня по приглашению коллег из ChatApp, я расскажу, как автоматизировал свой бизнес. Нет, речи ни о каком роботизированном выращивании кроликов не пойдет — только о продажах...

Градиентный бустинг. Реализация с нуля на Python и разбор особенностей его модификаций (XGBoost, CatBoost, LightGBM) На сегодняшний день градиентный бустинг (gradient boosting machine) является одним из основных production-решений при работе с табличными, неоднородными данными, поскольку обладает высокой производительностью и точностью, а если быть точнее, то его модификации, речь о которы...

Просто ли открывается ларчик, Или как протестировать сразу более 10 сервисов Привет, Хабр! Всем известно, что у тестировщиков в жизни много трудностей. И мы, команда QA Департамента общих прикладных сервисов (ДОПС) Сбера, знаем об этом не понаслышке, так как тестируем релизы сервисов Platform V — цифровой облачной п...

Конфигурация вместо кода при написании Telegram-бота Привет! Меня зовут Никита и я пишу от имени небольшой команды студентов, разработчиков проекта Cloffer — систему онлайн-заказа для кофеен. Мы решили начать наш путь с написания связки бэкенд + набор телеграм-ботов.Эта статья будет посвящена подходу, который мы использовали д...

Первый месяц жизни приложения BookDesk или как меня пытались взломать В этой статье я расскажу о первых результатах работы приложения для хранения прочитанных книг в первый месяц жизни.Всем привет. Чуть более месяца назад я выпустил релиз своего приложения BookDesk: Читательский дневник для хранения всех своих прочитанных книг. Почит...

Разбираем 5 способов ускорить сайт: от простого к сложному Низкая скорость загрузки — это критично. По данным исследования Unbounce, долгое ожидание негативно влияет на пользователей: 45,4% из них с меньшей вероятностью совершат целевое действие, а 11,9% — вообще покинут сайт. Давайте обсудим несколько способов, которые помогут...

Сказание о static и неименованном пространстве имен для функции в C++ Команда разработчиков получила от руководства задание срочно написать приложение для обработки пользовательских данных. Руководитель быстро декомпозировал задачу на две и поручил одной команде сделать модуль подготовки данных, а другой - реализовать сами расчеты.// Все персо...

Как совмещать работу с учебой. Что-то про тайм-менеджмент Всем привет! Меня зовут Даша и я системный аналитик компании SM Lab. Работаю в команде Brand Planning Tool. Наша команда BPT помогает брендам (таким как Fila, Demix, Northland) запускать новые коллекции. В этом я году закончила бакалавриат и поступила в магистратуру по напр...

Сколько нужно ядер cpu, чтобы выдержать 30k+ rps? Меня зовут Вадим Ивахин, я техлид в Vi.Tech — это IT-дочка ВсеИнструменты.ру. Я и мои коллеги трудимся над большим количеством проектов и используем в своей работе различные инструменты, в том числе MongoDB. В этой статье я не стану рассказывать о том, что такое MongoDB. Хоч...

Упростить развертывание приложений в облаке — open source инструменты, которые помогут это сделать C помощью cloud-сервисов можно решить множество задач бизнеса — например, организовать централизованное управление корпоративной ИТ-инфраструктурой, разместить клиентские приложения и обеспечить высокую доступность веб-ресурсов при пиковых нагрузках, сократить затраты на сер...

Чтобы запустить обмен знаниями в командах, надо всего лишь… Привет, Хабр! Меня зовут Лера Чеканова, я руководитель CROC Univer. Расскажу, о том, как у нас в КРОК устроен обмен знаниями и опытом. Поделюсь, зачем нужен этот процесс, как его внедрить быстро, несложно и в разных форматах. В КРОК я руковожу корпоративным университетом и о...

Правильные, но (не)простые бэкапы. Как настроить резервное копирование в Kubernetes? Разработчикам и системным администраторам важно обеспечивать надежность и доступность данных в приложениях Kubernetes. Несмотря на высокую степень автоматизации и управления контейнерами, всегда остаются риски сбоев или человеческих ошибок — поэтому необходимо заранее задум...

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

Изменить цвета и кнопки сервиса — и не сломать дизайн-систему Меня зовут Алексей Афонин, я старший дизайнер продукта в Yandex Cloud. В прошлом году нам понадобилось полностью изменить внешний вид нашего сервиса для бизнес‑аналитики DataLens перед его выходом в опенсорс. Разработчики и дизайнеры интерфейсов часто ста...

Зачем писать на Хабр, если каждый раз потеют ладони? Сегодня стартует VI конкурс технических статей на Хабре «Технотекст». Команда комьюнити проводит его во второй раз, участвует в четвёртый. Так получилось, что трое из нас — активные авторы Хабра, которые писали для компаний, писали для себя и пишут для блога Хабра. И каждый ...

Алгоритмы вокруг нас Привет, друзья! Меня зовут Алмаз. Я специалист по НСИ (нормативно-справочной информации) в компании Bimeister. Маленький дисклеймер. Данная статья – материал для размышления. В особенности для людей, которые разрабатывают новые алгоритмы и реализуют их.  Читать далее

[recovery mode] Безопасность android-приложений. Реверсим OWASP MASTG Crackme 1 Всем привет! Меня зовут Максим и я занимаюсь исследованиями источников данных. В своей работе периодически приходится сталкиваться с исследованием android-приложений. В этой статье я хочу показать базовые методы реверс-инжиниринга и исследования android-приложений на примере...

Google Fit API закрывается: будущее фитнес-трекинга на Android неясно Разработчики фитнес-приложений, использующие Google Fit, получили тревожный сигнал. Google объявила об официальном закрытии API для разработчиков Google Fit к 30 июня 2025 года. Это означает, что приложения должны перейти на новую платформу Health Connect.

[Перевод] 13 конфигураций Kubernetes, которые ты должен знать в 2k24 Поскольку Kubernetes продолжает оставаться краеугольным камнем оркестрации контейнеров, освоение его механизмов и возможностей становится обязательным для специалистов DevOps. В 2024 году некоторые конфигурации Kubernetes выделяются среди прочих благодаря функциональности в ...

Spring Boot Starter: практически, принципиально и подробнее. Part 1 Всем привет, меня зовут Сергей Соловых, я Java-разработчик в команде МТС Digital. За последние 2 года я написал и выпустил в продакшен более 30 микросервисов. Выдержать столь высокий темп помогло применение общепроектных решений и паттернов разработки. Общепроектные решения&...

[Перевод] Кто реально угрожает C++ (нет, Rust, не ты) Привет! Меня зовут Александр Каленюк, и я крепко подсел на C++. Пишу на C++ 18 лет кряду, и все эти годы отчаянно пытаюсь избавиться от этой разрушительной зависимости. Всё началось в конце 2005 года, когда мне довелось писать движок для симуляции 3D-пространства. В это...

Распознавание русского жестового языка: распознаём до 3+ жестов в секунду на обычном ПК без видеокарты Привет! Меня зовут Максим Новопольцев, я техлид RnD команды Центра развития технологий AI во благо общества, Sber AI. Мы занимаемся проектами, направленными на решение важных социальных и экологических задач, таких как сохранение биоразнообразия, создание инклюзивной среды, ...

Как я перешёл на тёмную сторону: путь из Андроида в бэкенд Привет, Хабр! Меня зовут Андрей. 7 лет я разрабатываю под Android. Год назад я писал код для мобильного приложения банка и особо не задумывался о переходе на другие задачи. В один прекрасный день мне прилетела таска — добавить параметр в диплинк на Андроиде. Потом меня попро...

Приложение «VK Видео» представили для телеприставок Apple TV Команда «ВКонтакте» сообщила о запуске бета-версии приложения «VK Видео» для tvOS – телеприставок Apple TV. Владельцам этих устройств станут доступны новые функции и адаптированный интерфейс.  Приложение «VK Видео» для App...

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

Как не заскучать в 1С-разработке Многие считают 1С особым замкнутым миром. А методы работы в нем — неприменимыми в «нормальном» программировании. Это давно не так. Конечно, у каждого решения есть свои плюсы и минусы. Но я уверен: если вы не любите 1С, то вы просто не умеете его готовить. Меня зовут Вла...

Нодовая архитектура на Unity Меня зовут Игорь, и я Unity Developer. В этой статье я хотел бы поделиться кастомной архитектурой, которую сделал в процессе разработки своей RTS игры.Скажу сразу: что основные концепции и принципы уже используются в различных DI фреймворках, таких как Zenject & VContain...

В Китае технокомпании уже начали нанимать разработчиков под HarmonyOS Об этом сообщает портал Huaweicentral. Чуть ранее мы рассказывали, что HarmonyOS Next уже была анонсирована, и в этой версии разработчики планируют отказаться от поддержки Android-приложений в пользу нативного софта, который должен работать быстрее, меньше требовать ресурс...

Мультимодальный трансформер для content-based рекомендаций На первый взгляд может показаться, что ничего интересного в области RecSys не происходит и там всё давно решено: собираем взаимодействия пользователей и товаров, закидываем в какую-нибудь библиотеку, которая реализует коллаборативную фильтрацию, и рекомендации готовы. В то ж...

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

Обработка данных для RAG-систем Всем привет, меня зовут Андрей Шахов, я Python-разработчик и Lead Backend Developer в wpp.digital. ML-направлением, а точнее LLM в компании я начал заниматься только в конце 2023 года. Сейчас на задачи подобного рода у меня уходит примерно 40% рабочего времени.Решил начать п...

Пользователи смогут устанавливать приложения для iOS прямо с сайта разработчика Компания Apple продолжает менять правила в отношении способов загрузки и установки приложений на iPhone и iPad. Правда, пока все эти изменения и послабления касаются только ЕС. Однако многие с любопытством следят за подобными нововведениями. Сегодня компания рассказала еще о...

После прочтения применить, или Чистый код на практике Начинающие разработчики часто встречают на ревью пулл-реквестов очень дотошных ревьюеров, дающих кучу комментариев по теме чистоте кода. Меня зовут Мария Кондаурова, я фронтенд-разработчик в департаменте вычислительной биологии в BIOCAD. И у меня есть свои мысли на тему чист...

VR-тур на A-Frame + React Всем привет! Меня зовут Егор Молчанов, я разработчик в команде CRM для менеджеров ипотечного кредитования в компании Домклик. Хочу поделиться своим опытом создания VR‑тура с помощью фреймворка A‑Frame и библиотеки React. Для этого написал свой неболь...

Большой гайд по энергии. Часть 1 — как получать максимум пользы из питания? Всем привет, на связи команда Skill Vortex!Читая комментарии под последней статьей, мы столкнулись с одной, крайне распространенной проблемой – низким уровнем энергии и мотивации.«Просыпаюсь уже уставшим, весь день хожу разбитым, а вечером хочется просто лечь и смотреть в по...

Как мы адаптируем новичков в отделе тестирования Привет, меня зовут Ира, я руковожу бордингом в отделе тестирования ЮMoney. Перед вами подробный гид с этапами, которые проходит каждый новичок, попадая в команду QA. Курс молодого бойца длится три месяца, после него даже совсем зелёный джун c небольшим опытом в тестировании ...

Адаптивный дизайн приложений на Gtk Основные рабочие среды из мира GNU/Linux — это GNOME и KDE Plasma. До недавнего времени их можно было видеть только на десктопах, но сейчас эти окружения можно заметить и на мобильных девайсах. Эти девайсы не слишком распространены. Десктопный Linux встречается гораздо чаще....

Вышла первая версия Android 15. Она предназначена для разработчиков ПО Google выпустила первую предварительную версию Android 15 для разработчиков, она доступна создателям ПО с сегодняшнего дня. Первая публичная бета-версия Android 15, стабильная бета-версия выйдет в июне, а релиз состоится примерно в сентябре. Как сообщает The Verge, в A...

Больше, чем через год отсутствия: приложение каршеринга «Ситидрайв» вернулось в App Store Команда сервиса краткосрочной аренды автомобилей «Ситидрайв» сообщила о возвращении фирменного приложения для iOS в официальный онлайн-магазин App Store.  Новое приложение называется «Каршеринг Ситидрайв!». В «Ситидрайве» совету...

[recovery mode] Выбор технологического стека для digital-продукта в 2024 году Стек технологий для запуска нового продукта в компании обычно выбирается исходя из того, с чем команда работала до этого и сколько наработок уже имеется.Однако если вы свободны от необходимости использования какого-либо наследия (набираете новую команду или ищете актуальные ...

Какие ML-платформы нужны бизнесу, и кто их может сделать Привет, Хабр! Меня зовут Виктор Кантор, я директор Big Data МТС. Около 14 лет я работаю с технологиями, связанными с Machine Learning, Big Data, Data Science. Но есть одна проблема, с которой я постоянно сталкиваюсь. Например, поставлена задача, которую нужно решить при помо...

Google выпустила первую бета-версию Android 15 для простых пользователей Первая публичная бета-версия Android 15 уже доступна для загрузки при условии, что у вас есть телефон Pixel. Это первый выпуск Android 15, предназначенный для рядовых пользователей, после двух предварительных релизов для разработчиков. Ожидается, что подробности об опер...

Готов ли Swift OpenAPI Generator для продуктивного кода? Привет! Меня зовут Андрей, я iOS-разработчик приложения «Пункт Ozon». С помощью него сотрудники пунктов выдачи Ozon выдают посылки, принимают возвраты, проводят инвентаризации. Мы хотим упростить работу с OpenAPI-спецификациями, внедрив кодогенерацию для автоматического...

Grafana Mimir: remote storage из скандинавской мифологии Привет! Меня зовут Игорь Латкин, я сооснователь и системный архитектор в  KTS. Сегодня расскажу про Grafana Mimir — одно из хранилищ данных для системы мониторинга Prometheus. Это сравнительно молодой проект, запущенный в прошлом году. Mimir входит в экосистем...

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

[recovery mode] Как Канбан-метод повлиял на команды банка Всем привет! Меня зовут Дмитрий. Я работаю senior Agile‑коучем в ОТП Банке. Использую практики Канбан‑метода в своей работе с 2019 года и хочу поделиться с вами своим опытом. В статье используются данные, собранные при работе с сервисной IT...

Хороший ретрай, плохой ретрай, или История одного падения Порой простое и очевидное решение может потянуть за собой хвост проблем в будущем. Например, добавление ретраев.Меня зовут Денис Исаев, и я работаю в Яндекс Go. Сегодня я поделюсь опытом решения проблем с отказоустойчивостью из-за ретраев. Основано на реальных инцидентах в с...

Kandinsky поможет нарисовать свою заставку для «СберБанк Онлайн» Как мы уже писали, команда СберБанка представила новую версию фирменной нейросети — Kandinsky 3.0. Она работает и в мобильном приложении «СберБанк Онлайн» для операционной системы Android: в свежей версии приложения доступна генерация с помощью Kandins...

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

«Ревизорро» в IT: тестируем суммаризацию текста в GigaChat и YandexGPT После появления на рынке API для беседы с ChatGPT 3.5 каждый второй заказчик решения на основе машинного обучения (ML) хочет внедрить у себя ИИ, который может красиво и содержательно общаться на русском языке.Меня зовут Екатерина, я IT-архитектор команды SimbirSoft, специали...

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

В поисках ПАК: импортозамещаем немецкое «железо» в российском ЦОД Привет, Хабр! Меня зовут Артем Золотарев, я инженер по виртуализации в Oxygen Data Centres & Clouds. Любой облачный провайдер и оператор ЦОД может столкнуться с задачей проброса USB-портов виртуальным машинам, которым нужен доступ к определенным устройствам. И чем с...

Визуализируй это: как я обучаю джунов и ставлю задачи через диаграммы и графики Привет, меня зовут Сергей, я ведущий разработчик в DDoS-Guard и человек из мемов xkcd, который любит всё экстраполировать, истовый фанат визуализации данных. Диаграммы и графики решают кучу моих проблем с онбордингом джунов и объяснением задачи исполнителям. В этой стат...

Хакеры украли у Apple засекреченные приложения и игры В открытом доступе оказались тестовые версии приложений и игр, которые разработчики публиковали на платформе Test Flight.

Как сделать свой сервер мобильному разработчику, если он никогда такого не делал? У меня ушел один месяц на создание своего сервера. Две недели ушло на понимание функционала и сборку прототипа. Одну неделю я писал Ktor-сервер на Kotlin и визуал в приложении на Flutter. И еще одну неделю тестировал. И я хочу, чтобы вы сэкономили две недели, когда решите со...

Взгляд на ИБ со стороны не ИБ-разработчиков Всем привет! Меня зовут Елена Галата, в ГК "Цифра" я руковожу направлением разработки программного обеспечения. Хочу сегодня немного поговорить об информационной безопасности и о том, как она выглядит со стороны тех, кто имеет отношение к созданию ПО. Не только программисто...

Из инженеров в DEVOPS — «Войти в  IT» на практике Меня зовут Степан Вахета, и я хочу рассказать о своем пути от инженера инфраструктуры до позиции младшего DevOps-инженера в HOSTKEY. Надеюсь, эта информация будет полезна тем, кто находится в раздумьях по поводу развития карьеры в IT или о переходе в новую профессию. Я специ...

Обзор Llemma: новая математическая open-source модель Привет! Меня зовут Дарина, и я занимаюсь фундаментальными исследованиями в MTS AI. Основной фокус нашей работы сейчас — обучение больших языковых моделей, их тестирование и оптимизация.Сегодня хочу сделать обзор на недавно вышедшую статью LLEMMA: an open language model for m...

Автоматизируем сеть Яндекса с Милошем: сервис конфигураций оборудования Задумывались ли вы о том, как изменить конфигурацию сразу на нескольких сетевых устройствах? Что, если нужно сделать это на всей сети с сотнями и тысячами единиц оборудования? А что, если приходится делать это каждый месяц на железе от пяти разных производителей? Очевидное р...

9 советов, которые облегчат путь до мидла Для всех джунов в разработке и тех, кто хочет ими стать.Так бывает в жизни, что периодически каждый оказывается в роли джуна. Это не только про начало карьерного пути, но и про новые навыки: изучить новую технологию, язык программирования. А вдруг кто-нибудь из вас захочет р...

Троттлинг в Kubernetes. Или как настроить лимиты, чтобы приложения не “тормозили” Главная рекомендация - отказаться от лимитов!А теперь подробнее.Когда у вас много пользователей используют один кластер Kubernetes, возникает вопрос - как задать квоты, чтобы и приложениям хватало ресурса, и не случилось ситуации, когда из-за одного прожорливого соседа страд...

Как я писал свою библиотеку для работы с Telegram В далекий 2019 год, когда про ковид никто не слышал и других жестей еще не было на горизонте, я читал очередную статью как “правильно” писать очередного бота на телеграм. И в очередной раз у меня крутилась мысль: че код так паршиво выглядит то? Где-то в то время телеграм еще...

Как сделать Kubernetes еще круче: секреты безупречной работы Отказоустойчивость информационных систем необходима для обеспечения непрерывности работы системы и минимизации возможности потери данных в случае сбоев или отказов в работе оборудования. Это особенно важно для критических для бизнеса систем. Мы начали использовать геора...

Готовим Telegram Mini App без туннеля и с Hot Module Reload на React, TypeScript В этой статье разберем как собрать комфортную девелопмент среду для разработки Telegram Mini App. Под комфортом я понимаю ситуацию когда тебе не нужно выгружать свое приложение в облако, чтобы увидеть результат работы в телеге, или запускать туннель типа ngrock, который посл...

Как мы Kafka с NestJS microservices подружить пытались Привет, меня зовут Валентин, я NodeJS-разработчик в Сравни. Моя команда делает Profile Service — внутренний продукт, который отвечает за быстрое получение и запись личных данных пользователей для экосистемы Сравни. Мы взаимодействуем с 20+ продуктовыми командами, которые даю...

Apple превратит свое ТВ-приложение в «стриминговый хаб» Apple, видимо, работает над существенной переработкой своего приложения TV, направленной на объединение контента, подписки на каналы и т.д. Обновленное приложение может быть запущено уже в декабре на Apple TV, различных других платформах Apple и телевизионных операционных си...

[Перевод] Приложения для Vision Pro выглядят скучно Apple вложила массу усилий в разработку правил, советов и руководств по проектированию элементов интерфейса, чтобы не столкнуться с подводными камнями, связанными с созданием 3D-интерфейсов. Это помогло избежать обилия подвижных элементов и визуального беспорядка, которые мо...

Интернационализация от i до n: как мы переводим интерфейсы в Фантехе Яндекса Привет! Меня зовут Александр Поляков, я руководитель команды i18n-разработки в Фантехе Яндекса. Мы помогаем сервисам компании выходить на международные рынки, а именно решаем задачи, связанные с интернационализацией и локализацией интерфейсов.В этом посте расскажу:• какие им...

Забудь про свои деньги инди разработчик Я где-то в параллельной вселенной являюсь инди разработчиком игр. Так вот, есть у меня игра Necromancer Returns, которая есть в Steam и GooglePlay.И по какой-то причине захожу в консоль гугл плей и вижу письмо о том, что моя игра не отображается в сторе уже более полугода, т...

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

Умная рыбалка: как мы учим ML работать с фишингом Всем привет! Меня зовут Мария Анисимова, я программист-исследователь команды машинного обучения Антиспама Почты Mail.ru  В этой статье я хочу рассказать вам о фишинге. И о том, как мы с ним боремся. Фишинговые атаки стали популярны с момента появления электронной п...

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

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

Массовая чистка в AppStore: удалены приложения «Ситидрайва», РЖД и «Сбермаркета» Сразу три популярных российских приложения удалили сегодня из AppStore: теперь в каталоге программ для iOS невозможно скачать «РЖД Пассажирам» (с его помощью можно было купить билеты на поезд), «Сбермаркета» (сервис доставки продуктов и товаров и...

Тиннитус (шум в ушах) для айтишников, геймеров, и не только ВНИМАНИЕ! ЕСЛИ У ВАС НЕТ ШУМА В УШАХ(ТИННИТУСА) И/ИЛИ НЕЙРОСЕНСОРНОЙ ТУГОУХОСТИ, НО ЕСТЬ ОСОБЕННОСТИ ПСИХИКИ В ЧАСТИ ПСИХОСОМАТИКИ ИЛИ ПОДОБНОГО – ПОКИНЬТЕ ДАННЫЙ ПОСТ НЕ ЧИТАЯ. Самые важные победы в мире – победы над собойВсем привет. Меня зовут Паша Герасимов, мне 38, я – ...

Как появились веб-пуши Apple в Тинькофф Всем привет! Мы — архитектор разработки публичных веб-приложений Борис и разработчик системы-шлюза отправки нотификаций Данила. Расскажем о том, как создавались веб-пуши iOS в Тинькофф, как их настраивали и с какими проблемами столкнулись в процессе разработки. Читать д...

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

Obtainium — агрегатор закачек apk из разных источников Android предлагает богатый выбор сторонних репозиториев и магазинов приложений помимо Play Маркета: F-Droid (opensource), Aptoide, APKMirror и фирменные магазины вендоров. Однако разработчики часто выкладывают приложения только на собственных сайтах или GitHub. Это требует с...

Детектирование атак на контейнеры с помощью eBPF Привет, Хабр!Меня зовут Илья Зимин, я аналитик-исследователь угроз в компании R-Vision. Сегодня в статье я расскажу о возможностях обнаружения атак на контейнеризированные приложения с помощью такого инструмента, как eBPF, на примере приемов, связанных с побегом из Docker-ко...

Подводная база, головоломки и скрытые тайны в Stasis: Bone Totem — теперь и на консолях Сегодня, 28 марта, на консолях появится подводное приключение в жанре point-and-click — Stasis: Bone Totem. Теперь игра будет доступна не только на ПК, где она вышла ещё 31 мая 2023, но и на платформах Xbox One, Xbox Series X|S, PlayStation 4|5 и Nintendo Switch. В Steam цен...

Оптимизация работы с Camunda на основе External task Привет! Меня зовут Андрей, я - ведущий разработчик в "РТК ИТ". В этой статье речь пойдет об опыте перехода на паттерн external task в одной из наших систем.Camunda — это BPM-движок для автоматизации бизнес-процессов. Она представляет собой набор библиотек, которые и позволяю...

Прозрачность процессов как инструмент эффективного взаимодействия Привет, Хабр! Меня зовут Анастасия, я из Газпромбанк.Тех. На текущий момент являюсь одним из HOP QA, но довольно долго была просто тестлидом. Поэтому много мыслей в этой статье использованы ещё с того периода времени.В этой статье, я хочу рассказать, что такое прозрачность п...

Как мы выстроили процесс работы с макетами Меня зовут Алина Шилова, я работаю системным аналитиком над внутренними продуктами Tele2. Вот уже два года наша команда занимается разработкой портала для сотрудников компании. Специально для создания платформы была набрана команда. За 10 лет работы в ИТ-сфере это был мой пе...

Как в РСХБ разработали средство генерации SQL-запроса для упрощения задач по тестированию Привет, Хабр! Меня зовут Андрей Околелов, я работаю ведущим инженером в Блоке обеспечения и контроля качества выпуска изменений ПО в РСХБ. В банковской сфере я работаю с 1992 года, с 2018 основная деятельность — тестирование банковских прил...

Руководство по проектированию дизайна и юзабилити интерфейсов с Drag and Drop Всем привет! Меня зовут Александр Григоренко, я фронтенд-разработчик, и я часто сталкиваюсь с разработкой веб-интерфейсов с использованием Drag and Drop. В своей предыдущей статье про Drag and Drop я рассказывал про историю появления и развития этого подхода: появившись в пе...

ESLint | Shareable config настройка и что это такое? Приветствую! В ходе своей профессиональной деятельности, каждый фронтенд-разработчик сталкивается с неотъемлемой частью разработки - инструментом ESLint.Сегодня мы поговорим, о настройке shareable config. Мы рассмотрим, как это может помочь продуктовым командам или фрилансер...

Siemens LOGO, Home assistant, или моё видение умного дома Привет! Меня зовут Максим, и работаю я DevOps инженером. Год назад я купил квартиру в новостройке, а это значит что я волен полностью все сделать под себя. Профессия обязывает всё автоматизировать, и мне это очень нравится, поэтому я не упустил возможность отыграться даже ту...

ThinkPad X41 Tablet в 2023 году У каждого из нас есть любимые вещи, использование которых вызывает положительные эмоции. Если это автомобиль, то каждый элемент находится на своём месте и реагирует предсказуемым образом. Каждый звук привычен, ведь вы слышали его сотню раз и знаете, что так должно быть. Нет ...

Как стать SRE-инженером в 2024 году Традиционным ИТ-командам трудно успеть за быстрым ростом масштабов и сложности приложений. Растут и требования, которые предъявляют к приложениям пользователи. В этих условиях крайне важно поддерживать бесперебойную работу инфраструктуры. На помощь приходят SRE-инженеры...

Работа с A/B-тестами в крупной соцсети: подробно об A/B платформе Одноклассников ОК — социальная сеть, которой ежемесячно пользуется более 36,5 млн уникальных пользователей из России. Наш продукт имеет сложную архитектуру, включает десятки сервисов и инструментов, которые мы постоянно совершенствуем и добавляем новые. Чтобы в процессе выкатки обновлений ...

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

«Follow the sun» как принцип поддержки Меня зовут Максим Журавлев, я управляющий директор ДИТ «Занять и Сберегать», лидер сообщества инженеров сопровождения Сбера. В этой статье я хочу рассказать про надёжность высоконагруженных ИТ-систем и принципы, которым мы следуем.Гаджеты, мобильные приложения и различные ци...

Как я написал программу для преданалитики клиентов Привет! Меня зовут Александр Кулагин. Я не занимался разработкой профессионально, но заинтересовался созданием нейросетей. После изучения основ Python, NumPy и TensorFlow я захотел попрактиковаться на реальных задачах. Так я решил создать проект, который оценивает, какие ком...

Самое главное в конференции это… Всем привет! Я главный редактор блога Онтико на Хабре. Меня зовут Роман Бурак. Немного пришёл в себя после участия в подготовке и проведении HighLoad++ 2023 и хочу поделиться впечатлениями. Именно ощущениями, никакой рекламы мероприятия, докладов и всего прочего. Расскажу, в...

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

Практические аспекты ранжирования ответов виртуального ассистента Салют Всем привет! Меня зовут Аня Максимова, я занимаюсь NLP в команде Нейронные сети продукта Собеседник! 5 апреля проходила конференция Giga R&D Day, где мой коллега — Артем Снегирев рассказывал про практические аспекты ранжирования ответов виртуального ассистента ...

Каждый айтишник желает знать: корпоративное обучение в МТС Тета Привет, Хабр. Меня зовут Максим Яровой, я руковожу внутренним центром развития и обучения IT-специалистов – МТС Тета.Одна из основных проблем обучения в IT-секторе в том, что учебные программы часто отстают от быстро развивающейся индустрии. МТС Тета была создана два года на...

Анализ производительности React Native приложений: как выявить проблемы и улучшить перформанс Привет, Хабр! Меня зовут Вадим, я мобильный разработчик в СберМаркете. В этой статье расскажу, как провести профилирование (оно же измерение производительности или оценка перформанса) в react native приложениях: как выявить источник проблем и решить их. В русскоязычных источ...

Как спектральный анализ улучшает оценку задач и снижает стресс в команде разработки Привет! Меня зовут Илья, я руководитель команды индивидуальных интеграций CDEK. В рамках этой статьи хочу поговорить о спектральном анализе — инструменте для аналитики и прогнозирования задач команд разработки. По итогу мы с вами разберемся, ког...

5 советов для тех, кто хочет войти в IT в 2024 году Всем привет! Я Даниил Беликов, мобильный разработчик с опытом работы HR-менеджером. Я начал программировать в 2019 году, когда мне было 27 лет. У меня не было технического образования, друзей-программистов и поддержки со стороны близких. В силу обстоятельств, мне пришлось пр...

Кому и зачем нужны разработчики мобильных приложений в 1С Платформа 1C:Enterprise — самый простой способ перейти в сферу мобильной разработки. Научиться писать приложения на 1С проще, чем освоить Swift, Java или Kotlin. Обучение займёт всего пару месяцев. При этом специалист с такими знаниями всегда будет востребован на рынке благо...

Особенности тестирования десктопных приложений Привет, Хабр!Сегодня я хочу поделиться своим опытом тестирования десктопных приложений, который может быть особенно полезен для тех, кто сталкивается с вакансиями десктопного тестировщика. Так какие особенности сопутствуют тестированию десктопных приложений? Читать дале...

Синкерим, хешайдим, терминируем: 6 утилит, чтобы ускорить ваши локализации Наша команда Mobile Doc&Loc «Лаборатории Касперского» занимается подготовкой документации и локализации B2C-продуктов компании для мобильных устройств. Основная сложность (и одновременно фишка) нашей работы заключается в том, что необходимо регулярно подготавливать перев...

Пишем Ansible-модули для управления разными системами хранения данных через Swordfish Большинство современных систем хранения данных (СХД) предоставляют REST API для управления ими, включая настройку, конфигурирование, выполнение различных команд, получение логов, работу с пользователями и т.д. В зависимости от производителя СХД REST API могут отличаться друг...

Адаптация мобильного приложения для пользователей скринридеров. Опыт Яндекс Лавки Приложениями пользуются разные люди, и некоторым из них для этого нужны вспомогательные технологии — например, скринридеры (программы экранного доступа). Такие программы могут озвучить контент на странице, если приложение соответствует определённым стандартам. Например, они ...

Один QA в поле воин? Всем привет.Меня зовут Пронин Евгений, я Senior QA Engineer. Я работал в студии ITTerritory в полноценном отделе тестирования с несколькими коллегами, также имел опыт как единственный инженер на проекте в студии Nakusi Games. Я расскажу о своем опыте и поделюсь некоторыми н...

Знакомство с Kubernetes на практике Если Вы хоть раз работали с высоконагруженными приложениями, то наверняка знаете, какое количество головной боли возникает в процессе. Как правило, в таких проектах все направлено на максимальную оптимизацию и увеличение быстродействия, но по достижению критической массы пол...

Account Abstraction: что это такое и зачем нужно криптомиру Привет всем! Меня зовут Паша, я web3 разработчик в команде MetaLamp, мой основной стек – Solidity. Последнее время я часто сталкивался с задачами, требующими применения технологии Account Abstraction, поэтому я решил собрать базовые знания о ней в одну статью. Эта статья пом...

Android Lint: оптимизируем проверку мердж-реквестов Привет, это Android-разработчик из «МТС Диджитал» Никита Пятаков. Когда я только начал работать над приложением «Мой МТС», мне нужно было время, чтобы адаптироваться и ознакомиться с проектом. На первых МР-ах коллеги подсвечивали готовые решения, которые можно переиспол...

Полезные модули PowerShell. Переводчик в консоли, SpeedTest, Syslog и другие Всем привет! Порой, написать графическую форму для консольного приложения может оказаться очень удобным решением, тем самым не нужно запоминать все ключи программы, особенно, если пользоваться им приходится изредка, тем самым автоматизируя работу с данным приложением в дальн...

DivKit теперь и для Flutter. Рассказываем об особенностях BDUI-фреймворка Яндекса Полтора года назад мы выпустили в опенсорс DivKit — фреймворк для отрисовки интерфейсов из ответа сервера. На тот момент он уже прошёл проверку временем внутри компании и применялся в приложении Яндекс, Алисе, Маркете, Едадиле и других сервисах. С тех пор инструмент прошёл д...

Что означает зеленая точка в углу экрана Android и как ее убрать С недавних пор на Android-смартфонах появляется зеленая точка в углу экрана. Она отображается в строке состояния и периодически исчезает, через некоторое время возникая вновь. В этой связи вполне логично задаться вопросом, а что значит зеленая точка в углу телефона? Сегодня...

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

Сборник встраиваемых модулей на ПЛИС Интереса ради сделал несколько простеньких модулей (аля платки для встраиваемых систем), про которые и хочу рассказать и поделиться исходниками, вдруг кому пригодится. Да, эта статья не про ПЛИСовую тематику, а что бы её немного разбавить, хотя кого я обманываю, модули же с ...

Кадровое агентство в IT: способ найти место потеплее, о котором мы с вами забыли Всем привет!Меня зовут Мария, и я ИТ-рекрутер *здесь должны быть тяжкие вздохи айтишников*Свою профессиональную деятельность я начинала именно с кадрового агентства. Я работала с такими компаниями как Avito, Ozon, Yandex, X5 Group, Тинькофф, etc. Так что мне определенно есть...

2d движок для игр Javascript Game Engine (JsGE) Привет всем. Меня зовут Артурас, я пишу на Javascript. Полтора года назад я уволился из оффшорной компании и решил написать свой движок для браузерных 2d игр. Сегодня - делюсь результатами. Читать далее

АБ тесты и подводные камни при их автоматизации Задача оценки нововведений в онлайн и мобильных приложениях возникает повсеместно. Один из наиболее надёжных и популярных способов решения этой задачи - двойной слепой рандомизированный эксперимент, также известный как АБ-тест.На тему АБ-тестирования доступны как статьи на Х...

Маркер всевластья, практика визуальных встреч Как-то я был на встрече, где участники громко спорили и не соглашались друг с другом. Причем все говорили об одном и том же, только с разных сторон. И тут один из участников взял маркер и начал рисовать на флипчарте квадратики, стрелочки, человечков. В какой-то момент спорив...

Шпаргалка по безопасной сборке Docker-образов Каждый контейнер Docker основан на образе, который обеспечивает базу для всего, что вы когда-либо будете развертывать и запускать. Если злоумышленник как-то повлияет на сборку образа и изменит Dockerfile, то сможет совершить навредить вашим системам. Например, добавить вред...

Как и зачем мы строили 3D-модели достопримечательностей на Картах За последний год мы добавили много нового на Яндекс Карты: например, высокодетализированные дороги с подробной  разметкой, растительность, а ещё совершенно новые, цветные и детальные 3D-модели достопримечательностей. Их можно увидеть, приблизив, например, Пушкинский муз...

Секреты технического собеседования от СТО с опытом 1000+ интервью Привет, меня зовут Артём Пулявин, с 2022 года я занимаю позицию технического директора в Ситидрайве и отвечаю за всё IT в компании — от закупки серверов и ноутбуков до разработки и найма новых членов команды. За 20-летнюю карьеру я провёл более 1 000 собеседований и взял на ...

Настройка CI/CD для Gitlab-репозитория: схемы и гайд по шагам Рассказываем, как работать с CI/CD, о шагах при настройке сервера и о полезных командах, которые помогут в работе. Привет! Меня зовут Николай, я Backend-разработчик в РЕЛЭКС.В статье ты найдешь полезный теоретический материал, сравнение инструментов CI/CD и подробный гайд п...

Accessibility картинок. Как сделать изображения доступными? Всем привет! Меня зовут Артём Плаксин, я незрячий специалист по цифровой доступности и работаю в ВК. Почитать о моей работе в офисе вы можете в одном из постов этого блога, а сегодня я хочу поговорить о практической стороне доступности. Этот пост посвящён доступности изображ...

Fuzzing-тестирование. Практическое применение Привет, Хабр! Меня зовут Никита Догаев, я Backend Team Lead в команде Контента на портале поставщиков Wildberries. Мы отвечаем за карточки, которые каждый день испытывают на прочность сотни тысяч продавцов из разных стран.В статье поделюсь своим опытом применения фаззинга дл...

Как перестать работать в выходные и наконец-то научиться делегировать: опыт одного тимлида Всем привет, меня зовут Иван Михеев, я Chief Technology Officer маркетплейса авторских туров YouTravel.me, где руковожу разработкой, поддержкой и всем, что связано с технической частью бизнеса. Сегодня я хочу вам рассказать о том как делегирование влияет на эффективность ком...

Разработка тензорного компилятора под RISC-V CPU с помощью OpenVINO и MLIR Привет, Хабр! Меня зовут Владислав Виноградов, я инженер группы исследований и разработки ПО глубокого обучения в YADRO. Моя команда создает и оптимизирует связанное с искусственным интеллектом программное обеспечение. Сегодня я расскажу, как можно разработать тензорный комп...

Это база. Как прокачиваются сервисные инженеры КРОК Привет, Хабр! Меня зовут Жора Дубовец, я сервисный инженер в департаменте инфраструктурных решений и сервисов КРОК. За четыре года я прошел путь от стажера до ведущего специалиста в команде, которая 24/7 поддерживает работоспособность ИТ-инфраструктур компаний от Калининград...

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

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

Apple передумала «мстить» Евросоюзу за новый закон. Компания вернёт поддержку веб-приложений PWA для жителей EC Компания Apple передумала отключать поддержку веб-приложений PWA для жителей Евросоюза.  Купертинский гигант сообщил, что с выходом iOS 17.4 для жителей ЕС в этом вопросе ничего не изменится, и веб-приложения продолжат быть для них доступны. Напомним, ранее Apple ...

Как мы автоматизировали VDS и пытались не сгореть, часть 2: сетевые вопросы Всем привет! Меня зовут Владимир и я тимлид команды по развитию и поддержке продуктов DDoS-Guard, таких как: хостинг, VDS и выделенные серверы. Сегодня я продолжу тему алкоголика инженера @analog_cat про горение, автоматизацию и не только. Расставлю все точки в сетевом вопро...

Улучшение кода без споров и цитирования известных практик Не секрет, что при формировании новой команды руководители (Team Leader, Tech Leader) сталкиваются с проблемой формирования единого стиля написания программ, так как все члены команды новые, и у каждого из них свой подход к организации кода и выбору используемой практики. Ка...

Сквозное наблюдение (observability) в микросервисах Привет, Хабр! Сегодня мы поговорим о чем-то, что является неотъемлемой частью современной микросервисной архитектуры, что-то, без чего трудно представить себе успешное и надежное приложение в мире распределенных систем. Да, вы правильно догадались, мы говорим о сквозном набл...

Как установить NCALayer на Linux Всем привет, меня зовут Абай. В последнее время часто замечаю, что у пользователей Linux в Казахстане постоянно проблемы с установкой NCALayer, поэтому решил написать гайд, который простым языком объяснит, как установить его через терминал... Читать далее

Как мы лечили раздвоение встреч в конференциях на базе Jitsi Привет! Меня зовут Дима. Я из команды бэкенда Яндекс Телемоста — сервиса для проведения видеовстреч, который входит в Яндекс 360. Перед нами стоит задача не просто предоставить сервис, а предоставить отказоустойчивый и надёжный сервис, который работает 24/7 и ...

Рекомпозиция в Compose: что не видно разработчику невооруженным глазом Всем привет! Меня зовут Данила, я Android-разработчик в команде, которая занимается созданием супераппа WorksPad и почтового клиента RuPost Desktop.Все новые фичи в проекте пишутся на Compose, поэтому встал вопрос о повышении собственной квалификации. Нужно было разобра...

Как мы отказались от styled-components в React Native приложениях Styled-components является стандартом написания стилей для многих команд, которые разрабатывают приложения на React Native. Но мы не всегда задумываемся, зачем мы тащим это в продукт и какую выгоду получим. А что если от styled-components больше вреда, чем пользы? Я поделюсь...

Разработчики рассказали о масштабном обновлении приложений «Р7-Команда» для iOS и Android Компания «Р7» объявила о масштабном обновлении модуля видеоконференцсвязи «Р7-Команда». Речь идет о новых версиях приложения для мобильных устройств (iOS и Android). Значительно обновлена версия для Android, которая пополнилась индикатором качества канала. Разработчики позаб...

Релиз тактической игры Home, Planet & Hunters в App Store и Google Play Игра Home, Planet & Hunters от студии Black Pearl вышла на iOS и Android. Проект идеально подходит для фанатов тактических RPG, так как на поле боя нужно отдавать приказы каждому юниту, будь это танк, стрелок или лекарь. Помимо этого их можно перемещать по полю, ведь в л...

Ограничения в телеграм-бот (Bot API), о которых никто не расскажет Привет! Меня зовут Оля, я программист учебного центра компании «Тензор».В декабре 23-го мне поступила творческая задача разработать телеграм-бот для проведения новогоднего марафона-тренинга по личностному росту.В этой статье расскажу о проблеме, с которой столкнулась при раз...

Как провести unit-тестирование Flink-операторов: TestHarness Привет всем, на связи снова Александр Бобряков, техлид в команде МТС Аналитики. Продолжаем цикл статей про фреймворк Apache Flink.Напомню, в предыдущих частях я рассказывал про построение пайплайна Kafka-to-Kafka с промежуточным разделением потока и дедупликацией событий. Та...

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

[recovery mode] «Они убивают Lottie — молодцы!» Привет, Хабр. Меня зовут Алексей, я разрабатываю мобильные приложения на Flutter в Пиробайте. Помимо этого увлекаюсь моушн-дизайном. В прошлый раз рассказывал о том, почему Flutter Web (не) мертв. Сегодня предлагаю продолжить наш тру-крайм в мире разработки и снова узнать кт...

TrueConf — российский ВКС-сервис на замену Zoom и Microsoft Teams, которым можно пользоваться бесплатно Все мы прекрасно знаем, что у многих зарубежных приложений и сервисов есть российские аналоги, которыми вполне можно пользоваться. Но если раньше пересесть на них добровольно решались лишь единицы, сегодня тех, кто вынужден это делать, становится  все больше и больше. О...

Сервер Юк. Заставляем Yandex Cloud Functions работать на F# В этой статье я расскажу, как засунуть F# в Yandex Cloud Functions. Навыка работы с Serverless у меня нет, так что это будет не компиляция моего опыта, а отчет о вполне успешном эксперименте.Судя по всему, разработчики Yandex Cloud Functions считают, что dotnet = C#. Поэтому...

Код-ревью и советы по повышению его качества: на что обратить внимание в первую очередь? Привет, Хабр! Сегодня поговорим о код-ревью, т. е. проверке и оценке качества кода выполненной разработчиком задачи перед её релизом. У код-ревью несколько положительных моментов:● поиск багов и проблем кода, что значительно снижает вероятность проникновения этих багов ...

Два сапога — пара, а три — уже community: как алгоритмы на графах помогают собирать группы товаров Привет, Хабр! Меня зовут Иван Антипов, я занимаюсь ML в команде матчинга Ozon. Наша команда разрабатывает алгоритмы поиска одинаковых товаров на сайте. Это позволяет покупателям находить более выгодные предложения, экономя время и деньги.В этой статье мы обсудим кластеризаци...

Как я проектирую интерфейсы Привет, я Егор Камелев, проектировщик интерфейсов (UX-дизайнер). За последние 20 лет я поработал с командами десятков агентств, IT-отделов, действующих проектов и продуктов, стартапов (и запущенных, и незавершённых). Я знаком с сотней команд, не меньше. И среди них не нашлос...

Путь iOS-разработчика: как я много собеседовался и попал на стажировку Привет! Меня зовут Владислав Латышев, мне 28 лет, и сейчас я прохожу стажировку в Банки.ру как iOS-разработчик Я пробовал себя в разных специальностях — получил финансовое и менеджерское образование, занимался бухгалтерией, стал кандидатом в мастера спорта, был тренером по ф...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)