upaggeupagge

Марк Стручков

Senior Java DeveloperБэкенд разработчикВедущий (Lead)
От 400 000 ₽Не ищу работу
Возраст: 26 лет
Опыт работы: 3 года и 10 месяцев
Регистрация: 25.09.2019
Последний визит: 2 недели назад
Местоположение: Россия, Рязань
Дополнительно: готов к удаленной работе
Профессиональные навыки: JavaQuarkusSpring BootApache KafkaHibernateGraphQLWebRTCDockerWebSocketsRedis
Войдите, чтобы посмотреть контакты пользователя

Обо мне

Hi 👋  I'm Struchkov Mark

🤪 Кто я? · ✏️ B.log · ✍️ DevNotes · 🌱 GitHub


Работаю в T1 Group на должности Senior Java Developer.

В свободное время пишу статьи для новичков в свой блог о разработке на Java. Который посещают более 9500 уникальных пользователей в месяц.

Помимо основной работы являюсь наставником на курсе Java в Яндекс.Практикум. Так сказать помогаю людям вкатываться в IT 🙃

Также разрабатываю парочку пет-проектов 💩:

  • uBlogger! — 🌟240🌟 — шаблон для генератора статических сайтов HUGO.
  • Godfather-Bots — комплекс бибилиотек, на основе которых можно создавать свои библиотеки для создания ботов под различные соцсети.
  • GitLab Notify — 🌟30🌟— бот для Telegram, созданный на основе Godfather-Bots. Позволяет получать уведомления от GitLab в Telegram.
  • Bitbucket Notify — аналогичный бот для Bitbucket. Архивный проект.

Участие в профсообществах

Опыт работы

  • Информационные технологии и услуги
    От 1000 до 5000 сотрудников
    Architect / TeamLead
    Март 2022 — По настоящее время (10 месяцев)

    T1 CRM

    Архитектура проекта: Микросервисная

    Это CRM-система в классическом её виде: лиды, воронки, сделки. Я со своей командой занимаюсь сервисами коммуникации.

    На этом проекте я тимлид и техлид небольшой команды. Мы разработали и поддерживаем 10+ микросервисов, которые отвечают за коммуникации между пользователями и лидами.

    Также моя команда разрабатывала Telegram бота для работы с CRM системой: просматривайте сделки системы, договора, заметки и прочую информацию прямо в Telegram. Также быстро заводите сделки через этого бота. И получать уведомления от системы в мессенджер.

    Senior Java Developer
    Октябрь 2021 — Март 2022 (6 месяцев)

    Bug Tracking System

    Архитектура проекта: Микросервисная

    Система для заведения ошибок в других проектах компании. Функционал похож на Jira.

    На этом проекте я был недолго, помогал начать разработку. Моей задачей было создать сервис, который позволит: заводить задачи, назначать ответственных и так далее.

    Middle Java Developer
    Февраль 2020 — Октябрь 2021 (1 год и 9 месяцев)

    Маркетинговая CRM-система

    Упоминать название заказчика не могу, они до сих пор не согласовали пресс-релиз 😡 В итоге упоминать их нельзя, но это о-о-о-очень известный театр 😉

    Архитектура: многомодульный монолит с отдельным сервисом авторизации

    Система позволяет сегментировать клиентов на основе различных сложных фильтров. После чего проводить email рассылки через Microsoft Exchange. Дополнительно CRM позволяет реализовать программу лояльности c начислением кешбэка и присвоением различных ачивок.

    На этот проект я попал уже в должности Middle. Проект мы довели до логического завершения. Стабильно работает без вмешательства команды разработки уже более 6 месяцев. На этом проекте я впервые примерил на себе должность тимлида 💪😎

    Интересные задачи, которые решал:

    • Активно участвовал в проработке архитектуры системы.
    • Единолично разрабатывал OAuth 2.0 SSO сервис на основе Spring. В качестве хранилища пользователей интегрировался с внешним LDAP.
    • Внедрял собственную opensource библиотеку, реализующую контроль доступа по типу ABAC.
    • Разрабатывал сервис уведомлений пользователей на разные события в системе. Внешние уведомления по email и/или Telegram.
    • Создавал системы фильтрации при помощи Elastic Search, Criteria API, JOOQ.
    • Для SSO между CRM и существующей системой на Lifray дорабатывал open source плагин для liferay.
    • Разрабатывал сервис хранения файлов на основе MinIO S3.
    • DevOps:
      • Переносил многокомпонентный проект в Docker Compose.
      • Настраивал Bitbucket Server, TeamCity и их интеграцию с нуля.
      • Настраивал Nexus Sonatype для корпоративных нужд.
      • Настраивал непрерывную интеграцию для всех контуров при помощи Gitlab CI.
    Junior Java Developer
    Июнь 2019 — Февраль 2020 (9 месяцев)

    Витрина KomissiON

    Архитектура проекта: монолитная
    Сайт проекта: https://komission.vtb.ru

    Это маркетплейс залогового имущества ВТБ. Кто-то берет кредит, в залог оставляет лодку, или дом, или завод. Потом кредит не выплачивает. Залоговое имущество отходит к ВТБ. Для банка это непрофильный актив. Его нужно реализовать и получить деньги. KomissiON это витрина таких активов.

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

    Интересные задачи, которые довелось решать:

    • Моей основной задачей была разработка системы фильтрации с использованием ElasticSearch.
  • Обучаем будущих веб-разработчиков, аналитиков, дизайнеров и других востребованных интернет-специалистов
    От 10 до 100 сотрудников
    Наставник на курсе Java
    Ноябрь 2021 — По настоящее время (1 год и 2 месяца)

    В свободное от основной работы время помогаю студентам Яндекс.Практикума вкатываться в IT на курсе Java. Не столько ради денег, сколько прокачки софт-скилов.

    Стоял у истоков появления курса Java, то есть был одним из первых наставников. Активно влиял на изменение курса и поиск неточностей.

    В мои обязанности входит:

    • Отвечать на технические вопросы студентов в Slack.
    • Проводить каждые 2 недели Q&A сессии. На них мы со студентами в Zoom разбираемся со сложностями, с которыми они столкнулись.
    • Каждый месяц провожу Hard-Skill вебинар для всех студентов когорты. Это вебинары на какую-то конкретную тему, в отличие от Q&A сессии.
    JavaGitООПSpring BootHibernateDockerSQLPostgreSQL
  • Тинькофф делает жизнь 15 миллионов клиентов проще и удобнее каждый день
    РязаньБолее 5000 сотрудников
    Стажер
    Февраль 2019 — Апрель 2019 (3 месяца)

    Стажировка проходила на боевой задаче: необходимо было с нуля реализовать генерацию финансовых отчетов с корректировками для руководителей отделов "Тинькофф Центр Разработок".

    О своем участии

    • Настроил JWT токен авторизацию с помощью Spring Security и LDAP.
    • Реализовал динамическую генерацию отчета с использованием JasperReports.
    • Настроил доступ к двум разным БД. К одной с помощью Hibernate, к другой с помощь MyBatis.

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

  • РГРТУ

    Рязанский государственный радиотехнический университет
    Вычислительной техники
    Сентябрь 2014 — Июнь 2019 (4 года и 9 месяцев)

    Информатика и вычислительная техника

    Тема ВКР: Обработка запросов клиентов организации через социальные сети

    Дополнительно: [Презентация ВКР]

    На первом курсе собрал команду для разработки программ на заказ. Создал интернет-магазин. Моя команда оказывала помощь в разработке для студентов. На данный момент ресурс не функционирует, но можно посмотреть архивную версию 🙃

Дополнительное образование