Николай Пьянников

Java

Местоположение

Проживание: Россия, Санкт-Петербург

Готовность к работе: готов к удаленной работе

Возраст и стаж

Стаж: 6 лет и 3 месяца

Возраст: 26 лет

Контактная информация


Профессиональные навыки


Java • Java spring framework • PostgreSQL • Linux

Опыт работы


Октябрь 2018 —
По наст. время
(1 год)

Banzai.Games

Старший серверный программист
Россия, Москва

Обязанности и достижения

Основные вещи:

Java 8, Smartfox2x, JUnit + Mockito, Teamcity

Кроме этого:

PostgreSQL, Hazelcast, Protobuf, Upsource, ELK stack

Проект: "11x11" (футбольный менеджер для Android и Ios)

Stateful сервер, данные хранятся in-memory в java приложении распределённо (Hazelcast), часть сохраняется в Postgres.

Реализовал:

- Серверную часть поддержки автопродляемых подписок через iTunes и PlayMarket.

- Внутриигровые сезоны: режим, когда каждые N дней сбрасывается рейтинг и выдаются награды за занятые места. Удалось избежать массовой (batch) обработки окончания сезона, окончание сезона не приводит к пику нагрузки.

- Другие менее крупные задачи.

Особенность - большая кодовая база, над которой работало несколько разработчиков за несколько лет.

После несколькоих месяцев оставался единственным серверным разработчиком на проекте (коллеги сменили проект).

Применяемые навыки

Java, Junit, ООП, PostgreSQL, protobuf, Linux
Декабрь 2016 —
Октябрь 2018
(1 год и 11 месяцев)

Carx-Technologies

Server developer
Россия, Краснодар

Обязанности и достижения

Самые частоиспользуемые вещи:

Java 8, Spring, Hibernate, VertX, WebSocket, Smartfox2x, JUnit + Mockito, Teamcity

Кроме этого:

PostgreSQL, DynamoDB, Spark Java, Protobuf

Разработка серверных компонентов, развитие и поддержание кодорвой базы.

Разработка и развитие stateful и stateless REST сервисов.

Разработал распределённый чат сервер (на WebSocket) + систему балансировки нагрузки.

Затем расширил систему для балансировки realtime мультиплеера, обе системы используются в production.

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

Применяемые навыки

Java, Java spring framework, protobuf, Linux
Август 2014 —
Июнь 2016
(1 год и 11 месяцев)

ООО "СЕУСЛАБ"

Инженер-программист
Россия, Пермь

Обязанности и достижения

Разработка поисковой системы на базе Lucene-SolR.

Разработка программных компонентов для управления процессом индексации данных.

Разработка веб-сервиса для обработки поисковых запросов.

Разработка пробных компонентов машинного обучения и анализа данных.

Разработка back-end для приложения smm специалистов seus-target (Java 8, Spring).

Поддержка front-end сервиса seus-target

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

23 млрд. документов и 300 млн. анкет пользователей в поиске.

Масштабируемый поиск по данным ВКонтакте с задеркой появления информации в пределах суток (мой вклад в это - потоковая система индексации с возможностью поиска).

Создана система для построения индекса Luceneс помощью Map-Reduce.

Используемые инструменты: Java 7,8; MySQL; SolR; Tomcat; Servlets; Spring + Boot; Bootstrap (чуть чуть); HBase; Git (Gitlab); Redis;

Во время поддержки front-end использовал: Backbone, JQuery, HTML, CSS

Навыки: ООП, многопоточная обработка, разработка архитектуры приложений.

Применяемые навыки

Java, Java spring framework, Solr, Hadoop
Ноябрь 2012 —
Апрель 2014
(1 год и 6 месяцев)

ЗАО НПЦ "Компьютерные технологии"

Инженер-программист
Россия, Пермь

Обязанности и достижения

Занимался разработкой компонентов системы мониторинга сетей связи в реальном времени: опрос устройств мониторинга (например - счетчиков воды/газа, пожарных сигнализаций), приведение данных нужным форматам, запись данных в БД, управление устройствами, проксирование доступа дополнительных модулей.

В процессе работы освоил:

C#, VS2012, MS SQL + T-Sql, WPF, WCF, Team Foundation Server.

Применяемые навыки

C#, Mssql

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


Сентябрь 2016 —
Июль 2018

Пермский государственный университет

Физический
Россия, Пермь

Специализация и достижения

Магистратура по гидродинамике
Сентябрь 2010 —
Июль 2015

Пермский государственный университет

Физический
Россия, Пермь

Специализация и достижения

Специалитет на кафедре Компьютерных систем и телекоммуникаций


О себе


Недавно выполнял тестовое задание, вот оно на гитхаб (не подошло, потому что позицию закрыли раньше) https://github.com/Norgorn/homework.

Последние два места работы - удалённо и в данный момент рассматриваю только такие варианты.

Было бы интересно поработать с real-time, highload и BigData (хотя и необязательно). Хотелось бы попробовать Java 11 в production. С нетерпением жду fibers в Java (project Loom). Kotlin понравился своей лаконичностью.

Английский: свободно (только с письмом практики мало), ELTS 8.0 (Reading 9.0, Listening 9.0, Speaking 7.0, Writing 6.0), есть сертификат.