Роман

Роман

Go-разработчик

Пишу сервисы, сам их деплою и управляю инфраструктурой, на которой они работают — поэтому вижу систему целиком, а не отдельный кусок.

Бэкенд на Go · API и базы данных · инфраструктура · интеграции

Проекты

Assetkeeper

используется

Система учёта техники, которая заменила бумажный журнал в отделе

В отделе учёт техники вёлся в бумажном журнале: перемещения между отделами, ремонты, списания — всё руками. Собрал систему, которая закрывает весь цикл: устройства, история, роли, печатные формы и отчёты в реальном времени.

  • Заменила бумажный журнал: три сотрудника, работающих с железом, больше не заполняют его руками
  • Печатные формы акта передачи и материального пропуска — по клику
  • У начальства всегда актуальная картина: что на балансе, что в ремонте, кто и когда брал
GoAngularPostgreSQLDocker

CS-Scheduler

в разработке

Планирование игровых сессий

Собрать компанию на игру сложно: у всех разное расписание и разные предпочтения. Сервис решает это через хабы и слоты по 10 минут — можно подобрать и игру, и время под конкретную компанию.

  • Хабы и слоты: 10-минутные отрезки, из которых собирается расписание
  • Подбор игр под состав компании
  • Пет-проект, код открыт
GoAngularPostgreSQL

Опыт

Региональное управление федеральной службы

Отдел информатизации

Разработка и эксплуатация внутренних сервисов. Обновления основной системы, СУБД и веб-сервера на продакшне, бэкап и восстановление терабайтных БД. Разработал Assetkeeper — систему учёта техники, которая заменила бумажный журнал в отделе.

Инфраструктура

2 VM + 1 VPS · 3 публичных сервиса · полгода в работе

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

ИнтернетVPS · CaddyTLS-терминация, публичный IPWireGuardOPNsenseVLAN · DMZ · NAT · фильтрацияCaddyмаршрутизация по поддоменамGiteaCS-SchedulerAssetkeeper

Снаружи

  • VPS с публичным IP — только маршрутизация и TLS-терминация, ничего не хранит
  • WireGuard — приватный туннель от VPS до домашней сети

Периметр

  • OPNsense: DMZ, NAT, правила фильтрации

Маршрутизация

  • Caddy в DMZ — раздаёт сервисы по поддоменам

Сервисы

  • Gitea — собственный git-сервер
  • CS-Scheduler, Assetkeeper-demo — демки проектов
  • В планах: Matrix с федерацией, TeamSpeak

О себе

Пишу внутренние сервисы для службы, в которой работаю. Один из них — Assetkeeper — сейчас используется в ежедневной работе.

Пишу код больше года всерьёз. Учился в основном сам: сначала — по задачам, которые надо было решить, потом — по проектам, которые надо было довести до продакшна. Сейчас на своём железе живут Gitea и несколько сервисов, часть из них — публичные.

Ищу команду, где можно видеть весь цикл: от задачи до деплоя и поддержки. В больших компаниях этот цикл разбит на десятки ролей, а мне интереснее держать систему целиком и понимать каждый её уровень — поэтому смотрю в сторону небольших продуктовых команд.

Контакты

Открыт к предложениям о работе и интересным задачам.