Скидка на вакансию
Скидка на первую вакансию
Акция до 22 декабря
Шерали Абиркулов (abirkulov), 29 лет, Россия, МоскваШерали Абиркулов (abirkulov), 29 лет, Россия, Москва

Шерали Абиркулов

PHP DeveloperБэкенд разработчикСредний (Middle)
От 260 000 ₽Рассмотрю предложения

Контакты

Войти
Возраст: 29 лет
Опыт работы: 5 лет и 4 месяца
Регистрация: 17.01.2018
Последний визит: 2 дня назад
Гражданство: Россия
Местоположение: Россия, Москва
Дополнительно: готов к удаленной работе
Знание языков:

Обо мне

Контакты:
+7 (999) 837-41-71
tg @abirkulov_s

    Бэкенд-разработчик. Работаю удаленно.
    С чем работаю: PHP 7/8, Laravel, JavaScript/Vue.js, OS Linux, Docker.

    Попасть в it хотел еще в колледже. В целом, я и поступал на программиста. Там и увлекся веб-разработкой. Все началось с такого мероприятия как World Skills.

    Попросили принять участие в компетенции веб-дизайн, куда входило 3 задания:

    • Нарисовать psd шаблон в фотошопе (да, тогда еще не было никаких фигм и прочих приблуд)
    • Сверстать адаптивную верстку (слава Богу, тогда уже был flex-box, иначе я бы умер)
    • Добавить к верстке интерактивности с помощью JavaScript (Господи, храни jQuery!).

    Далее активно погрузился в бэкенд. На 4-м курсе в качестве дипломного проекта написал веб-сервис для преподов, который предоставлял функционал учета успеваемости студентов, ведения расписания и т.д, в общем, электронный журнал преподавателя. Преподам понравилось. Особенно выгрузка по успеваемости в excel. )

    Навыки

    PHP
    Laravel
    JavaScript
    Vue.js
    MySQL
    Docker
    RabbitMQ
    Git
    Linux

    Опыт работы

    • Образовательная платформа
      МоскваОт 1000 до 5000 сотрудников
      Бэкенд разработчик (Средний)PHP-разработчик
      Март 2019 — Июнь 2024 (5 лет и 4 месяца)

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

      Интересные фичи, которые приходилось реализовывать:

      • Развертывание проекта с помощью Docker.
      • Реализация структуры данных, позволяющая хранить данные без необходимости создавать новые таблицы в базе (типа eav).
      • Реализация функционала по генерации изображений для всех типов устройств.
      • Интеграция сервиса по генерации изображений для всех типов устройств. Изначально, данный функционал был на самом проекте, но потом для этого написали отдельный сервис, который можно было подружить с другими проектами посредством библиотеки.
      • Реализовал непрерывную локализацию. На нашей стороне использовался сервис для локализации Lokalis, который перестал работать в России. Появилась необходимость заменить его альтернативой. После рисерча интегрировал сервис Weblate c нашим репозиторием в GitLab, после чего можно было спокойно добавлять и редактировать файлы локализации без кода через админку Weblate.
      • Редиректы с лендинга на лендинг.
      • Оптимизация кэширования. Вместо кэширование всего ответа, реализовал кэширование самих данных. Все данные перенесли в DTO объекты, чтобы не хранить модели, которые весят прилично, а их было много. Так же это дало преимущество в управлении данными в шаблоне (да, вьюхи отдавались бэком blade-шаблонами) 
      • Генерация opengraph изображений посредством php. Вначале был реализован вариант со скриншотом верстки страницы с помощью headless браузера через nodejs. Но данный вариант не всегда срабатывал из-за потребления большого количества озу + это занимало много времени. Стандартная графика в php все сильно облегчила, и сама генерация opengraph стала работать мгновенно, не занимая много памяти.
      • Немного поработал с процессами. Был момент, когда нужно было перегенерировать большое количество изображений. Написал cli-команду, в рамках которой количество файлов было разделено на чанки и на каждый чанк создавался процесс, который выполнял выше описанную заадчу, таким образом скорость выполнения генерации изображений увеличивалась кратно, так как процессы работали параллельно.

      Помимо всего прочего, конечно же, писал много тестов в PHPUnit, делал ревью кода других разработчиков. В целом, можно много еще чего написать, но думаю, не стоит, так как читать столько текста будет не очень комфортно )

      PHPLaravelJavaScriptVue.jsGitDockerMySQLRabbitMQ

    Дополнительное образование

    • Среднее профессиональное образование. Ликино-Дулевский политехнический колледж (в прошлом МОКИТЭУ).

      Программирование в компьютерных системах
      Сентябрь 2012 — Июнь 2016 (3 года и 9 месяцев)

      На 3-м курсе, в рамках написания курсовой работы разработал небольшой интернет-магазин.

      На 4-м курсе в рамках написания дипломного проекта разработал веб-приложения для ведения успеваемости и посещаемости студентов в колледже.

      При разработке обоих проектов были задействованы такие языки программирования как PHP и JavaScript. Так же, для хранения данных была использована СУБД MySQL.

      PHPJavaScriptMySQLGit