Для открытия контактов резюме необходимо приобрести доступ к базе
Не указана
Гражданство
Россия
Тип занятости
Полная занятость
Мужчина, 23 года, родился 15 января 2002
Город: Москва
Опыт работы
7 лет 6 месяцев
Mitgo
Backend Developer
С 01.12.2023 по настоящее время (1 год 2 месяца)
Компания Mitgo, проект Convert Social ...
Mitgo
Backend Developer
С 01.12.2023 по настоящее время (1 год 2 месяца)
Компания Mitgo, проект Convert Social ...
StormWall
Backend Developer
С 01.06.2021 по 01.12.2023 (2 года 6 месяцев)
Очень сложно кратко описать возможности и цель проекта. Компания занимается предоставлением услуг защиты сети (L3/L4) и вебсайтов (L7) от DDoS атак (Cybersecurity-as-a-Service). Разрабатываем White Label (см. вики) проект, постепенный переход от старых сервисов и систем к новым, написанным нами с нуля. Помимо разработки есть опыт проведения технических собеседований кандидатов на Junior+ позиции Проект за 2 года написан с полного нуля (буквально от npm init) до релиза для некоторых наиболее крупных партнеров и клиентов. Архитектура не микросервисная, но и не монолит. Каждый сервис обращается строго только в свою бд (PostgreSQL / clickhouse) и имеет строго одну зону ответственности. Всего около 25 сервисов, ≈3-60 эндпоинтов в каждом. Общаются где-то по http, где-то по amqp (RabbitMQ). Для каждого настроен swagger. Примеры ответственности сервисов: хук менеджер, оркестратор, сокет менеджер, бфф, [сервис] клиентов, L3/L7 статистики, синхронизации и т.п. ℹ️ Команда: Работаем по Scrum (наверное😁), вместо спринтов - роадмапы по месяцам и кварталам. * 3 Постоянных бекендера (я в т.ч.) с самого начала * 1-2 Меняющихся фронта, за всё время было ≈6 различных фронтов, начинали с React, перешли на Angular. * Проджект менеджер, дизайнер, QA, DevOps ℹ️ Бекенд сервисы обслуживают следующих клиентов: * Личный кабинет партнера * Личный кабинет клиента партнера (с брендированием самого партнера, на домене партнера, без упоминания StormWall) * Личный кабинет прямого клиента компании StormWall ("старый" личный кабинет) * Публичное API для клиентской интеграции (с документацией) * Бекофис компании (центр управления и мониторинга для noc team и support team, различные инструменты для sales team и marketing team). ℹ️ Достигнутые результаты: * Переезд "старого" лк на наши новые сервисы * Релиз двух новых личных кабинетов, общающихся с нашими сервисами * Новые сервисы по сравнению со старыми более быстрые, легкомасштабируемые (изначально проектировались под этом), оптимизированы по части хранения данных и скорости чтения (п.5). Рекордное ускорение чтения бд: 56сек ->> 700мс. * Приблизили метрики и статистики в личном кабинете к realtime. Раньше отставание относительно Сишных анализаторов-источников было около 300сек, сейчас от 0 до 120 сек. Теперь клиент практически в realtime может смотреть подробную статистику по трафику на сеть/вебсайт, в том числе во время активной DDoS-атаки. * Оптимизация Clickhouse таблиц. Терабайтные таблички со статистиками заменены на десяти- и сто-гигабайтные, при этом теперь хранится больше полезных данных и метрик, ускорено время чтения бд (и время ответа бекенда) благодаря семплированию метрик по s10, m1, m5, h1 семплам с различной глубиной хранения и отфильтровыванию+кешированию бизнес-критичных метрик для бесконечного хранения. Теперь клиент может открыть данные по атаке, произошедшей несколько лет назад и увидеть все детали (ранее из-за большого объёма эти метрики удалялись спустя полгода). * Благодаря п.5 расширены аналитические возможности для sales team. Уменьшено количество инцидентов, когда выставленный клиенту счет с указанием потреблённого трафика расходился с данными с оборудования самого клиента (типа Zabbix). Полностью исключен ранее возможный вариант, когда клиент под конец биллингуемого периода меняет конфигурацию защиты и пропадает часть трафика, соответственно уменьшается итоговый счет за услугу. * Благодаря п.5 расширены аналитические возможности для marketing team, увеличено количество публикаций аналитиков StormWall в прессе (lenta, tass, cnews, vedomosti, securitymedia). ℹ️ Стек и прочий опыт проекта: * Опыт собеседования backend разработчиков (Из мною проведенных ≈7 собесов прошел только один человек, который уже больше года успешно работает в компании). * PostgreSQL (Так же опыт работы с inet типами) * Clickhouse (Запросы к терабайтным табличкам с миллиардами строк и десятками джоинов или CTE-expressions, работа с *MergeTree движками, Materialized Views, опыт оптимизации запросов) * TypeORM (для запросов с множеством relation или контроля миграций, около 90% всех запросов пишутся на чистом sql). * MySQL (MariaDB, raw sql) * Redis (сейчас как хранилище различных session-подобных данных, но по началу использовали как брокер сообщений) * RabbitMQ (≈30 различных очередей + reserve queues) * Телеграм бот на Telegraf * S3 (minio) * Опыт разбора, небольших доработок и интеграции с легаси-микросервисами на Moleculer.JS и HAPI * Опыт работы со стримами и библиотекой event-stream (Много где данные переносятся стримами nest<->nest, nest<->pg, nest<->mysql, nest<->clickhouse) * Опыт поиска и оптимизации узкого места (bottleneck) в процессах, затрагивающих несколько сервисов * Опыт работы по строгому Git-flow Infrastructure: Gitlab CI, Kubernetes, Zabbix, Graylog (ранее был ELK), * Пока не было выделенного DevOps, своими руками занимались настройкой CI/CD на minikube, werf, helm charts
Аптека 149
Backend NestJS Developer
С 01.05.2021 по 01.06.2023 (2 года 1 месяц)
(На самом деле дата начала - ноябрь 2021. Не хочу чтобы эта позиция залезала на StormWall) Проектная работа. Связана с университетом. REST API (Nest.JS + PG) для мобильных приложений (ios+android) и админки. * Мобилки - просмотр каталога, аптек, наличие товара, оформление заказа и т.п. * Админка - управление сотрудниками, заказами, картинками для мобильного приложения (этакая мини-CMS), просмотр статистики. * Телеграм бот для уведомлений о заказах. * Итеграция с внешними API: система "ЮНИКО" (автоматизация и интеграция для фармацевтического бизнеса) и SMS сервис (smsc.ru) для авторизации по SMS. * Так же настройка ci/cd для бека и фронта (React), настройка nginx, ssl. * Node.JS, Nest.JS, PostgreSQL, TypeORM, Telegraf * Gitlab CI, Nginx
Индивидуальное предпринимательство / частная практика / фриланс
NodeJS backend developer
С 01.05.2021 по 01.06.2021 (1 месяц)
Переписывание + рефакторинг сервера такси с JS на TS. Команда из 3х человек. Реорганизация базы данных из пары mssql в одну postgresql. * ExpressJS, Sequelize, MsSQL, PostgreSQL, PostGIS. * Axios, socket.io, cron, geolib, helmet, md5, uuid, jwt.
Индивидуальное предпринимательство / частная практика / фриланс
Backend developer
С 01.04.2021 по 01.05.2021 (1 месяц)
Заказы различного рода. Python, C#, C++, NodeJS. * C# - заказ для Российский Железных Дорог (РЖД). Модули для тренажера машинистов, создающие экстренную ситуацию и проверяющие правильность поведения машинистов (отказ тормозов, расцепка вагонов, проезд на красный и т.п.), начисляющие штрафные баллы по кастомизируемым правилам. Покрытие юнит тестами с помощью MOQ. * Различные REST API на NodeJS * Базовые ML на Python (TensorFlow)
ЛАНИТ
Стажер-разработчик
С 01.03.2021 по 01.03.2021 (меньше месяца)
3 недели удалённой стажировки. Работа с банковскими бизнес-процессами (BPMN) в Pega systems. Ушёл, т.к. дальнейшая работа не предполагала написание кода. Познакомился с Jira и Confluence.
Индивидуальное предпринимательство / частная практика / фриланс
Python django developer
С 01.07.2020 по 01.02.2021 (7 месяцев)
Заказ для Российской Товарищеской Хоккейной Лиги. Мобильные приложения и вебсайт с админ панелью. Был единственным бэкендером в команде из 4х человек. Сайт с большим количеством статистики и дашбордов (игры, чемпионаты, голы, турниры, игроки, команды, соревановательные сетки, штрафы и т.д.). Спроектировал базу из примерно 20 таблиц (sqlite, django orm). Админ панель позволяла вести риалтайм статистику живой игры. Реальное игровое событие, например гол, с помощью админ панели статистика появлялась сразу во всех связанных с игрой страницах (игрок, матч, команда, турнир, сезон). После игры у судей есть возможность скачать репорт всей игры в pdf формате. А также, менеджеры команд могли подавать заявки на игру с выбором игроков для турнира. Фронт делался другим человеком, используя js, css, html. Я совмещал html файлы с беком через Django Templates. Проект не был релизнут, так как представители компании в последний момент решили изменить условия оплаты с фиксированной суммы на % с оплат игр, на что наша команда не была согласна.
Образование
Университет
МИРЭА-Российский технологический университет
Владение языками
Родной язык
Русский
Иностранные языки
Английский
Дополнительно
Ключевые навыки
Node.js
Node.js и фреймворки nest.js, express
Javascript html бэм-методология typescript vue (2/3) vuex vitepinia tailwind nuxt apollo vue compo
Sql postgresql
Go, grpc, gitlab, k8s, postgres, clickhouse, oracle, kafka
Rest, gitlab, ci/cd, reactjs, redis
Ibm mq, rabbitmq, etc
Ms sql
Знание git
Навыки работы с docker/docker-compose
Дополнительная информация
Contacts: * tg: https://t.me/mauzzz0 * gh: https://github.com/Mauzzz0 ℹ️ Backend-разработчик, пишу на Nest.JS и TypeScript (Вакансии на JS не интересуют). Fullstack не интересует, но фронта не боюсь (Готов фронтовским задачам уделять не более 15% времени от всей работы). Интересует только удалённая работа (гибрид рассмотрю только в случае близости офиса). Нравится Golang, недавно изучал его до уровня "как сделать простенький CRUD и подключть к базе", если будет взаимодействие с golang и нужно будет изучать сервис на go, мне будет интересно. Люблю метрики, графики, цифры, статистики, динамики и тому подобное. ℹ️ С чем было бы интересно поработать (мало или вообще нет опыта): * Unit тесты, за всё время написал не больше 20 тестов, было бы интересно покрывать свой код тестами, чтобы быть уверенным в отсутствии breaking changes в будущих обновлениях. * Хотелось бы поработать с NoSQL базами по типу Mongo, посмотреть в чем их реальное преимущество относительно реляционных баз и сравнить удобство работы и производительность запросов. * Очень мало опыта с транзакциями, ACID, уровнями изолированности и т.п. Хотелось бы поприменять их в продакшене. * Нет опыта работы с gRPC, но вижу его в большом количестве вакансий, тоже хотелось бы поработать. * Нет опыта разработки нагруженных систем, максимальный рпс, для которого разрабатывался сервис - около 100rps. Хотелось бы разработать сервис с реальными рабочими нагрузками 500-1000 рпс (или даже больше). * Может быть, хотелось бы поработать с Kafka, почему-то мне кажется, что она популярнее RabbitMQ, хотелось бы попрактиковаться с ней и сравнить. ℹ️ По фронту (а почему бы и не написать): * В принципе, нравится и могу заниматься всем, кроме самой верстки. Могу настроить и оптимизировать сборку webpack, настроить ci/cd в gitlab ci или github actions. Настроить nginx, добавить ssl и проксирование запросов на бек, прописать домены и субдомены, настроить DNS. Есть опыт написания ui тестов на cypress. * Стараюсь придерживаться подхода FSD. * Стек: React, mobx, redux-toolkit, styled components, i18n, highcharts. ℹ️ Различное доп.образование: * Официальный курс Nest.JS - "Nest.JS Fundamentals" * "Nest.JS с нуля" (PurpleSchool) * "Docker + Ansible - с нуля, деплой и управление Swarm" (PurpleSchool) * "Mastering Node.JS Streams" (Erick Wendel) * "Продвинутый Frontend. React в Production" (UlbiTV) * Изучаю английский в SkyEng * "Professional Typescript" (Борис Черный) * "Грокаем алгоритмы" (Бхаргава Адитья) * "Искусство автономного тестирования с примерами на С#" (Рой Ошероув) * "C# 4.0 The Complete Reference" (Herbert Schildt) * "Легкий способ выучить Python 3" (Шоу Зед)
Похожие резюме
до 70 000 ₽
66 лет
Москва
Гибкий график
Последнее место работы
ДСО Спартак, Тренер по боксу, январь 1985 - июнь 2005
Обновлено
01.11 в 23:41
Был на сайте
Более недели назад
Опыт работы
37 лет 1 месяц
Не указана
48 лет
Москва
Полный день, Гибкий график
Последнее место работы
ЗАО Хэдман Профи, персональный водитель, ноябрь 2003 - декабрь 2010
Обновлено
14.10 в 04:06
Был на сайте
Более недели назад
Опыт работы
26 лет 10 месяцев
Не указана
38 лет
Москва
Полный день
Последнее место работы
Эскорт-Центр, Москва, ЗАО, Монтажник слаботочных систем, август 2005 - май 2009
Обновлено
17.10 в 18:04
Был на сайте
Более недели назад
Опыт работы
19 лет 8 месяцев