Ahmed Farid — Ingénieur logiciel senior, portrait
Profil

Je suis Ahmed Farid — un ingénieur senior qui livre des systèmes de bout en bout.

Basé à Dubaï. En plus de six ans, j'ai construit des plateformes SaaS multi-tenant, des systèmes d'enchères et de réservation en temps réel, des outils assistés par IA et une flotte d'applications mobiles livrées en production dans le Golfe, aux États-Unis et au Royaume-Uni.

Je travaille sur tout le stack — Laravel, Next.js, FastAPI, Flutter, AWS — et je suis à l'aise pour piloter un produit depuis la première décision de schéma jusqu'à la soumission sur l'App Store et l'astreinte après le lancement. J'apprends vite et je m'adapte au stack dont le projet a réellement besoin.

6+ ans
Logiciels en production
27+
Produits créés ou livrés
17+
Pays servis
Lic.
Info. & IA · Université Helwan
Profondeur technique

Ma stack technique.

Ce que j’utilise, et pourquoi. Surtout des outils éprouvés qui tiennent en production.

Backend

Laravel · PHP · Node.js · Express · NestJS

Modélisation du domaine, Eloquent + SQL brut là où ça vaut le coup, files (Horizon), Octane, Reverb, REST + auth (Sanctum, Passport, JWT).

Python

FastAPI · Django · DRF · Celery

API asynchrones, SQLAlchemy + Alembic, files de tâches Celery, pipelines pgvector/RAG — l'épine dorsale de Qoralia et de la plateforme RevealSite.

Web

React · Next.js · TypeScript · Vue

App router, server components, cache à l'edge, Tailwind + shadcn/ui, Material UI, Vite, TanStack Query, Zustand, Redux.

Mobile

Flutter · Dart

BLoC, Riverpod, flutter_modular, état local-first avec Hive, intégration Firebase, Apple PassKit, publication iOS + Android assurée.

Données

MySQL · Postgres · Mongo · Redis

D'abord la conception du schéma, ensuite les index. MariaDB, Supabase, pgvector, InfluxDB. Redis pour le cache, les files et l'occasionnel rate limiter.

Cloud

AWS · GCP · Docker

EC2, Lightsail, RDS, S3, SES. GCP Compute/Cloud SQL. Cloudflare, Nginx, Apache, Vercel, Hetzner, Hostinger. CI/CD sur GitHub Actions.

IA

OpenAI · Claude · OpenRouter

GPT-4o, ElevenLabs TTS, DALL·E, passerelles multi-fournisseurs, RAG avec portes d'évaluation. Livré dans Qoralia, KhebraOS et Phonic Maps.

Architecture de référence · SaaS multi-tenant
Clients
Next.js web
Flutter mobile
Admin ops
Edge
CDN cache
Auth jwt
Résolveur de tenant middleware
API
Laravel core
Node workers
Données
MySQL primary
Redis cache · queue
S3 media
Infra
AWS EC2 / RDS
Docker compose
SES e-mail
Boîte à outils complète

Tout ce avec quoi j'ai livré — directement issu des langages, frameworks et plateformes que j'utilise au quotidien.

Stack principal
LaravelNext.jsTypeScriptReactFlutterPostgreSQLRedisAWSDocker
Langages
PHPJavaScriptTypeScriptDartPythonGoHTMLCSS
Backend
LaravelNode.jsExpressNestJSFastAPIDjango
Frontend et mobile
ReactNext.jsVueTailwindBootstrapMaterial UIViteSassshadcn/uiFlutterReact Native
Données et stockage
MySQLPostgreSQLMongoDBRedisSupabaseMariaDBInfluxDBpgvector
DevOps et Cloud
DockerKubernetesAWSGCPFirebaseCloudflareNginxLinuxUbuntuGitHub ActionsGrafanaSentryVercelApacheAuth0HostingerGoDaddyHetznerApp StoreGoogle Play
Outils d'ingénierie
GitGitHubpnpmPostmanFigmaNotionReplitSwaggerJiraNx
Collaboration
DiscordSlackGoogle ChatClickUpAsana
IA et ingénierie IA
OpenAIClaudeAnthropicCodexCursorGeminiGrokKimiOpenRouter
Réflexion d'architecture

Comment je prends mes décisions techniques.

Cinq principes que j’applique à chaque projet, et que j’abandonne quand les faits disent le contraire.

/ i

Les frontières avant les fonctionnalités

Je trace les coutures du système avant d'écrire les écrans. Tenant, rôle et facturation sont des concepts de premier ordre — pas des ajouts après coup.

/ ii

Optimiser pour l'équipe qui livre la v2

Chemins de lecture propres, écritures auditées et migrations qu'un autre peut lancer à 2h du matin sans m'appeler. Le code est fait pour les humains.

/ iii

Mettre en cache là où ça vaut le coup

Le cache prématuré n'est qu'un bug avec un délai. Profiler, trouver le chemin de lecture qui fait mal, puis le mettre en cache — et l'invalider à dessein.

/ iv

Choix ennuyeux, exécution affûtée

Laravel et Postgres n'ont rien d'excitant. Ils sont prévisibles, ce qui est la seule excitation qu'un système en production devrait offrir.

/ v

Les agents exécutent des spécifications, pas des intentions

Une instruction vague produit une réponse plausible, et le plausible est l'échec coûteux. La spécification nomme donc la contrainte qui écarte l'approche évidente, chaque changement est écrit pour échouer bruyamment plutôt que de ne rien faire en silence, et je vérifie sur le site déployé — pas sur le résumé de l'agent.

En open source

Code open source.

Mon côté public sur github.com/ahmedfarid2 — 7 dépôts publics. L’essentiel de mon travail client est privé, sous NDA.

Expérience

Expérience.

Postes à temps plein et missions freelance, sur site et à distance.

Juil. 2025 — Aujourd'huiIngénieur logiciel seniorTemps pleinRecovery AdvisersDubaï, EAU · Distanciel
Janv. 2022 — Aujourd'huiIngénieur logiciel seniorFreelanceCompass MedPhonic MapsQoraliaProven ManagementKhebraEzhalAlnaimi StudiosIbdaa CourseApplyniDubaï, EAU · Distanciel
Juin 2024 — Août 2025Ingénieur logiciel seniorTemps pleinYelo SaleArabie saoudite · Distanciel
Juin — Déc. 2024Ingénieur logicielFreelanceInteractive FutureArabie saoudite · Distanciel
Juin — Nov. 2024Formateur en programmation logicielleFreelancealmentorLe Caire · Distanciel
Mars — Mai 2024Ingénieur logicielTemps pleinArab BankLe Caire · Sur site
Mai 2023 — Mars 2024Ingénieur logicielTemps pleinRevealSiteÉtats-Unis · Distanciel
Août 2021 — Déc. 2023Ingénieur logiciel & directeur de la production artistiqueTemps partielCompass MedLe Caire · Hybride
Pourquoi moi

Pourquoi les clients travaillent directement avec moi.

Ce à quoi vous pouvez vous attendre en travaillant avec moi.

La plupart des ingénieurs
Livre des fonctionnalités.
→ Avec moi
Livre des systèmes qui survivent à leur deuxième année.
La plupart des ingénieurs
Généraliste ou spécialiste — il faut choisir.
→ Avec moi
Backend, web, mobile et infra, avec une seule personne responsable de l’ensemble.
La plupart des ingénieurs
Disparaît à la passation.
→ Avec moi
Écrit le runbook que votre prochaine recrue lira vraiment.
La plupart des ingénieurs
Chiffre en lignes de code.
→ Avec moi
Chiffre en résultats métier — et les compromis pour y arriver.
La plupart des ingénieurs
Parle en jargon.
→ Avec moi
Traduit entre fondateurs, ops et ingénieurs sans perdre en précision.
La plupart des ingénieurs
Optimise pour la v1.
→ Avec moi
Conçoit la v1 pour que la v2 ne soit pas une réécriture.
FAQ

Questions fréquentes.

Si la vôtre n’y est pas, posez-la-moi directement en bas de la page.

Les deux. Je suis à temps plein chez Recovery Advisers (à distance) et je prends des projets clients de toute taille : les plus importants sont menés avec une équipe éprouvée d’ingénieurs avec qui je travaille, et votre interlocuteur reste moi du début à la fin. Les forfaits et les tarifs sont sur la page services.
Oui — c'est là que je suis le plus fort. Architecture, schéma, déploiement, la première tranche en production. Je peux rester pendant la montée en charge ou faire une passation propre.
Oui — j'ai livré 12+ apps Flutter sur l'App Store et le Play Store. Mais je travaille en général mieux quand je maîtrise les deux bouts du contrat d'API.

Parlez-moi de ce que vous construisez.

Vous avez un système à construire ou recrutez un ingénieur senior ? Trente minutes suffisent en général à savoir si je suis la bonne personne. Venez avec le problème que vous n'avez encore pu confier à personne.