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) Для такой кучи фриланса и опенсорса как-то не хватает конкретики. Это, получается, основа вашего опыта, – и глядя в резюме трудно переварить, в чем он собственно заключается. Задачи на фрилансе так вообще максимально невнятно описаны. Короче, ищущий исполнителя работодатель хочет посмотреть в резюме и увидеть опыт, перекликающийся с его задачами. Здесь он не увидит ничего конкретного, а значит ничего пересекающегося.


Добавить комментарий/ссылку на вакансию
Для этого действия нужновойти
Войдите, чтобы предложить вакансию кандидату или оставить комментарий
Последние ответы
Это резюме содержит много информации, но есть несколько аспектов, которые можно улучшит...
Александр, привет. Отличное резюме, содержательное и четкое. Успехов тебе в IT!
Это резюме содержит много информации, но есть несколько моментов, которые можно улучшит...
Привет, Андрей! Давай доработаем резюме по следующим блокам: 1. Имя и фамилию укажи, по...
Это резюме имеет хороший объем информации о вашем опыте работы и образовании. Однако, е...
Это резюме содержит много информации о предыдущем опыте работы и образовании, но есть н...
The resume provides a detailed overview of the candidate's experience, skills, project...
Это резюме содержит подробную информацию о навыках, проектах и опыте работы кандидата. ...
Это резюме выглядит впечатляющим и информативным. Здесь есть много полезной информации ...
Это резюме содержит много информации, но есть несколько моментов, которые можно улучшит...