Запускаем афишу образовательных курсов на «Моём круге». Читать подробности
Обо мне

До 2001 года был C++ разработчиком (был еще период AutoLisp, такой диалект Lisp в AutoCAD).

С 2001 года не являюсь (официально, по должности) разработчиком ПО, по этой причине практически не знаком с промышленной разработкой (я про CI, Scrum и прочее), не имею опыта работы с фреймворками (исключение - wxPython). Касательно Python - опыта по Web-разработке нет. По Android - только курсы на Coursera, другого "опыта" нет.


Хочу сменить направление карьеры с телекома на ИТ. Готов к удаленной работе или работе в офисе.

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

Сейчас, на работе, соотношение использования мною Python и Java можно, в процентах, записать как 70/30. В последний год все, что пишу и рефакторю, покрываю тестами (проникся).


Считаю себя организованным и ответственным, в данный момент большую часть времени (3 дня из 5) работаю удаленно и нареканий руководства нет.


Уверенный пользователь Windows и Mac OS.


Задачи, которые приходится решать (связанные с написанием программ):

  1. [Python 2, 3] Поддержка программной системы с плагинами (разработана мною же). Система предназначена для формирования текстовых файлов определенного формата. Система содержит также фреймворк/DSL для быстрого написания плагинов и тестов к ним. Взаимодействует с СУБД MySQL. Покрыто тестами.
  2. [Python 2, wxPython] GUI для проведения криптографических операций над фрагментами текстовых файлов и (опционально) изменения формата текстовых файлов. Взаимодействует с двумя СУБД: MySQL и MS SQL
  3. [Python 2, 3] Различные утилиты для конвертации текстовых файлов из одного вида в другой, иногда - с обращением к СУБД.
  4. [Python 3] Утилита разового переноса данных из СУБД MySQL в аналогичную СУБД MS SQL (с проверками целостности)
  5. [Python 2] Утилита переноса данных из SQLite в MS SQL (с проверками целостности)
  6. Есть опыт разработки схемы БД (с триггерами и процедурами) и портирования схемы с MySQL на MS SQL (с портированием, в том числе, триггеров/процедур)
  7. [JVM] Взаимодействие с СУБД MySQL, MS SQL, H2 (in memory DB, только из Clojure), всё через JDBC
  8. [Java, Kotlin, Clojure, Scala] Различные утилиты конвертации и валидации текстовых файлов. Использую Gradle, как систему сборки/управления зависимостями.
  9. [Java, Kotlin] Чтение/запись информации с/на смарткарты (SIM/USIM) (javax.smartcardio)
  10. [Python 2, 3] Чтение/запись информации с/на смарткарты (SIM/USIM) (библиотека pyscard)

На гитхабе:

1. [Python 2] Поддержка MS SQL для peewee ORM

2. [Python 2] Шифрованное поле для peewee ORM

3. [Java] Реализация алгоритма аутентификации Milenage (есть на Maven Central)

4. [Clojure] Отдельная реализация алгоритма аутентификации Milenage (есть на Clojars)

5. [Java] Реализации нескольких Charset, популярных в телекоме. (есть на Maven Central)

6. [Kotlin] DSL для работы со смарт-картами (над javax.smartcardio)


Читаю книги о ремесле. Примеры прочитанного:

1. Programming in Scala. Second Edition. M. Oderski & Co.

2. Learning Reactive Programming with Java 8

3. Beginning Java 8 Language Features

4. Robert Martin - Clean Code - A Handbook of Agile Software Craftsmanship

5. Joshua Bloch - Effective Java (3rd) 

6. Brian Goetz - Java concurrency in practice [сейчас в процессе]

Владею слепым методом печати. Для написания кода пользуюсь IDEA и vim.

Умею относительно связно излагать свои мысли, в т.ч. письменно (мой профиль на Хабре),

Навык деловой переписки прокачан (в том числе на английском языке).

Умею и люблю осваивать новое, готов этим заниматься в свое личное время. Регулярно, по собственной инициативе, прохожу курсы на Coursera, Stepik. Считаю, что в короткий срок смогу освоить необходимую технологию.

Обладаю «Soft Skills», если для решения задачи необходимо коммуницировать с коллегами (работаю в очень крупной компании) - делаю это успешно.

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

Профессиональные навыки
Участие в профессиональных сообществах
Опыт работы
Входит в группу компаний «ВымпелКом Лтд», которая является одним из крупнейших мировых операторов связи
старший эксперт по модулям идентификации абонентов
Декабрь 2001 — По настоящее время (17 лет и 10 месяцев)
производитель программных и программно-аппаратных VPN-решений и средств криптографической защиты информации
Инженер-программист исследовательского отдела
Ноябрь 1999 — Декабрь 2000 (1 год и 2 месяца)

Программирование на C++ (по большей части, MFC)

  • Работал над интерфейсом модуля персонального файервола
  • Разработал плагин для сниффера Network Monitor, умеющий разбирать формат пакетов, которые генерировало ПО компании.
БФТ Декора
Москва
Инженер-программист
Ноябрь 1996 — Ноябрь 1999 (3 года и 1 месяц)
  1. Поддержка пользователей (дизайнеров интерьеров) AucoCAD;
  2. Создание чертежей в AucoCAD (планы помещений, помещения 3D);
  3. Программирование на AutoLISP (библиотека параметрических компонент-металлоконструкций для оформления интерьеров магазинов);
  4. Создание расширений для AutoCAD на С++ (dll), как подработка, во внеслужебное время;
  5. Any Key;
  6. Создание сайта компании (забавно, он даже сейчас доступен по этой ссылке)
Старший лаборант
Январь 1991 — Ноябрь 1996 (5 лет и 11 месяцев)

Программирование С, С++ в рамках работы над местной системой параметрического моделирования

Высшее образование
Московский авиационный технологический институт им. К.Э. Циолковского
Москва
Факультет: Авиатехнологический; 1
Сентябрь 1986—Февраль 1994 (7 лет и 5 месяцев)
Инженер-механик-технолог по производству двигателей летательных аппаратов
Дополнительное образование
Образовательная платформа и конструктор онлайн-курсов
Санкт-Петербург
Разработка WEB-сервиса на Java
Январь 2016—Март 2016 (2 месяца)
Стопроцентное онлайн-обучение от лучших университетов и компаний мира
Programming Mobile Services for Android Handheld Systems: Communication
Май 2015—Июнь 2015 (1 месяц)
Programming Mobile Services for Android Handheld Systems: Concurrency
Апрель 2015—Май 2015 (1 месяц)
Programming Mobile Applications for Android Handheld Systems: Part 2
Март 2015—Апрель 2015 (1 месяц)
Показать еще 2 курса