Call & SMS escalation
Contacts get an SMS with a live-location link and a Twilio call. Unanswered calls are retried after 30 seconds and again after 3 minutes, through an SQS delay queue.

Case study · Backend, APIs & admin panels
Backend services, APIs and admin panels I build for Plegium, a personal-safety app that raises an alarm from the phone or a paired device, calls and texts the user’s emergency contacts, and shares their live location.
Start a projectPlegium is a Swedish personal-safety company. Since October 2024 I’ve worked on its platform with my team at Zennaxx Technology: Python (FastAPI) microservices for calls, SMS, one-time passwords, registration, IoT devices and alarm partners, a Go subscription API, and Next.js admin panels. When an alarm starts, the services call and text the user’s emergency contacts through Twilio, retry unanswered calls, and show the user’s live location until the alarm is turned off.


How it works
The services run in Docker on AWS, with Aurora MySQL and PostgreSQL, SQS, S3 and DynamoDB. Admin panels manage users, groups, devices, alarms, partners and subscriptions, kept in sync with Chargebee, Recharge and Seal.
Contacts get an SMS with a live-location link and a Twilio call. Unanswered calls are retried after 30 seconds and again after 3 minutes, through an SQS delay queue.

While the alarm is active, contacts follow the user on a Next.js tracking page with Google Maps. In 2026 I moved location storage from Firebase to PostgreSQL.

Alarms also come from Bluetooth pepper sprays and keychains and from an IoT alarm managed through AVSystem Coiote, with Agora live audio, Noonlight dispatch and App Attest / Play Integrity checks.

More work
WordPress plugins I’ve built for WooCommerce stores in India.
WooCommerce plugin to accept UPI payments by QR code, with UTR verification. 1,000+ active installs, rated 5/5.

WooCommerce plugin that confirms cash-on-delivery orders before shipping and offers prepaid UPI payment instead.

Contact
Share a few details about your project using the form and I’ll get back to you. You can also message me on LinkedIn.