العودة لقائمة المشاريع
بحاجة لـ Backend Developer متخصص في Laravel لإكمال تطبيق Marketplace/On-demand في السعودية
الميزانية
$250.00 - $500.00
التصنيف
برمجة، تطوير المواقع والتطبيقات
المهارات المطلوبة
HTML
SQLite
اللغة العربية
SQL
لارافيل
تطوير الويب
CSS
PHP
برمجة أندرويد
دوت نت فريموورك
MySQL
إدارة المشاريع
برمجة iOS
Front End
Back End
HTML
SQLite
اللغة العربية
SQL
لارافيل
تطوير الويب
CSS
PHP
برمجة أندرويد
دوت نت فريموورك
MySQL
إدارة المشاريع
برمجة iOS
Front End
Back End
الوصف
🔹 عن المشروع
منصة توصيل تضم 4 تطبيقات: عميل، تاجر، مورد، سائق. الـ Backend مبني بـ Laravel 12 + Sanctum + Reverb (WebSocket) + MySQL.
البنية التحتية المستخدمة:
- السيرفر: DigitalOcean (Staging + Production منفصلان)
- الدومين وDNS: NameCheap
- إدارة المهام: ClickUp (كل التسليمات عبره)
- التواصل والدفع: مستقل حصراً
جزء كبير من الكود موجود وجاهز، نحتاج إكمال المهام التالية:
🔹 المهام الأساسية (P0 — لازم تخلص أول)
• إضافة Payment Gateway حقيقي (Tap أو HyperPay أو Moyasar):
- Charge / Authorize / Capture
- Webhook مع signature verification
- Refund flow + Admin approval queue
- الكود الآن يحتوي GatewayRegistry جاهز — فقط نحتاج إضافة Gateway class
• إكمال Refund Logic:
- Backend logic + Admin approval
- Reverse ledger entries عند الاسترجاع
- إشعار العميل بنتيجة الاسترجاع
• محفظة العميل:
- Client Wallet Model + Balance API
- Apply wallet at checkout
• Driver Proof Photo Endpoint:
- POST /driver/orders/{delivery}/proof
- رفع صورة + تحديث الطلب
🔹 المهام التشغيلية (P1-P2)
• نظام موافقة التاجر (KYC):
- رفع رخصة تجارية + Admin Review + State Machine
• نظام تحقق هوية السائق:
- Iqama + Driving License + Vehicle Docs + Admin Review
• لوحة التحكم التشغيلية:
- Active Orders + Manual Reassign للسائق
- إدارة المحافظ + Payouts
• Driver Offer & Accept:
- Backend Dispatch مع 30-second Timeout
- قبول/رفض الطلب من السائق
• ETA حقيقي:
- Google Distance Matrix API + Caching
- Geofence Auto-Arrival (arrived_at_* من GPS)
- إعداد بيئة DigitalOcean:
- فصل Staging عن Production
- إعداد SSL + Nginx
- إعداد Queue Workers (Supervisor)
- إعداد Database Backups تلقائية
- إعداد Laravel Reverb على السيرفر
🔹 نظام الإعلانات الداخلية — Backend (P2)
نحتاج بناء نظام إعلانات داخل التطبيق يُدار بالكامل من لوحة التحكم:
• جدول Advertisements في قاعدة البيانات:
- نوع الإعلان: صورة / فيديو / بانر
- موضع الظهور: الرئيسية / قائمة المتاجر / صفحة المنتج / Checkout
- تاريخ البداية والنهاية
- الحالة: نشط / متوقف
- رابط عند الضغط (URL أو deep link)
- ترتيب الظهور (sort_order)
• API endpoints للتطبيقات:
- GET /ads?position=home — إعلانات الرئيسية
- GET /ads?position=store_list — إعلانات قائمة المتاجر
- Impression tracking (كم مرة ظهر)
- Click tracking (كم مرة ضُغط)
• Admin Panel — إدارة الإعلانات:
- رفع صور وفيديوهات للإعلانات
- تحديد مواضع الظهور
- جدولة الإعلانات (بداية ونهاية)
- تفعيل/إيقاف فوري
- إحصائيات Impressions + Clicks
🔹 التشديد التقني (P3)
• Health Endpoint (/health)
• Sentry على الـ Backend + Structured Logs
• General API Rate Limiting (per-user + per-IP)
• Token Refresh (Sanctum Expiry + Refresh Endpoint)
• App Version Gate (Server-side Minimum-Version)
• ZATCA Fatoora compliance (QR Code + شكل الفاتورة)
- Dreams SMS: ربط خدمة OTP عبر Dreams SMS
(بديل Twilio — السيستم حالياً يرسل OTP داخلياً ويرسل ف بعض التطبيقات otp فعلي ويعمل
🔹 التقنيات المطلوب معرفتها
• Laravel 12 (إلزامي)
• Payment Gateways (Tap / HyperPay / Moyasar) — الأهم
• MySQL + Eloquent + DB Transactions
• Laravel Reverb / Pusher (WebSocket)
• Queues + Jobs (Laravel Horizon أو Supervisor)
• Sanctum authentication
• Pest (PHP Testing)
- DigitalOcean (Linux server setup + Nginx + SSL)
- Supervisor (Queue Workers management)
- GitHub (إلزامي — كل الكود يُرفع عبره، لا ZIP)
🔹 متطلبات العمل
• خبرة موثقة في ربط بوابات دفع سعودية أو خليجية
• سبق بنى نظام Marketplace أو On-demand
• يكتب كود نظيف قابل للمراجعة
• متاح للتواصل اليومي عن طريق مستقل
• يقدر يبدأ خلال 48 ساعة
رفع المهام عن طريق click up
هناك مهام اضافية سوف تذكر حسب الحاجة اليها
يجب العمل ضمن الفريق
لا مشكلة في استخدام انظمة الذكاء الاصطناعي مع الحفاظ على جودة العمل وجودة التواصل والتسليم
يوجد ملفات داعمة سوف يتم مشاركتها مثل واجهات فيقما وملفات توضيحية ل هيكلية النظام
- التواصل: مستقل حصراً — لا واتساب ولا تيليجرام لأي اتفاق رسمي
- تسليم المهام: ClickUp (تُحدَّث حالة كل مهمة قبل طلب الدفع)
- الكود: GitHub فقط — commits على branch خاص، Pull Request للمراجعة
- الدفع: على milestones محددة بعد اختبار QA وليس مجرد "خلصنا"
🔹 طريقة التقديم
أجاوب على هذه الأسئلة في عرضك:
1. هل ربطت بوابة دفع سعودية من قبل؟ أي بوابة؟
2. كيف تتعامل مع Webhook وصل مرتين لنفس الطلب؟
3. كيف تصمم Wallet Ledger يمنع اختلاف الرصيد؟
4. ماذا تفعل لو تم الدفع ولم يتغير status الطلب؟
5. ما هي خطتك لأول أسبوع في المشروع؟
6. هل سبق عملت على سيرفر DigitalOcean؟ صف كيف تفصل Staging عن Production.
العروض بدون إجابات على هذه الأسئلة لن تُراجع.