• [Видео] Боевые корабли, боты и стрельба деньгами по серверам


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


      Темы такие:


      — регулярные боевые стрельбы и как их можно провести;
      — исследования производительности в рамках capacity management;
      — применение BDD для непрерывного нагрузочного тестирования;
      — как тестируют игровые сервера в World of Warships.

      Читать дальше →
    • [Видео] Почему взрываются ракеты, что скоро появится в Kotlin и как спасти код ревью


        6 декабря мы провели очередной Java-митап. Там говорили вот о чём:


        • о разработке Moira — системы экстренного реагирования на инциденты (про ракеты — здесь);
        • о контрактах в Kotlin, задачах, проблемах и улучшениях для DSL;
        • о том, как роботом выбирать ревьюеров в большой команде разработчиков;
        • о том, как научить все компоненты генерировать графики и метрики на боевой среде;
        • о правильной обратной связи для обнаружения проблемных релизов.

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

        Читать дальше →
        • +15
        • 4,6k
        • 1
      • Введение в исследование производительности

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


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

          Читать дальше →
          • +17
          • 3,9k
          • 2
        • Телепатические платежи, запись на слономойку и другие тестовые задания для UX-редакторов

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


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



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

            Читать дальше →
            • +21
            • 3,5k
            • 5
          • Frontend Mix — доклады про Node.js, масштабируемость и нативный веб

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


              У вас есть фронтенд. Вам нужен BFF, и вы выбираете Node.js. Что-то настраиваете, разрабатываете, профилируете, и получается результат. Вы не понимаете, что делали, но вам объяснят.


              У вас есть фронтенд. Еще вам нужно бесплатное масштабирование, поэтому вы берёте Node.js и смешиваете его с Comedy. Вы не понимаете, как с этим работать, но вам объяснят.



              Виктор Исаев наглядно показывает, почему фреймворк Comedy — сила


              Под катом три полезнейших доклада про внутренности Node.JS, инструменты, нативный веб, а ещё идеальное демо многопоточности в Node.JS с фреймворком Comedy.

              Читать дальше →
            • Как спланировать двухнедельный спринт

                Иногда молодые команды разработки охватывает неразбериха.


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


                У нас тоже была похожая история, но мы нашли свой путь.


                Это рассказ от команды личного кабинета Яндекс.Кассы, и подробнейшая инструкция для тех, кто хочет улучшить своё планирование.

                Читать дальше →
                • +19
                • 7,9k
                • 6
              • Как мы сделали оплату через Google Pay в Яндекс.Кассе [обновлено]


                  Когда Google Pay только появился в России, я завёл аккаунт, добавил туда карту и понял, что больше ничего не могу сделать. NFC в моём телефоне не было, в интернете тоже ничего не оплатить — ну и ладно, мне не мешает. В конце концов, всегда можно было руками вбить цифры с карты или подтянуть их из браузерной хранилки паролей.


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


                  И вот настало сегодня. Теперь я могу заплатить через Google Pay с любого устройства на сайтах, которые подключены к Яндекс.Кассе (а их довольно много). Расскажу, как так получилось и какие технические задачи пришлось решать нашим разработчикам; там много интересного и на фронте, и в бэкенде.

                  Читать дальше →
                • Как я 13 лет делал футбольный симулятор

                    2_fview_gameplay


                    История, которую я расскажу, началась 13 лет назад на уроке информатики. Мы с друзьями-семиклассниками решили все задачи на Паскале и весело играли в первый Quake. Наша учительница увидела это, подошла ко мне и сказала всего одну фразу, которая перекосила мою картину мира: «Если ты хочешь играть в игры на уроке, пиши их сам». С тех пор я эпизодически делаю игры. Одна из них — футбольный симулятор, о котором и пойдёт речь.


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

                    Читать дальше →
                  • Тонкая настройка OpenStack под высокой нагрузкой

                      Привет, меня зовут Максим, я системный администратор. Три года назад мы с коллегами начали переводить продукты на микросервисы, а в качестве платформы решили использовать Openstack, и столкнулись с некоторым количеством неочевидных граблей при автоматизации тестовых схем. Этот пост про нюансы настройки OpenStack, которые с трудом находятся на пятой странице выдачи поисковика (а лучше, чтобы легко находились на первой).



                      Нагрузка на ядра: было — стало


                      NAT


                      В некоторых инстансах мы используем dualstack. Это когда виртуальная машина получает сразу два адреса — IPv4 и IPv6. Сначала мы сделали так, что «плавающий» v4-адрес назначался во внутренней сети через NAT, а v6 машина получала через BGP, но с этим есть пара проблем.


                      NAT — дополнительный узел в сети, где и без него нужно следить за нормальным распределением нагрузки. Появление NAT в сети почти всегда ведёт к сложностям с отладкой — на хосте один IP, в базе другой, и отследить запрос становится сложно. Начинаются массовые поиски, а разгадка всё равно будет внутри OpenStack.


                      Ещё NAT не позволяет сделать нормальную сегментацию доступов между проектами. У всех проектов свои подсети, плавающие IP постоянно мигрируют, и с NAT управлять этим становится решительно невозможно. В некоторых инсталляциях говорят об использовании NAT 1 в 1 (внутренний адрес не отличается от внешнего), но это всё равно оставляет лишние звенья в цепочке взаимодействия с внешними сервисами. Мы пришли к мнению, что для нас лучший вариант — это BGP сеть.

                      Читать дальше →
                      • +28
                      • 5,9k
                      • 6
                    • Десять человек на 90 тысяч сайтов: как не сойти с ума

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


                        Каждый сотрудник Яндекс.Денег раз в год может сменить род деятельности — выбрать какой-нибудь отдел и поработать там несколько дней. Поэтому месяц назад и я села в Сапсан и приехала в Петербург. Там работает отдел мониторинга, который тоже следит, чтобы у 90 тысяч сайтов, подключенных к Кассе, всё было хорошо, — и мы решили объединить силы.



                        Как не сойти с ума? Точно не так (источник: reddit.com)


                        Это рассказ о том, как у нас устроен мониторинг, и чему я научилась за пару дней в другом департаменте.

                        Читать дальше →
                        • +21
                        • 9,3k
                        • 5
                      • Доклады про битву CI и CD, оркестрацию и секреты OpenStack

                          27 сентября мы провели второй митап «Орки тут» — про оркестрацию, автоматизацию и полевое применение CI/CD. В этом посте полные видео и таймкоды с важными местами из трех докладов.



                          Темы такие:


                          • Environment as a Service — про эксплуатацию и секреты настройки OpenStack
                          • Pod, Cloud and two Smoking Hubs — про масштабирование Selenium-фермы
                          • CI vs CD: гонка вооружений — про то, как «воевали» CI и CD в Яндекс.Деньгах
                          Читать дальше →
                        • Как работает робоэдвайзинг в инвестициях. Спойлер: просто

                            Я редактор этого блога, и я довольно ленив.


                            К двадцати шести годам я начал думать о том, куда вложить свободные деньги, чтобы получить ещё больше денег. Интернет кишит рекламой ставок на спорт (у каждого в голове в этом месте пронеслось некое название), бинарными опционами и всем таким. Но, конечно, это всё не то.



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


                            Еще вроде есть робоэдвайзеры — сервисы, которые за небольшую комиссию магическим образом делают всё сами. Я ненадолго победил свою лень и решил разобраться в том, как они работают.

                            Читать дальше →
                          • Деньги решают. «У нас три разработчика, но мы не умеем работать»

                              https://xkcd.ru/1562/Нам пишут:
                              «Хм, а дайте плиз совет.


                              Реальный кейс, три разработчика, один разработчик работает 100% времени удаленно, второй разработчик — шеф/соучредитель, третий — немного офигевающий новоприбывший.


                              Общие совещания — раз в полгода и дальше слов дело не идет. Внедрить GIT для всех разработчиков не получается, все завалены текущей работой.


                              Есть ли способы как-то улучшить ситуацию?»


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

                              Читать дальше →
                            • Девять граблей Elasticsearch, на которые я наступил

                                Автор иллюстрации — Anton Gudim


                                «Подготовленный человек тоже наступает на грабли.
                                Но с другой стороны — там, где ручка.»


                                Elasticsearch — прекрасный инструмент, но каждый инструмент требует не только настройки и ухода, но и внимания к мелочам. Некоторые — незначительны и лежат на поверхности, а другие спрятаны так глубоко, что на поиск уйдет не один день, не один десяток кружек кофе и не один километр нервов. В этой статье расскажу про девять замечательных граблей в настройке эластика, на которые я наступил.
                                Давайте приступим
                              • «Яндекс.Деньги в ваше приложение заходить неинтересно сделайте штонибуть»


                                  Где-то внутри приложения Яндекс.Денег спрятана кнопка «Предложить идею». Люди нажимают на неё и пишут о своей боли, предлагают помощь или просят денег за невероятные новые возможности, которые они уже придумали, осталось только заплатить им сто тысяч.


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


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


                                  Пост об этом, а ещё о том, как мы сделали свой CSS на Swift.

                                  Читать дальше →
                                • Это пост с докладами и видео по MS SQL Server

                                    В июне мы провели митап по Microsoft SQL Server — докладчики из Яндекс.Денег, «Лаборатории Касперского», AwaraIT и SpbDev поделились с коллегами опытом. А теперь выкладываем видео в общий доступ.



                                    Под каждым видео — таймкоды ключевых мест, но советуем смотреть, слушать и внимать целиком.


                                    Data-driven подписки в SSRS


                                    Под катом еще три доклада
                                  • Я устал принимать платежи через WebView. Что мне делать?

                                      Я езжу в офис на электричке — нужно проехать одну станцию, и я буду почти на месте.

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

                                      Это когда ты бежишь на поезд, а тебе говорят «Что-то пошло не так» и списывают деньги, а билет не дают. Возврат приходит тут же, но поезд-то уже ушел. Такое происходит пару раз в месяц, вне зависимости от качества интернета. Ни о каких -пэях и говорить не приходится.



                                      В этот момент задумываешься — а может, есть способ проще? Ну, чтобы вообще без вебвью, красиво и нативно. И да, такой способ есть. Подробности под катом.
                                      Читать дальше →
                                    • Как мы защищаем отзывы, покупки и путешествия от мошенников

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


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

                                        Я украл эту иллюстрацию у дизайнеров, когда они отвернулись.


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


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

                                        Читать дальше →
                                      • Митап JavaJam. Спор о джавистах, сплав на брёвнах, эксперименты и микросервисы

                                          Java-разработчики классные.

                                          Фронтендеры их хвалят и перенимают полезные инструменты, дизайнеры с особой любовью приносят макеты, а тестировщики ликуют, потому что все автоматизировано и жизнь — сахар (но об этом мы пока не рассказывали).

                                          Иногда мы проводим для них java-митапы — собираем экспертов и просим их рассказать что-нибудь позабористей. Так и в этот раз — коллеги из Сбербанка, Одноклассников, Яндекса и Яндекс.Денег пришли на JavaJam и выложили сразу кучу подробностей о своей работе.

                                          image

                                          Под катом:

                                          — Главное о логировании Java-приложений на примерах от Яндекса;
                                          — Разработка инструмента на Low-code для UFS Сбербанка;
                                          — Автоматизация экспериментов в Одноклассниках с помощью Kotlin DSL;
                                          — Как в Яндекс.Деньгах сделали одну платформу для микросервисов вместо семи.

                                          А еще там опрос о том, уместно ли называть java-разработчиков джавистами.

                                          Читать дальше →
                                          • +11
                                          • 5,6k
                                          • 4
                                        • Реактивный фронтенд. История о том, как мы снова всё переписали

                                            Привет, это снова Катя из Яндекс.Денег. Продолжаю свою историю о том, как я перестала верстать и начала жить. В первой части я рассказала, как меня сюда занесло и чем занимаются наши фронтендеры. Сегодня — про фронтовый стек, откуда там React и куда делся БЭМ.

                                            Спойлер: БЭМ пока никуда не делся ¯\_(ツ)_/¯. Погнали!



                                            Внимание: высокая концентрация фронтенда. Много текста, картинок и кода, как обещала.
                                            Читать дальше →

                                          Самое читаемое