diff --git a/content.js b/content.js
index f997a0f..cf25be0 100644
--- a/content.js
+++ b/content.js
@@ -66,25 +66,48 @@
'.topcard__title',
]);
- // Fallback: find any h1 in the job details area
+ // LinkedIn renders screen-reader-only headings throughout its chrome
+ // ("0 notifications", "1 new message"). They are real
elements with
+ // real text, so any document-wide heading scan will happily return one as
+ // the job title. Require the element to be visibly rendered and to not look
+ // like navigation furniture.
+ function isVisible(el) {
+ if (!el || !el.offsetParent) return false;
+ if (el.closest('[aria-hidden="true"]')) return false;
+ const cls = el.className && el.className.baseVal !== undefined
+ ? el.className.baseVal
+ : String(el.className || '');
+ return !/visually-hidden|sr-only|a11y-text/.test(cls);
+ }
+
+ const NAV_NOISE = /notification|message|invitation|my network|feed update|search|premium|^\d+\s|jobs|people|similar|featured|recommended/i;
+
+ function plausibleTitle(text) {
+ return text.length > 4 && text.length < 100 && !NAV_NOISE.test(text);
+ }
+
+ // Fallback: a heading inside the job detail panel only — never page-wide.
if (!data.jobTitle) {
- const jobPanel = document.querySelector('.scaffold-layout__detail-column, .jobs-search__job-details, .job-view-layout');
+ const jobPanel = document.querySelector(
+ '.scaffold-layout__detail-column, .jobs-search__job-details, .job-view-layout, ' +
+ '.jobs-details, [class*="jobs-unified-top-card"], main'
+ );
if (jobPanel) {
- const h1 = jobPanel.querySelector('h1');
- if (h1 && h1.textContent.trim()) data.jobTitle = h1.textContent.trim();
+ for (const h of jobPanel.querySelectorAll('h1, h2')) {
+ const text = h.textContent.trim();
+ if (isVisible(h) && plausibleTitle(text)) {
+ data.jobTitle = text;
+ break;
+ }
+ }
}
}
- // Last resort: any bold h2 in main area
+ // Last resort: the browser tab title, which LinkedIn formats as
+ // "(N) Job Title | Company | LinkedIn". Still better than a nav label.
if (!data.jobTitle) {
- const allH2 = document.querySelectorAll('h2');
- for (const h of allH2) {
- const text = h.textContent.trim();
- if (text.length > 4 && text.length < 100 && !text.match(/jobs|people|similar|featured/i)) {
- data.jobTitle = text;
- break;
- }
- }
+ const m = document.title.match(/^(?:\(\d+\)\s*)?(.+?)\s*\|/);
+ if (m && plausibleTitle(m[1].trim())) data.jobTitle = m[1].trim();
}
// ── Company Name
diff --git a/server/profile.json b/server/profile.json
index 443f380..28c33d5 100644
--- a/server/profile.json
+++ b/server/profile.json
@@ -339,6 +339,6 @@
]
},
"_generated": "AUTO-GENERATED from profile_data.js — do not edit by hand. Run: node sync_profile.js",
- "_generatedAt": "2026-08-05T13:17:53.677Z",
+ "_generatedAt": "2026-08-05T13:35:29.708Z",
"profileText": "HAMZA AYED — Senior Mobile Architect\nRide-Hailing & Real-Time Systems · FinTech in Emerging Markets\n\nSUMMARY:\nSenior Mobile Architect and Founding Engineer with proven experience building and launching two production-grade ride-hailing platforms (Tripz — Egypt, Intaleq — Syria) from zero to live operations. Designed and delivered full mobility ecosystems including Rider, Driver, Admin and Customer Support applications, along with backend APIs, security layers, DevOps pipelines and fintech integrations. Specialized in real-time systems, self-hosted geo-services, high-latency optimization and infrastructure cost reduction.\n\nTARGET ROLES: Senior / Lead Mobile Engineer | Mobile Architect | Founding Engineer (Mobility, Logistics, FinTech)\n\nHEADLINE METRICS:\n- 5,275 — Riders acquired across 2 launches\n- 5,750+ — Drivers onboarded\n- ~80% — Map infrastructure cost cut\n- 8 apps — Shipped across 2 platforms\n\nAT A GLANCE:\n- Tripz (Egypt): Scaled platform to 2,464 riders and 4,318 drivers. Built and launched 4 distinct apps plus full backend in under 4 months with near-zero map infrastructure cost.\n- Intaleq (Syria): Acquired 2,811 riders and 1,440 drivers in the first 2 months. Engineered a custom operational payment layer to bypass API limitations in a highly constrained market.\n\nTECHNICAL SKILLS:\n- Mobile & Architecture: Flutter, Dart, GetX, Provider, Clean Architecture, Offline-First Design, REST APIs, State Management, Native Android (Java), iOS / Android Release Management\n- Real-Time & Geo Systems: WebSockets, Real-Time Dispatching, Live Tracking, Self-Hosted Maps, Map Tiles, Polylines, Routing Engines, Geospatial Queries, High-Latency Network Optimization\n- Backend & DevOps: PHP, Laravel, MySQL, Docker, Linux, Nginx, CI/CD (Gitea), Infrastructure Cost Optimization, Self-Hosted Infrastructure\n- Security & FinTech: Payment Gateway Integration (7+ providers), HMAC Security, RASP, Fake GPS Detection, Anti-Tampering, KYC Automation\n\nEXPERIENCE:\n- Senior Mobile Systems Architect — Intaleq | Jan 2025 – Present | MENA Region (Remote)\n • Launched a ride-hailing platform in a high-constraint market (Syria), reaching 2,811 riders and 1,440 drivers within the first two months.\n • Designed and implemented Rider, Driver, Admin and Customer Support applications.\n • Built a custom payment helper application to integrate legacy, non-API local payment gateways, enabling reliable driver balance top-ups despite infrastructure limitations.\n • Leveraged fully self-hosted map tiles and routing engines to eliminate dependency on expensive third-party mapping APIs, keeping operational costs near zero.\n • Designed an offline-first caching mechanism ensuring data integrity and uninterrupted driver–rider interactions during unstable network conditions.\n • Optimized deployment cycles by 40% through a secure, self-hosted CI/CD pipeline using Gitea, ensuring data sovereignty and rapid release efficiency.\n- Founding Mobile Architect — Tripz | Jan 2024 – Dec 2024 | Cairo, Egypt (Remote)\n • Built and launched a complete ride-hailing ecosystem (Rider, Driver, Admin, Customer Support apps plus backend API) in under four months, scaling to 2,464 riders and 4,318 drivers.\n • Designed real-time dispatch and live tracking using WebSockets, optimized for high-latency MENA network environments.\n • Reduced map infrastructure expenses by approximately 80% versus third-party API pricing by self-hosting map tiles, routing logic and polyline generation on dedicated servers.\n • Replaced traditional call-center hardware by engineering a secure, mobile-first Customer Support application, enabling support agents to operate entirely remotely.\n • Automated driver onboarding through AI-powered KYC integration, reducing manual review time and minimizing fraudulent registrations.\n • Implemented API-level HMAC security, anti-tampering mechanisms and Fake GPS detection to protect geo-spatial and financial data.\n • Collaborated closely with business stakeholders and operations teams to align product and architecture decisions with on-the-ground market realities.\n- Lead Mobile Engineer (Flutter / Native) — Global Tech Projects | Jan 2017 – Dec 2023 | Freelance / Consultant\n • Delivered 30+ production-grade mobile applications across e-commerce, delivery, healthcare and news sectors, acting as technical decision-maker for early-stage clients.\n • Migrated legacy Android (Java) applications to Flutter, cutting maintenance complexity and delivery timelines by roughly 50%.\n • Built custom Flutter plugins and tailored API layers to integrate with complex legacy backend systems.\n\nEDUCATION:\n- BSc Mathematics, Mu'tah University, Jordan. Applied mathematical foundations to state-machine design and geo-spatial routing.\n- IBM Data Analyst Professional Certificate\n- Google Data Analytics Professional Certificate\n- IBM Data Analytics with Excel and R Specialization\n\nCAPABILITY BOUNDARIES (do not overstate):\n STRONG IN:\n + Flutter / Dart mobile architecture at production scale\n + Real-time systems: WebSockets, dispatching, live tracking\n + Self-hosted geo infrastructure: tiles, routing, polylines\n + Payment gateway integration and constrained-market fintech workarounds\n + Mobile-layer security: HMAC, anti-tampering, Fake GPS detection\n + PHP / Laravel / MySQL backend supporting mobile products\n + Docker, Linux, Nginx, self-hosted CI/CD\n LIMITED / NOT EXPERIENCED IN:\n - AI is limited to INTEGRATING third-party vision/LLM APIs (KYC automation, Gemini API). No model training, no MLOps, no deep learning research.\n - Cloud experience is self-hosted/VPS-centric — not deep AWS/GCP/Azure managed-service experience.\n - No Kubernetes in production.\n - No native Swift/SwiftUI or Kotlin-first development — Flutter is the primary mobile path.\n - No data engineering (Spark, Hadoop, Airflow, warehouses).\n NEVER CLAIM: TensorFlow, PyTorch, Scikit-learn, Spark, Hadoop, Kubernetes, MLOps, model training, NLP research, Swift, SwiftUI, Kotlin Multiplatform, blockchain, Salesforce, SAP\n\nLANGUAGES: Arabic (Native), English (Professional Working Proficiency)\nLOCATION: Amman, Jordan — Available immediately. Open to Remote, Hybrid and Relocation (GCC / MENA / Europe).\nCONTACT: hamzaayedflutter@gmail.com | +962 798 583 052 | linkedin.com/in/hamza-ayed | intaleqapp.com/hamza.html"
}
\ No newline at end of file