Обо мне

О себе:  Java/Go-разработчик, знаю Spring Boot, Hibernate, PostgreSQL, Liquibase, RabbitMQ, есть опыт MySQL, MongoDB, Thymeleaf, Webpack, считаю признаком зрелого проекта - наличие автотестов.

В свободное от работы время пишу на Go. Собираю travis'ом.

Go:

echo, dep, viper, packr, rice, Boostport/migration, mockery, dig, fx

Java:

* Spring: Spring Boot, Spring Data JPA, Spring Data Mongo, Spring Rabbit, Spring Testing, Spring Security, Spring Session

JEE: JMS, JPA; JDBC, Hibernate

Databases: MySQL, H2, MongoDB, PostgreSQL, Redis, Hazelcast

MQ: RabbitMQ, Apache Qpid, ActiveMQ

* Servlet containers: Tomcat, Jetty (embedded)

* Application Servers: Wildfly, Glassfish

* OIDC: Keycloak

* Testing frameworks: JUnit, TestNG, Rest Assured, Mockito, Spring Test

* Jmeter;

* build tools: Gradle, Maven;

XML / JSON:

* XStream, JAXB, Jackson, JsonPath, javax.json

* JSF 2.0: PrimeFaces

SCM: git, svn, TFS;

CI: Jenkins, Travis

Технологии и др: TDD, Design Patterns.

Other programming languages:

* Python, Groovy, bash.

IDE: IntelliJ IDEA, Eclipse.

OS: Fedora 21 - 29, Centos 7, Debian 7

Linux: systemd, journald

VM: VMware Workstation, Oracle VM VirtualBox, Microsoft Virtual PC 2007, qemu

Сontainerization: Docker, Docker Compose

Microservices: Consul, Feign, Hystrix

Monitoring: Prometheus, Grafana

Web: Require.js, Backbone.js, Underscore.js, JQuery, Google maps, Webpack, Jasmine, KarmaJs, VueJS

Английский -- на уровне чтения документации

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

Проекты

* Блог nkonev.name https://github.com/nkonev/blog (Websockets, Vuejs, Webpack, Spring Security, Spring Session, Spring Data JPA, Docker swarm, Prometheus, Grafana, PostgreSQL, Redis, RabbitMQ, Elasticsearch)

* Хранилка файлов https://github.com/nkonev/blog-storage (Go, MongoDb, fx, Vuejs, Webpack)

Профессиональные навыки
Участие в профессиональных сообществах
Опыт работы
Один из крупнейших в России частных коммерческих банков, розничный коммерческий банк группы «Открытие»
Эксперт
Август 2017 — По настоящее время (2 года и 5 месяцев)

Интеграция с партнёрами и вендорами, поддержка и рефакторинг микросервисной архитектуры. Удалил тонны вендорского кода, прорефакторил Spring Security часть, покрыл её тестами. "Схлопнул" 5 микросервисов в 1 для упрощения отладки и тестирования. Удалил привязку к вендорскому решению (реверс-инжиниринг с помощью tcpdump). Внедрил тесты с базой с помощью testcontainers. Настроил GC в docker registry. Привел к общему виду механизм обработки исключений (@ExceptionHandler).

Поднял мастер-ноду дженкинса, перенес на нее таски со старой. Поднял gitea для Spring Cloud Config. Удалил gitea. Внедрил Spring Cloud Gateway.

Настроил nexus. Восстанавливал рассыпающийся кластер kubernetes.

Altarix разрабатывает мобильные сервисы и мультиплатформенные мобильные приложения для бизнеса и госсектора
Инженер-программист
Апрель 2015 — Август 2017 (2 года и 5 месяцев)

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

Настроил Jenkins, сделал docker-compose сборки проекта, состоящего из 10 модулей, привёл в порядок gradle-скрипты, объединил эти модули в один репозиторий, js админка собирается gradle-таской gradle-node-plugin;

Внедрил интеграционные автотесты на связке Groovy + Rest Assured, установил это на Jenkins.

Российский разработчик сертифицированного ПО в сфере информационной безопасности
Программист
Август 2014 — Апрель 2015 (9 месяцев)
Обязанности: - Внедрение работы с виртуальными машинами VMware Workstation через ant-vix-tasks в тестовый фреймворк ... и последующий отказ от тасков в пользу vmrun - Расширение функциональности тестового фреймворка для новых сценариев
Высшее образование
Московский государственный институт радиотехники, электроники и автоматики
Москва
Факультет: Вычислительных машин и систем; ВМС
Сентябрь 2010—Июль 2015 (4 года и 10 месяцев)