Николай Н. Java разработчик, Senior

ID 17345
НН
Николай Н.
Мужчина
Россия, Ижевск, UTC+4
Ставка
4 238,77 Р/час
вкл. НДС 5% (157.14 Р)
Специалист доступен с 13 июня 2025 г.

Добавьте подходящих специалистов в список и оформите заявку для предварительного бронирования времени специалистов. После оформления заявки ваш персональный менеджер организует прохождение всех необходимых проверок с вами и каждым кандидатом из заявки. Специалист привлекается к проекту только после окончательного подтверждения его выхода с вашей стороны.

Подробнее
О специалисте
Специализация
Java разработчик
Грейд
Senior
Навыки
ActiveMQ
Ant
Apache Kafka
Apache Tomcat
app
AWS
checkstyle
cloud
Cognito
Confluence
core
Couchbase
Cypress
Data
DataStore
Docker
Docker Compose
Git
GitHub
Google Cloud Platform
Gradle
Hibernate
IAM
IntelliJ IDEA
Java
Java 8
JDBC
Jenkins
Jest
Jira
JMS
JPA
JSP
JUnit
JWT
Kubernetes
Linux
Liquibase
Lokalise
Maven
Mockito
MS Windows
MVC
MySQL
MySQL Workbench
Netty
Nginx
Oracle Database
PostgreSQL
Postman
Reactor
Redis
Redmine
REST
RestTemplate
S3
Selenium
Servlets
SNS
Spring
Spring Boot
Storage
Swagger
WebFlux
WebSockets
jdbctemplate
Java 11
Security
Web
Kafka
JavaScript
CI/CD
Отрасли
E-commerce & Retail
EdTech
Hardware
Urban technology
Главное о специалисте
5,5 лет опыта разработки программного обеспечения на Java. Опыт разработки приложений с использованием Java, Spring, Spring Boot и RDBMS. Опыт автоматизации тестирования, WebSockets. Имею опыт работы с AWS и Google Cloud Platform.
Проекты   (4 года 9 месяцев)
Platform V Asynchronous Tasks
Роль
Java разработчик
Обязанности
Сервис предназначен для регистрации заданий с целью их отложенного выполнения, а также выполнения заданий по расписанию. За общую функциональность сервиса отвечают следующие компоненты: ● Модуль регистрации заданий; ● Модуль регистрации конфигураций заданий; ● Перепланировщик - по расписанию вычищает из базы задания в статусе error и перерегистрирует их; ● Модуль управления конфигурацией - обеспечивающий механизмы получения всей информации по заданиям и конфигурациям, а также операции редактирования, перепланирования и т.д. Что было сделано Моими основными обязанностями были: ● Обновление версий зависимостей и устранение уязвимостей ● Решение задач по модификацию существующего кода и исправление дефектов ● Реализация новой функциональности в соответствие с новыми требованиями. В частности, частью крупного релиза был реализован уход от механизма, в рамках которого данные хранились только в БД сервиса и восстановление данных происходило из БД блока репликации. Сторонние сервисы предоставили новое хранилище, взаимодействие с которым происходит через соответствующее API. Теперь все данные от клиентов, которые регистрирует сервис управления задачами, реплицируются в это хранилище через предоставленный REST API и восстановление данных, в случае утраты таковых, будет происходить через него. В рамках данных изменений мной были внесены изменения в логику модулей системы.
Стек специалиста на проекте
jdbctemplate, Liquibase, Java, JUnit, Docker, ActiveMQ, Maven, Oracle Database, Spring Boot, PostgreSQL, Kubernetes, Apache Kafka
Отрасль проекта
Urban technology
Период работы
Сентябрь 2023 - Октябрь 2023  (2 месяца)
Mark & Find - платформа для добавления организаций на карту (marknfind.com)
Роль
Java разработчик
Обязанности
Приложение предназначено для разного рода организаций со схожими интересами, которые могут добавить себя в виде маркера на карту. При создании маркера организация загружает логотип, описывает свой вид деятельности и оставляет контакты. Поставить маркер может только зарегистрированный пользователь, а просматривать информацию может каждый. Администрирование выложенной информации происходит в ручную владельцами сайта. Админы приложения оповещаются по почте о добавлении и редактировании маркеров для модерации контента. Есть Telegram бот для оповещения участников группы о добавлении новой организации на карту. Вся инфраструктура развернута в Google Cloud Platform. Фронтендом является SPA (Single Page Application) с версткой под десктопы и мобильные приложения. Также есть отдельное SPA приложение для администраторов. Взаимодействие с серверной частью происходит через REST API. Авторизация в приложение возможна как по логин-паролю, так и с помощью oAuth2.0 через Google. Реактовскому приложению выдаются пара access и refresh JWT токенов. Инстансы приложений полностью stateless. Что было сделано Основными обязанностями являлись проработка архитектуры серверной части будущего приложения, реализация микросервисов и их развертывание в инфраструктуре Google, а также настройка своего домена для приложения и почты. ● имплементация REST API ● создание Telegram-бота, работа с Telegram Bot API ● создание сервиса smtp для рассылки почты ● создание PubSub топиков и подписок, настройка фильтрации ● работа с Datastore ● работа с Cloud Storage ● имплементация авторизации на JWT через Google-авторизацию и логин-пароль Я работал над созданием “с нуля” микросервисов, которые хранили данные о пользователях и организациях в Datastore. Картинки логотипов и профилей пользователей хранились в Cloud Storage. Написал 3 микросервиса. Один являлся REST API для реактовского приложения, второй был Telegram-ботом, который оповещает участников чата о добавлении новой организации на карту, 3-й микросервис предназначен для почтовой рассылки админам и простым пользователям о разного рода событиях. Все микросервисы развернуты в App Engine и Google сам занимается автоскейлингом в зависимости от нагрузки. Межсервисное взаимодействие асинхронное, события отправляются в топики PubSub. PupSub сам оповещает своих слушателей вызовом Rest-эндпоинтов. Для этого нужно создать специальный эндпоинт-вебхук и прописать его в Pubsub. При отсутствии нагрузки на сервисы в App Engine, все инстансы останавливаются, что позволяет снизить оплату за приложение.
Стек специалиста на проекте
DataStore, core, app, Data, Google Cloud Platform, Nginx, JWT, cloud, Security, Storage, IAM, Web, Hibernate, Java 11, Maven, Spring, Spring Boot, CI/CD
Отрасль проекта
Urban technology
Период работы
Ноябрь 2022 - Сентябрь 2023  (11 месяцев)
Инструменты для системы управления обучением
Роль
Java разработчик
Обязанности
Данный проект является набором Инструментов для LMS. Приложения для дистанционного обучения студентов. При помощи протокола LTI, инструменты были интегрированы с различными LMS. Информация о прогрессе студента хранилась в наших базах и в дальнейшем отправлялась в LMS для синхронизации данных. Существует большое количество веб приложений (9 приложений), каждое из которых является отдельным LTI инструментом для LMS и один проект с общими UI компонентами для этих приложений. Часть приложений предназначена для инструкторов, в которых они могут создавать задания (т.н. Assignments), назначать их студентам и отслеживать студенческий прогресс. Часть для студентов, где студенты могут отвечать на вопросы и получать за это баллы. Также существует контент команда, которая создает продукты и вопросы. Они также имеют свои веб и десктоп приложения. Каждое веб приложение покрыто unit тестами, написанными на Jest. Для автоматизации тестирования, написаны cypress тесты. Бекенд написан с использованием микро сервисной архитектуры. Сервисы написаны на Java 8 с использованием фреймворка Spring. Общение с микросервисами происходит через Rest API. Есть swagger документация. Данные хранятся в базах данных Couchbase, Postgresql, Mysql. Часть микросервисов хранятся в одном репозитории и деплоятся в одном томкате, часть являются отдельными spring boot приложениями. Для поддержки чистоты кода используется Checkstyle. Весь код покрыт юнит тестами. Существует также отдельный проект для автоматизации тестирования. Он содержит API тесты написанные на Rest Assured и selenium тесты для интеграционного тестирования бэкенда и фронтенда в связке. Что было сделано Основными обязанностями было написание веб приложений и реализация микро сервисов для них на бекенде (реализация нового и улучшение существующего функционала): ● написание swagger документации и реализация Rest API ● написание сервисного слоя ● написание запросов в базу данных ● имплементация кэширования данных в Redis для уменьшения нагрузки на Couchbase ● работа над созданием UI компонентов на React и работа с данными в хранилище с помощью Redux ● написание юнит и авто тестов ● фикс багов ● оптимизация работы сервисов
Стек специалиста на проекте
Selenium, JUnit, Spring Boot, Maven, Swagger, Kafka, Java 8, Couchbase, Redis, checkstyle
Отрасль проекта
EdTech
Период работы
Октябрь 2020 - Ноябрь 2022  (2 года 2 месяца)
Формат работы
Тип занятости
Фулл-тайм
Формат работы
Удаленно
Командировки
Не готов
Релокация
Не готов
Готов работать на зарубежных проектах
Нет
Образование
Высшее
Учебное заведение
Ижевский Государственный Технический Институт, г. Ижевск
Специальность
Программная инженерия, Бакалавр
Завершение учебы
2015 г.

Похожие специалисты

Недавно просмотренные специалисты

E-commerce & Retail • FinTech & Banking • Information Security • Realty & Constructoring
НВ
Николай В.
Кострома
C++ разработчик
Senior
3 082,74 Р/час
C#
C++
C++17
C/C++
MS Windows
code
Space
Git
Linux
Nginx
+34

Технические навыки: • C++ стандарты 11-20, STL, Boost, curl, OpenSSL, Qt, – опыт работы более 10 лет • Знания языков Python, JavaScript, SQL, C#, x86 ASM - достаточные для работы над небольшими/средними проектами • Инструменты разработки: MSVC 2017-2022, Visual Studio Code, SVN/Git, CMake/Bazel • Операционные системы Windows/Linux x86/64. Опыт разработки кроссплатформенного кода • Работа с сетевым кодом, в частности на asio. Профессиональные навыки и умения: • Хорошие знания в области алгоритмов и структур данных. Опыт решения «олимпиадных» задач. Имеется профиль на hackerrank.com • Знание архитектуры x86/x64. Опыт профилирования и оптимизации на уровне ассемблерных команд. • Углублённые знания математики, криптографии. • Опыт работы с биржевыми данными, знаком с фондовым рынком. Непосредственно работал с криптовалютными биржами. • Понимание принципов работы blockchain и смартконтрактов.

Подробнее
BioTech, Pharma, Health care & Sports • E-commerce & Retail • LifeStyle
ЯМ
Ярослав М.
Ульяновск
PHP разработчик
Senior
3 596,53 Р/час
Redmine
MariaDB
PHP
GitLab
XDebug
Postman
Yarn
WebSockets
Sphinx
SOLID
+65

менторство младших разработчиков; проводил codereview в команде; проектирование архитектуры работал с чистым SQL на уровне продвинутых запросов (оконные функции, условные операторы выбора и т.д.); опыт работы с UNIX-системами на высоком уровне; развитые коммуникативные навыки; быть ответственным в команде за планирование и декомпозиции задач работа в режиме многозадачности способность к обучению и развитию оценка поставленные задачи в story point и работа в команде по методологии Agile; понимание основных принципов SOLID, KISS, DRY знание основных паттернов проектирования, умение их применять опыт работы с брокерами сообщений, понимание принципов их работы опыт работы с многопоточностью и асинхронностью опыт настройки, понимание принципов работы CI/CD опыт проектирования REST, SOAP взаимодействия систем руководство командой разработки в роли тимлида

Подробнее