Что делать с легаси. Материалы с Badoo PHP Meetup #4
Всем привет!
15 февраля в офисе Badoo прошла очередная встреча PHP-разработчиков, посвященная теме легаси. Целый день мы слушали рассказы об опыте крупных компаний, общались и делились болью.
Получилось рассмотреть проблему с нескольких сторон:
- организация процессов разработки по избавлению от легаси;
- тактика распила легаси-монолита на микросервисы;
- способы организации API, которые позволяют держать под контролем рост устаревшего кода;
- автоматические способы обнаружения «мёртвого» кода;
- а еще попробовали поговорить как рефакторить легаси-код с помощью DDD подходов;
Под катом делюсь видео и слайдами с этой встречи. Конечно, очень много ценного осталось в кулуарах и не вошло в отчет, так что приходите в нашу уютную группу поболтать о тяжелой жизни пэхэпэшника, обсудить доклады или просто за советом :)
«Безболезненная победа над legacy»
Антон Жуков, ManyChat
Основополагающий рассказ о том, как провести рефакторинг legacy-кода без влияния на работу приложения, протестировать функциональность и производительность, а также бесшовно переключиться на новую версию на проде.
«Итерационный подход в борьбе с legacy»
Алексей Коротин, SuperJob
Подход SuperJob — последовательная борьба с устаревшим кодом. Тимлид команды «Платформа» рассказал об API как о способе изолировать плохой код от хорошего.
«Мёртвый код: найти и обезвредить»
Данил Мухаметзянов, Badoo
Проблема, которую мы решали, выглядит так: высокооплачиваемые инженеры постоянно читают мёртвый код. Данил из команды серверной разработки, о других проектах которой мы недавно рассказали. Его история — о том, как мы автоматизируем борьбу с легаси и какие методы применяем, чтобы контролировать его появление.
«Тактика распила PHP-монолита»
Павел Лакосников, Авито
Распил монолита — верный способ найти устаревшие решения в собственном коде. Павел рассказал, как в Авито избавлялись от легаси: выносили словари и другую статику, выделяли интерфейсы, упрощали иерархию наследования и совершенствовали покрытие тестами.
«Рефакторинг PHP-кода с применением DDD»
Виталий Чирков, FunCorp
Несмотря на то, что тема DDD довольно непростая, да и последний доклад — испытание не для каждого, у Виталия здорово получилось на примерах и буквально на пальцах объяснить, как реанимировать устаревший код с использованием паттернов предметно-ориентированного программирования.
Плейлист целиком
Фотографии с митапа лежат в наших группах VK и FB
Анонсы новых событий проще всего получить в Telegram, подписывайтесь.
Спасибо всем, кто поддержал встречу, было здорово!
Лондонская часть нашей серверной команды сильно расширяется. До 1 марта открыт тест, по результатам которого наиболее успешным участникам придет приглашение на собеседование в Москве, а с ним — шанс получить оффер в тот же день и уехать жить в Лондон. Билеты до интервью и релокация за счёт компании.