FunCorp международная компания, специализирующаяся на разработке funtech продуктов. Наш флагманский проект - мобильное приложение iFunny, ориентированное на рынок США.
Технологии: HP 7.3, Symfony 4.3, Kotlin 1.3, Spring Boot 2.1, MongoDB 3.4, SQS, SNS, Redis, PHPUnit, Behat
Моя основная обязанность - обеспечивать взаимодействие бэкенда iFunny (PHP+Symfony) и парсера мемов (Kotlin+Spring Boot).
В игровом департаменте Mail.Ru Group я разработал несколько ключевых микросервисов, перечисленных ниже.
Сервис авторизации:
MySQL, PHP, Laravel, JSON:API
Все игры Mail.ru имеют схожую логику авторизации. Также мы хотели иметь одно место для управления этой логикой. Я разработал сервис, который принимал логин и пароль после того, как пользователь вводил их в игре. Сервис проводил несколько проверок и возвращал токен, если все прошло успешно или ошибку в случае проблем. Основные проверки:
И множество других проверок
Сервис гильдий:
MySQL, RabbitMq, REST API, PHP, Laravel
Почти все игры Mail.ru имеют систему гильдий. Нам нужен был сервис, реализующий взаимодействие гильдийных систем между различными играми. Например, создавая гильдию в Warface, вы получаете guild pack в Conquerors's Blade. Благодаря нашим продюсерам (и мне) в рамках этого сервиса было реализовано несколько сотен кейсов
Сервис логов (аналог sentry):
RabbitMq, Elasticsearch, Kibana, PHP, Laravel
В 4xxi я пришел, имея за плечами большой опыт разработки сложных проектов для крупных международных компаний. Моим первым проектом был консьерж-сервис для французского Mastercard, унаследованный нами от небольшой индусско-французской софтверной компаниии. Я отвечал за backend приложения. За три месяца мы полностью редизайнили API, внедрили очереди, покрыли тестами весь критичный код (для чего пришлось зарефакторить большую его часть) и, конечно, добавили тонну нового функционала. Как только в проекте для Mastercard все устаканилось, мне предложили поработать в самом крупном проекте компании - AdvisorEngine. Это fin-tech проект для крупных финансовых организаций из Нью-Йорка. Большая часть команды располагается в Санкт-петербурге, несколько человек в Аргентине, Испании и весь менеджмент в Нью-Йорке.
В TRG я пришел на должность senior PHP developer. Однако внезапно пришлось взяться за проект на JavaScript. В наш офис в Майами обратился человек с прекрасной бизнес-идеей и нужными связями. Он предложил, используя его связи в страховых компаниях, создать аукцион поддержанных автомобилей, которыми просто забиты склады крупных американских страховщиков. Наша компания хотела попробовать новый для себя способ разработки с помощью JS-фреймворка Meteor, и мне предложили принять участие. Так, после пяти месяцев очень увлекательной разработки, команда, состоящая из PHP-шников, выдала JS-проект autoauctionmall.com, который практически сразу начал зарабатывать очень приличные деньги. Когда активная фаза разработки была завершена, мы подписали договор с Walmart на создание внутренней системы поощрения сотрудников. Это закрытый интернет-магазин, куда имеют доступ только сотрудники Walmart. Внутри сотни тысяч товаров (в основном товары, по тем или иным причинам возвращенные покупателями). В зависимости от многих факторов (должность, выслуга, достижения, местоположение и т.д.) каждый сотрудник видит свою индивидуальную цену на товары. Проект разрабатывался на PHP, я руководил командой разработки, был скрам-мастером, распределял задачи, проводил собеседования и, конечно, много программировал.
Разработка биллинга и пользовательского личного кабинета.
Написание нового функционала и доработка старого, рефакторинг старого кода, покрытие кода unit тестами.
PHP, PostgreSQL, MySQL, JavaScript(JQuery), HTML, CSS, Smarty, PHPUnit, Git