Токарев Олег Юрьевич

Мужчина, 42 года, родился 19 мая 1977

Новосибирск, м. Речной вокзал, не готов к переезду, готов к командировкам

+7 (913) 926-86-17
otokarev@gmail.com — предпочитаемый способ связи
otokarev

Scala developer

Информационные технологии, интернет, телеком
  • Программирование, Разработка

Занятость: стажировка, частичная занятость, проектная работа, полная занятость

График работы: гибкий график, полный день, сменный график, удаленная работа

Опыт работы 18 лет 5 месяцев

Сентябрь 2016по настоящее время
2 года 10 месяцев
Самообучение
Студент
Самообучаюсь в направлении Reactive Programming Scala/Akka/Streams, Cassandra, Elasticsearch, etc

Ищу работу в этом направлении в качестве инженера-программиста.
Удалённо, на полный или не полный день.

Если у вас есть интересное тестовое задание, готов его выполнить!

Предваряя вопросы собеседования: через пять лет (нет, через год-два) вижу себя ведущим специалистом или архитектором в области разработки развесистых web-applications

Из достижений:

В качестве тестового задания написал простую сетевую игру:
- Пользователь цепляется по telnet к серверу
- Сервер находит ему пару
- Сервер начинает обоим генерить случайную цифру
- Кто первый увидел `3` и отреагировал нажатием пробела, тот и победил
Задание выполнено в двух вариантах: на чистых Akka/Actors и на Akka/Streams

Подробнее можно ознакомиться тут: https://github.com/otokarev/datamonsters-testtask

***

В настоящий момент для портфолио разрабатывается приложение, которое:
- Считывает zip-архивы с батчами обновлений неких бизнес-сущностей
- Извлекает из них информацию
- Сохраняет информацию в Cassandra и Elasticsearch
- Позволяет извлекать из Cassandra последнее состояние бизнес-сущности по ключу, либо все изменения этой бизнессущности за определённый промежуток времени

Подробнее можно посмотреть тут: https://github.com/otokarev/xmlarchiveparser-testtask

***

Также имел опыт написания несложного приложения на Play!/AngularJS
Январь 2009Август 2016
7 лет 8 месяцев

Новосибирск,

Информационные технологии, системная интеграция, интернет... Показать еще

Инженер-программист/Системный архитектор
Основной моей функцией является обеспечение стабильного развития флагманского проекта компании Openprovider, а именно одноимённой платформы выполняющей функции доменного регистратора. Кроме доменов клиентам платформы также предлагались сопутствующие товары, такие как: лицензии продуктов компании Parallels, SSL сертификаты, DNS-хостинг и пр.
Openprovider редкий из регистраторов, который поддерживает все новые nGTLD (https://www.openprovider.ru/blog/vozmozhnosti-novyx-gtlds-i-pochemu-v-icann-polzuetsya-uslugami-openprovider/).

К обязанностям можно отнести:
- Подбор и найм технических специалистов
- Обучение персонала
- Ревизия качества кода
- Ревизия и утверждение предлагаемых сотрудниками технических решений
- Изучение новых технологий, с дальнейшим их внедрением

Первые пять лет в компании активно кодировал сам на PHP и отчасти выполнял роль администратора Linux-серверов.


Технологии: PHP, MySQL, Elasticsearch, RabbitMQ, Logstash, Ansible, Docker

Исследования перспективных технологий:
- Docker (деплоймент, автодескаверинг, зачатки CI/CD на базе Jenkins)
- Apache Spark (развёртывание на кластере/ansible, тестовая эксплуатация, написание драйверов на Scala, для миграции данных из/в mysql/kafka/elasticsearch/cassandra)
- Apache Kafka (развёртывание на кластере, тестовая эксплуатация)
- Cassandra (развёртывание на кластера/ansible, тестовая эксплуатация, разработка https://github.com/otokarev/logstash-output-cassandra)
- Consul.io (развёртывание/ansible, супервайзинг внедрения в рамках проекта мониторинга кластера Elasticsearch кластера http://www.slideshare.net/OlegTokarev/how-we-cooked-elasticsearch-consul-haproxy-and-dnsrecursor)
- Apache Storm (развёртывание/puppet, проект не стрельнул, не удалось за адекватное время запинать bolt на php)
Август 2006Июнь 2008
1 год 11 месяцев
Профи.Ком

Новосибирск

Информационные технологии, системная интеграция, интернет... Показать еще

Инженер-программист/Системный архитектор
Участие в разработке стартапа profy.com. Найм, обучение технических специалистов. Ревизия технических решений.

Коротко о стартапе: платформа объединяющая в себе: соцсеть, блог, фидридер, и пр.

Достижения были скорее академические нежели практические:

Одним из таких можно назвать: одностраничное web-приложение, когда в браузер загружался мегабайт зазипованного javascript-кода, который разворачивался и далее функционировал общаясь с бэкэндом посредством json (тогда - 2006/8 ещё не было Angular, и Symfony только рождался). Вторым: система развертывание на несколько серверах хостинга посредством RPM (сейчас для этого есть Ansible и пр, а тогда (2007) был задействована возможность RPM вытягивать по зависимостям другие пакеты и запускать специальные скрипты, которые процессили специального вида XMLник с описанием схемы развёртывания)

Технологии: PHP, MySQL, PostgreSQL, JavaScript (Dojo, Prototype)
Ноябрь 2003Июнь 2006
2 года 8 месяцев

Москва,

Информационные технологии, системная интеграция, интернет... Показать еще

инженер-программист/teamlead
Информационные технологии, системная интеграция, интернет... Показать еще

инженер-программист/teamlead
На всём протяжении работал над проектом HSPcomplete (позже PBAs), а именно:
- Разработка плагинов интеграции с доменными регистрарами
- Разработка плагинов интеграции с платёжными системами
- Рефакторинг модуля отвечающего за процессинг платежей в системе
- Разработка Anti-Fraud Screening системы

Технологии: MySQL, Perl 5.8
Июль 2000Октябрь 2003
3 года 4 месяца
Институт Ядерной Физики СО РАН
Инженер-программист
Разработка и сопровождение ПО системы управления электрон-позитронного колайдера ВЭПП-5 (Институт Ядерной Физики СО РАН, Новосибирск). Это включало в себя разработку и создание графических приложений для работы пользователей, создание модулей для серверов ввода/вывода системы управления для контроля и управления различными устройствами (источники питания, шаговые двигатели и д.р.), bash/Perl-скрипты для поддержания работы серверов ввода/вывода.

Технологии: ANSI C, Linux, Make, Autotools, CAN-bus

Ключевые навыки

Linux
AngularJS
Git
SCALA
Project management
PHP5
Docker
RabbitMQ
Elasticsearch
Ansible
Akka

Обо мне

В связи с достижением субъективного профессионального максимума на последнем месте работы решил зашифтиться, но не down, а в сторону Scala, Akka, JVM и пр.

Примеры кода можно посмотреть здесь:
* Scala/Akka/Streams: https://github.com/otokarev/datamonsters-testtask
* Scala/Playframework: https://github.com/otokarev/my-first-scala-app

Опыт в Scala & Co: не более 2 месяцев. Но пока какого-либо рокетсайнса при переходе на Scala не вижу.

Готов выполнить любое тестовое задание объёмом до 8 часов (8 часов, если бы его выполнял Senior).


**предпочтение удалёнке**

***

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

Наверное эти качества:
* пресловутая нацеленность на результат
* чёткий трэкинг задач во времени (вовремя остановиться тоже важно)
* упёртость в поисках решения, либо подтверждения его отсутствия

(в двух компаниях «неведомой штукой» был массив трудно поддерживаемого кода, который для дальнейшего развития проекта нужно было привести в приличный вид; в насточщий момент такой «штукой» считаю внедрение CI/CD, контейнеризацию всего, запихивание этого всего в облако и дискаверинг сервисов в облаке)

***

Мои убеждения - технические:

- Лучший код - это ненаписанный код
- Лучший интерфейс - это, по возможности, не предоставлять никакого интерфейса
- Если код написан, читателю должно быть понятно, что написано, без документации и переводчика.

Мои убеждения - управление & HR:

- Нанимать нужно самых лучших
- Управление - в первую очередь управление энтузиазмом людей, во вторую - процессами, в третью - самими людьми

***

В меру ретроград.

***

Считаю, что могу самостоятельно, либо с нюбами "прорубить" любую задачу - собрать прототип, вывести в продакшн. Постоянно этим занимаюсь.

Высшее образование

2000
Физический, Физика современных радиоэлектронных технологий

Знание языков

РусскийРодной

АнглийскийC1 — Продвинутый

Гражданство, время в пути до работы

Гражданство: Россия

Разрешение на работу: Россия

Желательное время в пути до работы: Не более полутора часов