كل الأعمال
دراسة حالة يعمل

طُموح — منصة توظيف

منصة توظيف تجمع الباحثين عن عمل والمستقلين والشركات وأصحاب العمل، مع محادثة فورية واشتراكات مدفوعة.

رسم توضيحي: بطاقة وظيفة بجانب قائمة متقدمين مرتبة بنسب المطابقة.

المشكلة

عادةً يلتقي الباحثون عن عمل والمستقلون وأصحاب العمل في مواقع مختلفة، ويتواصلون عبر تطبيقات خارجية. تجمعهم طموح في منصة واحدة: يجد الناس العمل، وتنشر الشركات الوظائف، ويتواصل الطرفان ويدفعان داخل نفس النظام.

ما قمت به

  • صممت وبنيت الخلفية كاملة، والواجهات البرمجية، ولوحة التحكم، والموقع بـ Laravel.
  • بنيت نظاماً متعدد الأدوار للباحثين عن عمل والمستقلين والشركات وأصحاب العمل، لكل دور صلاحياته.
  • أضفت محادثة فورية بـ WebSockets وSocket.IO، يفتحها صاحب الوظيفة ويتحكم بها.
  • ربطت Stripe وPayPal للاشتراكات والمدفوعات بين الأدوار.
  • أضفت المهام الخلفية والطوابير والتخزين المؤقت ليبقى النظام سريعاً تحت الضغط.
  • عملت مع فريق Flutter الذي بنى تطبيقي الباحث عن عمل وصاحب العمل على نفس الواجهة.

المعمارية

  1. الواجهات
    • الموقع ولوحة التحكم
    • تطبيقات Flutter
  2. الخلفية
    • واجهة Laravel
    • الأدوار والصلاحيات
    • خادم المحادثة · Socket.IO (مكوّن أساسي)
    • الطوابير والتخزين المؤقت
  3. البيانات والدفع
    • MySQL
    • Stripe
    • PayPal

الجزء الصعب: صاحب الوظيفة يقرر متى تبدأ المحادثة.

المحادثة المفتوحة في منصة توظيف تتحول بسرعة إلى إزعاج: كل متقدم يراسل كل صاحب عمل. لذلك في طموح، صاحب الوظيفة وحده يفتح المحادثة مع المتقدم، وهو وحده يغلقها.

هذه القاعدة موجودة في الخادم لا في التطبيق. قناة WebSocket الخاصة بالمحادثة لا توجد إلا بعد أن يفتحها صاحب الوظيفة، فلا يستطيع الويب ولا تطبيقات الجوال تجاوزها.

النتائج

  • 4 أدوار على منصة واحدة
  • 2 بوابتا دفع: Stripe وPayPal
  • Real-time محادثة يتحكم بها صاحب الوظيفة