← Блог

Чем я занимаюсь: мои продукты и проекты

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

Работа по найму: AtomMind

С 2024 года я работаю над AtomMind — платформой промышленной цифровизации на Java, Go и Angular. Она подбирает параметры и режимы работы оборудования, чтобы снизить долю продукции, не соответствующей нормам, показывает производственный процесс и сообщает об отклонениях. Начинал тимлидом, потом стал архитектором, сейчас — техлид и архитектор.

Свои продукты на Rust

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

«Русло» — промышленная IIoT-платформа

«Русло» собирает телеметрию с оборудования цеха по MQTT, HTTP, Modbus TCP и OPC UA. Предприятие представлено деревом «завод → цех → участок → станок → показатель», доступ ограничивается по ветке. Временные ряды лежат в ClickHouse с автоматическими агрегатами. Платформа разворачивается внутри закрытой сети, без облаков и доступа в интернет. Устройство системы разбираю в статье «Русло»: как строится IIoT-платформа для закрытой сети предприятия.

Keel — CRM, где обезличивание заложено в архитектуру

Keel — веб-CRM для внешнеэкономической деятельности: клиент → менеджер → таможенный декларант. Менеджер никогда не видит, какой декларант ведёт заявку, а декларант никогда не видит клиента. Это обеспечивается сервером и раздельными базами данных, а не скрытием полей в интерфейсе. Стек: Rust (axum, sqlx), Vue 3, Postgres. Подробности в статье Keel: как спроектировать систему, в которой нельзя подсмотреть.

«Исток» — стенд для проверки диодов данных

«Исток» проверяет однонаправленную передачу данных через аппаратный диод. Отправитель генерирует трафик, получатель проверяет целостность, измеряет задержку и считает потери, а обратного канала между ними нет. Поддерживает MQTT, TCP, Modbus TCP, OPC UA и SFTP. Каждое сообщение несёт контрольную сумму SHA-256 и метку времени. Собирается в статические musl-бинарники для Astra Linux SE.

Свои продукты на Swift

До Rust я делал приложения для macOS:

  • Drafta — Markdown-редактор для разработчиков на CodeMirror 6 внутри нативного SwiftUI-приложения: история версий, блокноты, теги, синхронизация через iCloud. У Drafta есть собственный блог, он живёт на этом же сайте, например MCP-сервер Drafta: агенты читают и пишут заметки и AI-ассистент в Drafta: ⌘J и ваш ключ.
  • Echo — монитор системы в строке меню: CPU, RAM, диск, сеть, тайловый менеджер окон, история буфера обмена. Мониторинг приостанавливается, когда окон нет, и экономит заряд.
  • Helm — рабочее пространство для macOS: документы, задачи, диаграммы Ганта, риски и планирование проекта.

Что объединяет все проекты

Проекты разные, но подход один:

  1. Сначала архитектура. Я не начинаю писать код, пока не понимаю, что система должна делать и чего не должна. Об этом отдельная статья: Архитектура ПО: проектирование и планирование до первой строки кода.
  2. Безопасность как свойство системы. В Keel это изоляция данных, в «Русле» — работа без интернета. Разбор подхода: Безопасная разработка ПО: как защита закладывается с первого дня.
  3. Один автор — одна ответственность. Я отвечаю за продукт целиком и поэтому не оставляю «временных решений».
  4. Нативность и простота эксплуатации. Один бинарник, понятная конфигурация, минимум внешних зависимостей.

Работа по найму до этого

В портфолио также есть проекты прошлых лет: система поддержки принятия решений для МВД (Frontiers), HR-система предприятия, приложения Tezish и FlameApp, сайт-визитка Etalon. Полный список на странице Проекты.

Хотите так же для своего продукта

Если вам нужна система, у которой с первого дня понятная архитектура, безопасность и тесты, начните с разговора: Telegram @w1shmaster. Как устроена разработка от идеи до релиза, описано в статье Разработка ПО с нуля под ключ: от идеи до релиза.

← Все посты