---
title: "Muhammad Ali Mughal (@ali978123) | Hashnode"
description: "Muhammad Ali Mughal (@ali978123) writes on Hashnode. Read their latest articles and follow their work."
url: "https://hashnode.com/@ali978123"
---

@ali978123

# Muhammad Ali Mughal

@ali978123 · Joined September 2026

### [Laravel RBAC for Multi-Organization Portals](https://resume-ai.hashnode.dev/laravel-rbac-for-multi-organization-portals?utm_source=hashnode&utm_medium=feed)

A portal that serves many organizations is not “one app with a role column.” It is a matrix: user × organization × permission, plus the hard rule that a token for Org A must never read Org B’s rows ev

8 min read · [resume-ai.hashnode.dev](https://resume-ai.hashnode.dev/laravel-rbac-for-multi-organization-portals?utm_source=hashnode&utm_medium=feed)

[2d ago](https://hashnode.com/posts/laravel-rbac-for-multi-organization-portals/6af35680985978cf3290d75f)

### [How ATS Parses Phone Numbers & Country Codes](https://resume-ai.hashnode.dev/how-ats-parses-phone-numbers-country-codes?utm_source=hashnode&utm_medium=feed)

A recruiter dials the number on your profile and hears "the number you have dialed is not in service." Or worse: the ATS never stored a phone at all, so the recruiter never calls. Your header looked f

10 min read · [resume-ai.hashnode.dev](https://resume-ai.hashnode.dev/how-ats-parses-phone-numbers-country-codes?utm_source=hashnode&utm_medium=feed)

[2d ago](https://hashnode.com/posts/how-ats-parses-phone-numbers-country-codes/6af33d1cd2c3b84dd67aede8)

### [Immutable Audit Trails in Postgres for SaaS](https://resume-ai.hashnode.dev/immutable-audit-trails-in-postgres-for-saas?utm_source=hashnode&utm_medium=feed)

Design append-only Postgres audit tables for SaaS: grants, triggers vs app writes, partitioning, retention, and compensating-event patterns.

9 min read · [resume-ai.hashnode.dev](https://resume-ai.hashnode.dev/immutable-audit-trails-in-postgres-for-saas?utm_source=hashnode&utm_medium=feed)

[2d ago](https://hashnode.com/posts/immutable-audit-trails-in-postgres-for-saas/6af32caeafd6c52a53f967f4)

### [Referrer-Policy: Stop Leaking Sensitive URLs](https://resume-ai.hashnode.dev/referrer-policy-stop-leaking-sensitive-urls?utm_source=hashnode&utm_medium=feed)

Compare Referrer-Policy values, see how full URLs leak in Referer headers, and set a safe default with curl checks plus browser verification.

9 min read · [resume-ai.hashnode.dev](https://resume-ai.hashnode.dev/referrer-policy-stop-leaking-sensitive-urls?utm_source=hashnode&utm_medium=feed)

[2d ago](https://hashnode.com/posts/referrer-policy-stop-leaking-sensitive-urls/6af2af2c3105cd55a15a6c4f)

### [How ATS Parses Employment Dates and Gaps](https://resume-ai.hashnode.dev/how-ats-parses-employment-dates-and-gaps?utm_source=hashnode&utm_medium=feed)

See how Greenhouse, Workday and Lever parse start/end dates and career gaps, plus weak vs ATS-optimized rewrites and a 10-step date checklist.

9 min read · [resume-ai.hashnode.dev](https://resume-ai.hashnode.dev/how-ats-parses-employment-dates-and-gaps?utm_source=hashnode&utm_medium=feed)

[3d ago](https://hashnode.com/posts/how-ats-parses-employment-dates-and-gaps/6af206774b6dda9f3196a8da)
