company_banner
  • Видео докладов с конференции LoveQA. Первая часть

      Несколько недель назад, 15 февраля, мы проводили нашу первую конференцию для тестировщиков LoveQA. Спасибо всем тем, кто пришел и кто смотрел online трансляцию. У нас есть видео докладов и мы с удовольствием ими с вами делимся. Сегодня выкладываем первые 4 доклада и в конце недели опубликуем остальные.
      Если у вас остались какие-то вопросы, то их можно задавать в комментариях к посту.
      Фото с конференции в FB и Вконтакте.

      Доклады


      «Есть ли жизнь после релиза? Наш опыт тестирования мобильных приложений»
      Александр z3us Хозя & Николай Козлов, Badoo.




      Читать дальше →
      • +22
      • 8,7k
      • 4
    • Программа по поиску уязвимостей. Проверь Badoo на прочность!

        В 2013 году мы проводили конкурс Месяц поиска уязвимостей «Проверь Badoo на прочность!» и остались довольны результатами. Поэтому мы решили перевести разовый конкурс в регулярную программу.
        И сегодня, 5 февраля, мы анонсируем старт Программы по поиску уязвимостей.

        Основные изменения:
        • Проверять на прочность можно и веб-версию и мобильные приложения.
        • Мы убираем ограничения по времени – теперь найденные уязвимости можно присылать когда угодно.

        Где искать уязвимости:

        Читать дальше →
      • LoveQA. Первая мини-конференция Badoo для тестировщиков

          UPD: Фото с конференции в FB и Вконтакте.

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

          Этот год мы решили начать со своей небольшой мини конференции — LoveQA (ЛавQA), на которую хотели бы позвать специалистов, которым интересно послушать про автоматизацию тестирования, тестирование мобильных приложений, безопасность и многое другое. Нам тоже было бы интересно пообщаться с коллегами из других компаний, ответить на вопросы и узнать, как устроено тестирование у них.

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

          LoveQA — Meet New People! Посидим, пообщаемся.

          Когда: 15 февраля, суббота

          Где: Офис компании Badoo, Цветной бульвар д.2, БЦ «Легенды Цветного», Москва

          Расписание докладов и ссылка на регистрацию
        • Эволюция разработки в Badoo

            Как устроен процесс организации разработки в крупном интернет-проекте на всех этапах его роста? Что происходит, когда из стартапа компания перерастает в проект с более чем 190 миллионами пользователей.

            В прошлом году на конференции Whalerider Алексей fisher Рыбак рассказывал о том:

            • как у нас Badoo сейчас устроена разработка;
            • как в процессе развития проекта её перестраивали;
            • какие проблемы решали;
            • как преодолевали кризисы роста;
            • на какие грабли наступали.

            В секции вопросов есть интересная информация о том, как в Badoo устроена система мотивации и бонусов.
            Сейчас у нас появилось видео и мы хотим поделиться им с вами.



          • Легко ли научить робота проходить тест для программистов?

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

              Введение


              Несколько лет назад я сделал тест для программистов, который многим, скорее всего, не понравится. Если вы пишете на языке PHP, ваша любимая СУБД ― MySQL, а в качестве операционной системы вы предпочитаете Linux ― попробуйте его пройти. Заранее предупреждаю, тест своеобразный. Успешно его проходит всего несколько процентов испытуемых. Так что не стоит переживать. Если вы его не пройдете ― ничего страшного. Тест «заточен» под определенные навыки, которые требуются далеко не везде.

              Получить отличный результат в тесте сложно. Поэтому некоторые испытуемые прибегают к черной магии ― пишут бота. Хорошее дело, между прочим. «Настойчивость и храбрость, отвага и удача, в беде не растеряться ― вот главная задача!» Поэтому капчи в тесте не было. Никогда. Наоборот, мне хотелось, чтобы ботов писали. Чтобы боты приходили. Чтобы тест выстоял, боты обломались, а «ботописатели» не жульничали, а учились.

              В тесте 80 вопросов, из которых для каждого испытания случайным образом выбирается 25. У меня был простой (и, как потом выяснилось, абсолютно неверный) расчет. Чтобы тест нельзя было пройти, заучив или подобрав ответы, общая база вопросов изначально должна быть существенно больше, чем количество вопросов в одном испытании. Общее количество комбинаций тестов составляет число порядка 1020. «Раз число такое большое, значит, и подобрать ответы будет очень сложно», ― думал я. Конечно, число сочетаний ― очень грубая оценка. Но задача автоматического подбора интуитивно казалась мне если и решаемой, то такими затратами, на которые ботописатель не пойдет. Думать так было большой ошибкой. Битву с ботами я проиграл. Дальше расскажу, почему.
              Осторожно, матан!
            • Миграция фотографий или ещё одна очередь на MySQL

                Недавно мы писали о том, как перед нами впервые встала задача крупномасштабной миграции данных пользователей между дата-центрами и о том как мы ее решили.
                В этот раз мы подробнее остановимся на том, каким образом осуществлялась миграция фотографий пользователей и какие структуры данных использовались для ограничения создаваемой нагрузки на сервера с фотографиями.
                Ежедневно пользователи Badoo загружают примерно 3 миллиона фотографий. Для их хранения мы выделили специальный кластер серверов, занимающихся также изменением размеров, наложением «водяных знаков», импортом фотографий из других социальных сетей и прочими манипуляциями с файлами.
                Все машины этого кластера можно условно разделить на три группы. Первая ― это серверы, отвечающие за быструю отдачу фотографий пользователям (можно сказать, собственная реализация CDN). В контексте миграции эти серверы нам не будут интересны. Вторая группа ― это хранилища с дисками, на которых, собственно, и находятся все фотографии. И третья группа ― это серверы, предоставляющие интерфейс ко второй группе, условно назовём их фотосерверами. На них по оптоволокну смонтированы дисковые массивы хранилищ, на эти же машины происходит загрузка фотографий и здесь же работают все скрипты, выполняющие какие-либо операции с файлами.
                Таким образом, для PHP-кода совершенно неважно, на каком именно диске какого хранилища находится фотография. Все, что нужно сделать, это перенести фотографии пользователя с одного фотосервера на другой и обновить эту информацию в базе данных и некоторых демонах. Здесь важно отметить, что все фотографии пользователя всегда находятся на одном фотосервере.
                Читать дальше →
              • GitPHP в Badoo

                  Badoo — это проект с гигантским git-репозиторием, в котором есть тысячи веток и тегов. Мы используем сильно модифицированный GitPHP (http://gitphp.org) версии 0.2.4, над которой сделали множество надстроек (включая интеграцию с нашим workflow в JIRA, организацию процесса ревью и т.д.). В целом нас этот продукт устраивал, пока мы не стали замечать, что наш основной репозиторий открывается более 20 секунд. И сегодня мы расскажем о том, как мы исследовали производительность GitPHP и каких результатов добились, решая эту проблему.

                  Расстановка таймеров


                  При разработке badoo.com в девелоперском окружении мы используем весьма простую debug-панель для расстановки таймеров и отладки SQL-запросов. Поэтому первым делом мы переделали ее в GitPHP и стали измерять время выполнения участков кода, не учитывая вложенные таймеры. Вот так выглядит наша debug-панель:



                  В первой колонке находится имя вызываемого метода (или действия), во второй — дополнительная информация: аргументы для запуска, начало вывода команды и trace. В последнем столбце находится потраченное на вызов время (в секундах).
                  Читать дальше →
                • Встреча разработчиков со студентами МФТИ или «Как собрать Badoo на коленке»

                    В эту среду наши разработчики, выпускники МФТИ, проведут встречу со студентами МФТИ и расскажут как создаются большие проекты и как сделать Badoo своими силами.
                    Никакого маркетинга, пиара и прочего булшита. Только разработка, только хардкор!
                    Общаться со студентами будут разработчики из отдела A-team — они специализируются на разработке инфраструктурных проектов компании. В Badoo отдел A-team занимается созданием масштабируемых и отказоустойчивых платформ для приложений, разрабатывает приложения для управления кластерами, утилиты автоматизации тестирования/деплоя кода, собирает и исследует тонны данных для повышения качества и производительности много-серверных продакшн-систем.
                    Работа ведётся на стыке приложений для конечных пользователей и системного ПО.
                    Если вдруг кто-то из вас учится в другом ВУЗе, но хочет попасть на встречу, то напишите об этом в комментариях к посту или личным сообщением до 15-00 23 октября. Ждем письмо с названием ВУЗа, ФИО, курсом и специальностью.

                    Где: Долгопрудный, МФТИ, главный корпус, 117 аудитория
                    Когда: 23 октября, среда, в 19-00
                    Бонус: Возможность задать каверзные вопросы fisher, antonstepanenko, youROCK и Деми (без аккаунта на Хабре).

                    Нам удалось выкрасть черновики, по которым разработчики готовятся к выступлению. Ими мы с вами и поделимся.
                    Про что будем говорить
                  • Как мы мигрировали миллионные страны за рабочий день

                      Badoo — крупнейшая в мире социальная сеть для знакомств с новыми людьми, насчитывающая 190 миллионов пользователей.
                      Все данные хранятся в двух дата-центрах — европейском и американском. Некоторое время назад мы исследовали качество интернет-соединения у наших пользователей из Азии и обнаружили, что для 7 миллионов пользователей наш сайт будет загружаться в 2 раза быстрее, если мы переместим их из европейского дата-центра в американский. Перед нами впервые встала задача крупномасштабной миграции данных пользователей между дата-центрами, с которой мы успешно справились: мы научились перемещать 1,5 миллиона пользователей за один рабочий день! Мы смогли перемещать целые страны! В первой части мы подробно расскажем о поставленной перед нами задаче и о том, какого результата мы достигли.
                      Читать дальше →
                    • Биллинг в большом проекте

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

                        Что такое «биллинг»


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

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