إطلاق تطبيق لإدارة الموظفين على المتجرين في 10 أسابيع
بقلم يوسف سالم حسن
كيف بنيت تطبيق Tech 92 للحضور ومؤشرات الأداء في Technology 92، من أول سطر كود حتى App Store وGoogle Play في 68 يومًا، ثم حافظت على استقراره عبر 13 تحديثًا في أول 4 أشهر.

المهمة والوقت المتاح
احتاجت Technology 92 تطبيقًا واحدًا لموظفيها: تسجيل الحضور والانصراف، وإدخال مؤشرات الأداء اليومية، والملف الشخصي، ومتابعة أخبار الشركة، بالعربية والإنجليزية. كان أول commit في 15 فبراير 2026، وصدر الإصدار 1.0.0 على App Store وGoogle Play في 24 أبريل: 68 يومًا، أي أقل بقليل من 10 أسابيع.
بنيت كل ميزة من البداية إلى النهاية، من شاشة Flutter حتى نقطة Laravel API خلفها. وهذا ألغى الانتظار المعتاد بين «التطبيق جاهز» و«الـ API جاهز».
بنية تسمح بالسرعة
ينقسم التطبيق إلى 15 وحدة ميزات (الحضور، ومؤشرات الأداء، والملف الشخصي، وطلبات الإجازة، والإشعارات وغيرها)، لكل منها طبقات البيانات والمنطق والواجهة الخاصة بها. تُدار الحالة بـ BLoC وCubit، وتُربط الاعتماديات بـ get_it، ويتم التنقل بـ go_router، وتمر كل الطلبات عبر عميل Dio واحد.
كانت العربية والإنجليزية موجودتين من أول شاشة، ولم تُضافا في النهاية. يتحقق الـ CI من توليد الترجمات وتنسيق الكود وتحليله ونجاح الاختبارات، ويبني Codemagic كل إصدار ويرسله إلى TestFlight ومسار Play الداخلي.
تسجيل الحضور بدون إنترنت
يسجّل الموظفون حضورهم من أي مكان، والإنترنت ليس متوفرًا دائمًا. عندما يكون الهاتف غير متصل، يُحفظ تسجيل الحضور أو الانصراف في طابور على الجهاز، وتتحدث الشاشة فورًا فيبدأ المؤقت. وعند عودة الاتصال يُرسل الطابور بالترتيب.
يحمل كل إجراء في الطابور مفتاح idempotency، فإذا أُعيد إرسال نفس تسجيل الحضور يتجاهل الخادم التكرار. والعنصر الذي يفشل ثلاث مرات يُنقل لإعادة المحاولة يدويًا بدل أن يوقف الباقي، والعنصر التالف يُتخطّى دون فقدان غيره. ويغطي الطابور نفسه الآن مؤشرات الأداء وطلبات الإجازة والشكاوى.
الوقت أصعب مما يبدو
معظم الأخطاء الصعبة كانت متعلقة بالوقت. الوردية من 22:00 إلى 06:00 يجب أن تظهر كجزء واحد متصل يعبر منتصف الليل، لا كقطعتين منفصلتين. والتحويل بين توقيت الخادم وتوقيت الهاتف قد ينقل السجل إلى يوم خاطئ. وشاشة التحميل كانت تتوقف في لحظة عبور الوردية لمنتصف الليل، والنقرات السريعة المتكررة قد ترسل نفس التحديث مرتين. ولكل منها إصلاح واختبار.
الاستمرار بعد الإطلاق
الإطلاق كان البداية. بين 24 أبريل و21 أغسطس صدر للتطبيق 13 تحديثًا: تعديل مؤشرات الأداء بدون اتصال، وبانرات يديرها المسؤول وتظهر حتى بدون إنترنت، وتجربة ترحيب جديدة، وثيمات موسمية تُفعَّل من لوحة التحكم. يرصد Sentry الأعطال، وللتطبيق نحو 800 اختبار آلي تغطي المنطق وBLoC والواجهات.
واليوم يستخدمه نحو 100 موظف في 4 دول شهريًا، سجّلوا أكثر من 1,600 عملية حضور و700 إدخال لمؤشرات الأداء، والتطبيق خالٍ من الأعطال بنسبة 100%.
ما سأكرره
أن أمتلك الميزة من البداية للنهاية حتى لا ينتظر شيء تسليمًا من طرف آخر. وأن أصمم لضعف الاتصال من الأسبوع الأول، لأن إضافة طابور العمل بدون اتصال لاحقًا أصعب بكثير من البدء به. وأن أتعامل مع التواريخ والأوقات كميزة لها اختباراتها، لا كتفصيلة.
اقرأ دراسة الحالة: Tech 92 — تطبيق الحضور ومؤشرات الأداء للموظفين ←