Як в Badoo генеруються зображення для «шарінга» в соцмережах

Соціальні мережі — важливе джерело трафіку. Нам вигідно, коли користувачі діляться контентом, і ми даємо їм таку можливість — у нас є кілька видів контенту, яким можна поділитися:

  • свій профіль;
  • чужий профіль (якщо його власник це дозволив);
  • свій рейтинг, що відображає популярність користувача на сайті;
  • нагороди, отримані користувачем за свої дії або дії інших користувачів.
Щоб користувачеві хотілося ділитися всім цим, ми генеруємо спеціальні зображення, які називаємо бейджами. Ось приклад бейджа, який може отримати користувач:



Особливість бейджів полягає в тому, що на них присутні фото самих користувачів, тому кожен бачить і ділиться унікальними зображеннями. У цій статті я розповім, як ми генеруємо такі зображення, з якими проблемами стикалися і як їх вирішували.

Читати далі →

Тестування мобільних додатків: tips & tricks

Наша нова стаття являє собою список рекомендацій і порад. З неї ви дізнаєтесь:

  • як полегшити процес тестування мобільних додатків в цілому;
  • про специфіку роботи з мережею, внутрішніми і зовнішніми сервісами, платформах iOS і Android;
  • які процесні рішення і зміни дозволять вам розвиватися швидше і вводити культуру тестування у відділі розробки;
  • які існують корисні інструменти та рішення для тестування, налагодження, моніторингу та міграції користувачів.
Початківцям тестувальникам поради можуть допомогти зростати швидше, а досвідченим — упорядкувати знання. Стаття також буде корисна розробникам, продакт-менеджерів та менеджерів проектів, словом всім, хто хоче поліпшити якість продукту і налагодити взаємодію між відділами.

Як полегшити процес тестування?
1. Використовуйте принципи евристики, мнемоники — вони допомагають утримати в голові всі аспекти, які потрібно врахувати при тестуванні системи або програми.
2. Скріншоти, логи і відео — кращі аргументи тестувальника!
На жаль, з логами «спілкування» з сервером найчастіше не все так гладко, як з клієнтськими логами. Зазвичай вони додаються скоріше для зручності розробника при налагодженні роботи з сервером, ніж для роботи тестувальника.

Читати далі →

Еволюція складання логів «хмари» і збирач логів в open source

Здрастуйте, мене звуть Юрій Насретдинов, я працюю старшим інженером в Badoo. За останні півтора року я зробив кілька доповідей на тему того, як працює наша хмара. Слайди та відео можна подивитися тут і тут.

Сьогодні настав час розповісти про ще однієї частини цієї системи — про збирача логів, який ми разом з цією статтею викладаємо в open-source. Основна частина логіки нашого хмари написана на мові Go, і ця підсистема не є винятком.
Вихідні коди системи: github.com/badoo/thunder
У цій статті я розповім вам про те, яким чином ми доставляємо логи додатків в нашому хмарі, яке ми називаємо просто «скриптовою фреймворком».

Логи додатків
Наші додатки, що запускаються в хмарі, представляють із себе класи на PHP, які у найпростішій реалізації мають метод run() і отримують на вхід дані завдання, наприклад, число від 1 до N, де N — максимальна кількість примірників для цього класу. У кожного завдання є свій унікальний id, і кінцевою метою є доставка логів в якийсь централізоване сховище, де можна буде легко знайти логи як конкретного запуску, так і всі логи класу відразу.

Читати далі →

Відео з LoveQA митапа

Поспішаємо поділитися відео з нашого LoveQA митапа, який у цьому році ми проводили на РІТ-Фестивалі. Якщо у вас є питання до доповідачів, то чекаємо їх у коментарях. Ми обов'язково відповімо!

1. «Еволюція php code coverage в Badoo, Ілля uyga Агєєв, Head of Q/A department.





Читати далі →

Відео доповідей з Zabbix Moscow Meetup

Нещодавно проводили в офісі Zabbix Meetup, який з-за кількості учасників (приїхали хлопці з Ярославля, Новосибірська, Уфи, Владивостока, Краснодар, Воронеж, Брянська, СПб та інших міст) переріс у конференцію на весь день. І сьогодні хочемо поділитися з вами відео доповідей.

1. «Zabbix: минуле, сьогодення і майбутнє», Олексій alexvl Владышев, Zabbix.





2. «Zabbix в Badoo або про що не пишуть у мануалі», Ілля ableev Аблєєв, Badoo.

NEW: Наш Screens Controller для Zabbix.

Читати далі →

Відео доповідей конференції «Російські інтернет-технології 2015»

Раді поділитися з вами відео доповідей конференції «РІТ++». Окремим постом викладемо відео та слайди з LoveQA митапа.

1.«Реалтайм статистика швидкості роботи нативних і веб-додатків у реальних користувачів», Павло dpp Довбуш (Badoo).
Розповіли як зроблена статистика та аналітика швидкості роботи (UX) додатків Badoo (Web, Mobile-web, iOS, Android, Windows). Про загальні концепції та приклади, що і як вимірювати. Про те, як збирати дані зі 100% користувачів проекту і витримати навантаження.
А також про те, як з OpenSource рішень зібрати систему збору і візуалізації статистики для свого проекту.
Бонус: виклали наше «real user monitoring» рішення Jinba в OpenSource.


Читати далі →

LoveQA митап на РІТ++

Всім привіт! Через тиждень, 22 травня, в рамках РІТ-Фестивалю, пройде серія безкоштовних митапов.

Хочемо запросити всіх, кому цікаво послухати про автоматизацію тестування, на наш LoveQA Meetup.
Нам теж було б цікаво поспілкуватися з колегами з інших компаній, відповісти на питання і дізнатися, як влаштовано тестування у вас.

Ми в Badoo зібрали для вас 3 абсолютно нових доповіді, які ще не звучали на інших конференціях.

  • «Еволюція php code coverage в Badoo, Ілля Агєєв, Head of Q/A department.
  • «Впровадження Docker в процес розробки демонів», Костянтин Карпов, Q/A engineer.
  • «Юніт-тести: від загального до приватного», Олександр Свинцов, Q/A Team Lead

Читати далі →

Огляд доповідей конференції QCon London 2015

Привіт, мене звуть Макс Матюхін, я PHP-програміст в компанії Badoo. Минулого місяця в Лондоні пройшла чергова Міжнародна конференція розробників QCon 2015. Я побував на ній і тепер хочу поділитися з вами своїми враженнями про захід і розповісти про найцікавіші, на мій погляд, виступах. З цієї статті ви дізнаєтеся трохи більше про про архітектуру Uber, Spotify, CloudFlare, а також про те, як Google управляє своєю інфраструктурою і інше.

Вперше QCon відбулася в 2007 році в Лондоні і Сан-Франциско. З тих пір вона стабільно набирає популярність і розширює географію, і цього року вона пройде у 8 містах. Лондонська QCon проходить у самому серці британської столиці, в двох кроках від Вестмінстерського Абатства. У різний час на QCon виступали такі відомі особистості, як Martin Fowler, Kent Beck, Erik Meijer, Steve Vinoski, Joe Armstrong, Rich Hickey і багато інші.

Читати далі →

Geo індекс для пошуку нових знайомих або революційне відкриття вчених з Австрії

Як ви знаєте, Badoo — сервіс для пошуку нових людей. Крім усього іншого, ми дозволяємо шукати людей навколо і в «грі» теж показуємо людей, які знаходяться недалеко від вас. Ця частина «навколо» дуже і дуже важлива. Адже молодій людині з Новосибірська набагато цікавіше познайомитися з дівчиною, яка живе в п'яти хвилинах ходьби від нього, а не у Владивостоці.
Ми досі не розповідали публічно про те, як ми це робимо. Але нове відкриття австрійських вчених настільки нас порадувало, що ми зважилися це зробити. Перейдемо ж до справи.
Badoo працює по всьому світу і наш пошук працює абсолютно однаково, незалежно від того, в якій точці земної кулі ви знаходитесь. Як же ефективно шукати серед усіх людей навколо 200+ мільйонів користувачів?
Рішення нетривіально, чесно кажучи. Нам потрібен якийсь індекс, якийсь спосіб відразу ж звузити область пошуку. У випадку з земною кулею, самим простим поділом є сітка географічних широт і довгот. Однак проблема з цією сіткою в її нерівномірності. Осередок у північного полюса і осередок біля екватора мають зовсім різні форми. Таке несиметричне розбиття вносить великі проблеми, якщо ми хочемо рівномірно розподілити навантаження по пошуковому кластеру.

Читати далі →