Surface 01
Property search
Nationwide public site: sale and rent, apartments, villas, land — the catalogue buyers and tenants actually see.
Surface 02
Agent workspace
Agent and manager intranet: properties, mandates, visits, transactions, matching and compensation, with business validation.
Business problems
One catalogue, several jobs
Properties, mandates, contacts and transactions lived in disconnected tools. The AMI network needed one system to operate.
Mandate and commission
A listing is not just an ad: mandate status, manager validation, commission split across agents, referrers and the network.
One source, three portals
Listings have to go out to Avito, Mubawab and Sarouty from the same catalogue, without re-keying.
Agent vs manager
The agent captures. The manager validates. Properties, mandates, transactions and candidates follow distinct rights.
Value delivered
The work was to specify the domain, expose it as an API, then run agent operations and distribution — not just a brochure site.
- Modules for properties, mandates, agents, visits, demand matching and referrals.
- Secured REST API (JWT) consumed by the Twig intranet and an Angular client (directory, sponsorship).
- Listing publication to Avito, Mubawab and Sarouty from a single catalogue.
- Async side-effects (Messenger / RabbitMQ), Redis cache, Docker.
- Quality: PHPUnit, PHPStan, GitHub Actions (PHP 7.4, PostgreSQL, RabbitMQ).
My role
Apr 2021 — Sep 2021
End-of-studies internship
- Requirements and specifications.
- Contribution to service architecture.
- First backend deliveries.
Oct 2021 — Dec 2022
PHP/Symfony engineer
- Design and development through to production.
- REST APIs and connected business modules.
- Portal distribution, queues and cache.
Simplified architecture
- ClientsPublic site · agent intranet (Twig) · Angular SPA (directory / sponsorship)
- APIPHP 7.4 · Symfony 5.4 · API Platform 2.7 · JWT
- Data and asyncPostgreSQL · Redis · RabbitMQ · Messenger
- DistributionAvito · Mubawab · Sarouty
Quality and delivery
PHPUnit, PHPStan, GitHub Actions, Docker Compose (API, Twig, PostgreSQL, RabbitMQ, Redis).
Deliverables and results
Public and verifiable
- Public property-search site still online.
Delivered as part of my mission
- Nationwide platform delivered, from analysis through production.
- REST API and agent workspace for the AMI network.
- Listing distribution to Avito, Mubawab and Sarouty.
Stack
Backend
- PHP 7.4
- Symfony 5.4
- API Platform
- Doctrine ORM
- PostgreSQL
- JWT
- Messenger
Front
- Twig
- Angular
- Webpack Encore
Integrations and infra
- Avito
- Mubawab
- Sarouty
- RabbitMQ
- Redis
- Docker
Quality
- PHPUnit
- PHPStan
- GitHub Actions