Все проекты

Ping Messenger

Личные сообщения, голосовые и видеозвонки, пространства для сообществ - с нативными приложениями и собственной серверной платформой.

Моя работа

Разработка продукта, серверной части и приложений, развёртывание

Платформы

Android · iPhone · macOS · Windows · Веб

Статус

Android опубликован · iPhone и настольные версии в разработке

Экран видеозвонка Ping с вымышленными участниками
Экран переписки Ping Messenger с демонстрационным содержимым

Задача проекта.

Ping - мой продукт для общения: личная переписка, голосовые и видеозвонки, голосовые сообщения, фотографии и файлы, а также пространства, группы и каналы. Я работаю над интерфейсами приложений, сервисами связи и хранения данных, развёртыванием и публичным сайтом. Разрабатываю и поддерживаю проект с помощью ИИ, проверяя изменения в коде и на устройствах.

Что я сделал
в этом проекте.

Приложения и удобство общения: нативный Android на Kotlin, iPhone на Swift и разработка настольных клиентов на C++. Текст, голосовые сообщения, фотографии, видео и документы в едином интерфейсе.

Голосовые и видеозвонки на WebRTC: экран звонка, камера и микрофон, выбор аудиовыхода, сигнализация и восстановление при смене соединения.

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

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

Микросервисный бэкенд на Go: обмен данными в реальном времени, обработка событий и хранение. Настройка Kubernetes, пайплайнов GitLab CI/CD и развёртывания через Argo CD.

Многоязычный сайт my-ping.app и PingBook: каталог статей, поиск, навигация и интеграция OpenAI API для подготовки материалов.

Что работает
за экраном.

  • Go
  • Kotlin
  • Swift
  • C++
  • WebRTC
  • WebSocket
  • Kafka / Redpanda
  • ScyllaDB
  • Redis
  • Kubernetes
  • GitLab CI/CD
  • Argo CD

Сквозное шифрование (E2EE). Текст личных сообщений шифруется на устройстве отправителя и расшифровывается на устройствах участников переписки. Это описание не распространяется на звонки, файлы, группы, каналы и пространства.

Связь в реальном времени. WebSocket соединяет приложения с сервисами сообщений; WebRTC обеспечивает аудио и видео. Сигнализация и согласование соединения отделены от доставки переписки.

Распределённая архитектура. Микросервисы на Go разделяют задачи сообщений, присутствия, уведомлений и файлов. Kafka/Redpanda участвует в обработке событий; ScyllaDB и Redis используются для хранения и оперативного состояния в зависимости от сервиса.

Поставка обновлений. Сборка образов и проверки выполняются в GitLab CI/CD; Kubernetes и Argo CD управляют развёртыванием сервисов. Работа включает наблюдаемость, диагностику и проверку совместимости клиентов.

Нативные клиенты. Kotlin, Swift и C++ позволяют адаптировать навигацию, разрешения камеры и микрофона, интеграцию с системой и работу медиа под каждую платформу.

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

Приложение для Android опубликовано в Google Play. Продолжается разработка версий для iPhone, macOS и Windows, а также поддержка серверной части и сайта.

InstaCRM

Другой проект, другая решённая задача.

Ваш следующий проект
начинается с
разговора.

Идея, инструмент для команды или продукт, который пора развивать. Расскажите, что вы задумали.

info@pontogram.com

Также рассматриваю предложения о работе. Мой профиль LinkedIn

Ping Messenger - Ilya Serdiukov