Software Developer

Контакты


Контакты доступны после входа на сайт

Описание

О себе

Начал программировать около 9 лет назад. Участвовал в open source проектах во время Google Code-In и в школьных олимпиадах. Через несколько лет начал работать на фрилансе (в свободное от учебы время), в основном небольшие проекты по извлечению и обработке данных с сайтов, автоматизации различных рутинных задач. 3 года назад участвовал в Google Summer of Code в проектах LibreOffice по реверс-инжинирингу и импорту файлов проприетарных форматов. Последние 2 года работал над исследовательским проектом в магистратуре в группе студентов под руководством SAP, разработал платформу для бенчмаркинга алгоритмов обнаружения аномалий.

Всегда занимался самообучением не ограничиваясь только программой вуза: книги, курсы (Coursera, Hexlet), участие в сообществах, разработка своих и open source проектов.

Хобби: программирование, компьютерные игры, кино/сериалы, технологии/компьютерное "железо", путешествия.

Open source

Некоторые из моих последних вкладов в open source проекты (исправление багов, добавление небольших фич):

Недавние личные проекты:

  • Программа для отслеживания изменений на сайтах (например, список товаров в местном онлайн-магазине): периодически загружает страницу с помощью Selenium, получает текст по указанному селектору, если есть изменения, то отправляет diff на почту (через Mailgun). Старался избегать лишних усложнений, чтобы реализовать проект/прототип максимально быстро: Selenium вместо HTTP запросов (универсально для всех сайтов с любым фронтендом, производительность не критична), стандартные CSS/XPath селекторы, консольный интерфейс, конфиг файл. https://github.com/AlexP11223/WebChangeNotifier
  • Клиентские скрипты для онлайн-форума улучшающие UI и добавляющие новые возможности для пользователей (автосохранение черновиков сообщений, хоткеи) и модераторов (шаблоны ответов, Geo IP). https://github.com/AlexP11223/ProgForumRuUserscripts

Наиболее интересные учебные проекты:

Навыки
  • PHP, JavaScript, Python.
  • Реляционные базы данных (MySQL, PostgreSQL, SQLite), ORM (Eloquent, Doctrine).
  • Web backend фреймворки: Laravel, немного Node.js.
  • Frontend: HTML, CSS, JavaScript (включая современные нововведения), Bootstrap, jQuery, ...
  • Автоматическое тестирование (юнит тесты, интеграционные и т.д., в основном с помощью классических xUnit фреймворков типа PHPUnit, PyTest), TDD.
  • Базовое использование Vagrant, Docker.
  • Извлечение данных и автоматизация работы с сайтами с помощью Selenium или HTTP запросов.
  • Опыт работы с Windows и Linux (в основном Ubuntu), и как пользователь/веб-разработчик, и как разработчик приложений для них.
  • Также есть опыт разработки десктопных приложений на С#/.NET, Java/Kotlin, C++, Python. Qt/PySide2, WPF, WinForms, WinApi.

  • Концентрация на цели, выяснении реальных причин ("почему/зачем?"), а не бездумное выполнение задач.

  • Осведомленность о различных инженерных практиках (Agile, XP, TDD, CI, etc.) и желание применять их когда в этом есть смысл.

Опыт


Программист, Фриланс
Январь 2014 - Октябрь 2019

Разработка десктопных и веб приложений. В основном небольшие проекты по извлечению и обработке данных с сайтов, автоматизация различных рутинных задач, разработка системных утилит.

Примеры задач:

  • Извлечение данных с сайта через API (если есть) или парсинг HTML, сохранение в БД или файл, визуализация.
  • Обработка большого числа изображений (вырезать указанные части для превью, изменить размер и т.п.) скриптом на Питоне.
  • Создание системы для резервного копирования дисков, что-то типа упрощенного Acronis True Image с заточенностью под определенную конфигурацию устройств.
  • Видео-киоск для выставки в музее — полноэкранное веб-приложение для устройства с двумя экранами: сенсорный экран для выбора видео, и проектор для воспроизведения видео.
Программист, исследователь, SAP (internship)
Ноябрь 2017 - Июнь 2019

Исследование и оценка алгоритмов обнаружения аномалий в данных. Разработал систему для бенчмаркинга алгоритмов на Java + Python.

Программист, Google Summer of Code 2017, The Document Foundation (LibreOffice)
Май 2017 - Август 2017

Реверс-инжиниринг первых версий бинарного формата файлов QuarkXPress (ПО для издательств) и реализация библиотеки парсинга/импорта.
https://summerofcode.withgoogle.com/archive/2017/projects/5756673784283136/

Программист, Google Summer of Code 2016, The Document Foundation (LibreOffice)
Май 2016 - Август 2016

Реверс-инжиниринг бинарного формата файлов Zoner Draw (векторный графический редактор) и реализация библиотеки парсинга/импорта.
https://summerofcode.withgoogle.com/archive/2016/projects/4529893417156608/

Образование


Магистратура по прикладной информатике, Vytautas Magnus University, Литва
Сентябрь 2017 - Июнь 2019
Бакалавр по прикладной информатике, Vytautas Magnus University, Литва
Сентябрь 2013 - Июнь 2017

О себе
Свободно владею английским языком

Комментарии


Добавить комментарий
Для этого действия нужновойти

Рекомендации

Изменения внесены
4

1) Очень длинные предложения в конце первого абзаца, надо распиливать на большее число. Тяжело читается
2) > разработка своих и open source проектах. <--- проблемы склонения, кое-где еще потерялась минимум одна запятая. Удачи в поисках :)
3) Очень, ОЧЕНЬ много всего по стэку перечислено. Что из этого знаете на каком уровне, в каких проектах использовали, что из этого хотите применять, – неясно. То есть раздел скиллов как бы не выполняет свою функцию для резюме. Потому будь я потенциальным работодателем, я бы вообще не поняла, что вы умеете и хотите от жизни с таким набором.
4) Городская олимпиада по информатике это, возможно, не самое важное 7 лет спустя. Я бы убрала
5) Для такой кучи фриланса и опенсорса как-то не хватает конкретики. Это, получается, основа вашего опыта, – и глядя в резюме трудно переварить, в чем он собственно заключается. Задачи на фрилансе так вообще максимально невнятно описаны. Короче, ищущий исполнителя работодатель хочет посмотреть в резюме и увидеть опыт, перекликающийся с его задачами. Здесь он не увидит ничего конкретного, а значит ничего пересекающегося.


Добавить комментарий/ссылку на вакансию
Для этого действия нужновойти
Войдите, чтобы предложить вакансию кандидату или оставить комментарий
Последние ответы
Рекомендация 0001
Отличный тестировщик! Рекомендую!
Это тестовая рекомендация не воспринимай всерьёз
Это резюме выглядит впечатляюще и информативно. Кандидат умеет описывать свой опыт и пр...
Кандидат имеет некоторый опыт в области тестирования и обладает базовыми навыками работ...
Извините, но ваше резюме содержит только ссылку на профиль GitHub и адрес электронной п...
Это резюме содержит множество детальной информации о вашем образовании, опыте работы и ...
Это резюме содержит много информации о вашем опыте работы и образовании, но оно может б...
Это резюме имеет некоторые сильные стороны, такие как: Хорошо сформулированный профес...
Это резюме не соответствует стандартам и не предоставляет достаточно информации о канди...