About
I'm a backend-focused PHP/Laravel engineer with 4 years of experience building business-critical applications — REST APIs, transactional workflows, event-driven systems, and multi-tenant SaaS platforms.
I care most about correctness: idempotent endpoints, clean domain boundaries, careful data access, and test suites that catch regressions before users do. Pest, PHPStan, and Rector are part of how I work, not an afterthought.
Currently I'm a Full-Stack Laravel Engineer at Sentients AI, and outside work I maintain open-source Laravel packages and contribute fixes to established projects in the PHP ecosystem, including Laravel Horizon.
Experience
Oct 2025 — Present Full-Stack PHP/Laravel Engineer · Sentients AI
Design and maintain Laravel applications with an emphasis on reliability and scalable backend architecture. Build synchronization workflows with third-party REST APIs, tune queries, indexing and Redis caching, and implement secure transactions and RBAC — reducing potential vulnerability surfaces by 45%. Write Pest/PHPUnit tests and take part in code review.
- Laravel
- PHP
- MySQL
- Redis
- Vue.js
- Pest
- REST APIs
2022 — Present PHP/Laravel Developer · Freelance · Client Projects
Deliver Laravel applications and RESTful APIs end-to-end: schemas, transactional workflows, authentication and authorization. Integrate payment gateways, webhooks and external APIs with proper handling of failure and synchronization scenarios.
- Laravel
- Payments
- Webhooks
- Sanctum
- PHPUnit
Projects

Madarik — School Management SaaS
2026
Multi-tenant school platform covering students, attendance, grades, fees, library and messaging. Tenant isolation via global scopes and resolver middleware, Redis-backed notifications chunked for large schools, React dashboards over Inertia, and 100+ Pest feature tests guarding every API contract.
- Laravel 11
- React
- Inertia.js
- Sanctum
- Spatie
- Pest

Modular E-Commerce System
2026
Modular Laravel system separating orders, payments, inventory and users with DDD — value objects, domain events and isolated business rules. Multi-tenancy with automatic query scoping and event-driven workflows that decouple business processes.
- Laravel
- DDD
- Domain Events
- Multi-Tenancy
Enterprise POS & Retail Management
2024 — 2025
Retail management system with a barcode-driven POS, real-time inventory with low-stock alerts, multi-payment processing, a customer loyalty program, and PDF/Excel/CSV reporting. Redis caching keeps high-volume transactions fast.
- Laravel 11
- Vue.js 3
- Inertia.js
- Redis
- Stripe
BloodConnect — Blood Bank Platform
2023 — 2024
Healthcare platform for blood bank operations: donor–patient compatibility matching, automated alerts for critical requests, role-based workflows, and audit trails for regulatory compliance.
- Laravel 11
- Spatie Permissions
- MySQL
- Pest
Open Source
2026 laravel-idempotency · Maintainer
Prevents duplicate request execution with idempotency keys, request fingerprinting, response replay, conflict detection and cache-based locking. Extensible storage, locking and fingerprinting contracts; 93% test coverage.
- Pest
- PHPStan
- Rector
- Pint
2026 — Now laravel-trace · Maintainer · In progress
Application-level tracing for Laravel — request, query, event and execution-context spans with pluggable storage (including a database driver) and framework integration.
- Laravel
- Observability
Sep 2026 laravel/horizon · Contributor · Merged
Fixed the dashboard showing "Delayed Until" as the same time as "Pushed" for jobs delayed with a DateInterval/CarbonInterval — the idiomatic way to express a delay in Laravel. Merged into the official Laravel queue dashboard (fixes #1668).
- Laravel
- Queues
- PHP
2026 Upstream contributions · Contributor
Merged fixes in laravel-debugbar (validation errors cut off by the dumper depth limit), Grav CMS (env config booleans read as strings), and a run of fixes in career-ops covering CLI validation, CV fact-checking, tracker mapping and funnel analytics — working through issues, reviews and CI in established codebases.
- Open Source
- PHP
- Node.js
Writing
28 Sep 2026 Keeping every school's data apart in a multi-tenant Laravel app
How Madarik scopes 30 models to the current school with one middleware and one trait, where that stops protecting you, and the test that proves it.
Madarik
15 Sep 2026 Why Horizon showed "Delayed Until" equal to "Pushed"
A delayed job looked like it had no delay at all. The cause was two libraries using the letter "m" for different units.
laravel/horizon
6 Sep 2026 Getting validation errors back into the Debugbar session panel
Validation messages showed up as "_cut" because of a dumper depth limit. A pair of casters removed one level of nesting.
laravel-debugbar
2 Sep 2026 When GRAV_CONFIG__…=false means true
Environment variables are always strings, and (bool)"false" is true in PHP. A small cast fixed a config override that did the opposite of what it said.
Grav CMS