




**المتطلبات والمسؤوليات** يُعنى مطوّر Flutter بتطوير وصيانة تطبيقات الجوال لكل من منصتي iOS وAndroid باستخدام إطار عمل Flutter. ويُعدّ هذا الدور محوريًا في إنشاء تطبيقات جوال جذابة بصريًا، وسريعة الاستجابة، وأداء عالٍ. **مهمات الوظيفة:** * الهندسة والتصميم: تولي مسؤولية هيكل التطبيق العام واتخاذ قرارات مستنيرة حول أنماط التصميم، وتدفق البيانات، وإدارة الحالة، والجوانب التقنية الأخرى للتطبيق. * مراجعات الكود وضمان الجودة: إجراء مراجعات شاملة للكود لضمان جودة عالية للكود، والالتزام بمعايير البرمجة، والممارسات الأفضل عبر المشروع. * تحسين الأداء والقابلية للتوسع: تحديد الاختناقات المحتملة في الأداء وتنفيذ عمليات التحسين لتعزيز أداء التطبيق، وقابلية التوسع، واستجابته. * تطوير الميزات المعقدة: التعامل مع تنفيذ ميزات معقدة والتعاون مع الفريق لضمان التسليم في الوقت المطلوب وبشكل ناجح. * التطوير عبر المنصات: الاستفادة من إمكانيات Flutter لبناء تطبيقات تصل إلى منصات متعددة مثل iOS وAndroid والويب. * التكامل والخدمات الخلفية: قيادة دمج تطبيقات الجوال مع واجهات برمجة التطبيقات والخدمات الخلفية، وضمان الأمان، وسلامة البيانات، والتواصل الأمثل. * التكامل المستمر والنشر: تنفيذ وصيانة خطوط أنابيب CI/CD القوية لأتمتة الاختبارات، والبنية، والنشر. * إعادة هيكلة الكود والديون التقنية: تحديد المجالات التي تحتاج إلى تحسين الكود، وإعادة هيكلة الكود القديم، وتقليل الديون التقنية. * حل المشكلات واستكشاف الأخطاء: تقديم مهارات استكشاف أخطاء على مستوى الخبراء لمعالجة القضايا والتحديات المعقدة أثناء عملية التطوير. * الابتكار والبحث: البقاء في طليعة تقنيات Flutter وتطوير التطبيقات المتنقلة، والبحث في الأدوات والمكتبات والممارسات الأفضل الجديدة لتحسين إنتاجية الفريق ونتائج المشاريع. * التعاون مع الفرق الأخرى: التعاون مع فرق متعددة الوظائف، بما في ذلك المصممين، ومديري المنتجات، والمطورين الخلفيين، لتحقيق أهداف المشروع بفعالية. * الأمان وخصوصية البيانات: التأكد من أن التطبيق يتبع أفضل الممارسات والإرشادات الأمنية لحماية بيانات المستخدم والحفاظ على خصوصيته. * تخطيط المشروع والتقدير: المساعدة في تخطيط المشروع، وتحديد المتطلبات التقنية، وتوفير تقديرات دقيقة للجهد المطلوب للمهام. * التدريب وورش العمل: تنظيم وعقد جلسات تدريب تقنية، وورش عمل، أو جلسات مشاركة المعرفة لرفع مستوى مهارات فريق التطوير. * المساهمة في مجتمع Flutter: المشاركة الفعّالة في مجتمع Flutter، والمساهمة في المشاريع مفتوحة المصدر، ومشاركة المعرفة لدفع تطور نظام Flutter البيئي. * القيادة التقنية: توفير القيادة والهداية التقنية لفريق التطوير. إرشاد وتوجيه المطورين المبتدئين والمتوسطين لمساعدتهم على تنمية مهاراتهم وخبراتهم. **المتطلبات التقنية:** * درجة البكالوريوس في علوم الحاسوب، أو تكنولوجيا المعلومات، أو مجال ذي صلة، أو خبرة عمل معادلة. * 3+ سنوات من الخبرة. * هندسة وأنماط تصميم متقدمة: القدرة على تصميم هياكل تطبيقات قابلة للتوسع وسهلة الصيانة، والاعتماد على أنماط تصميم متقدمة مثل Clean Architecture، أو BLoC architecture، أو MVU (Model\-View\-Update). * إدارة حالات متقدمة: إتقان تنفيذ حلول إدارة الحالة المعقدة، بما في ذلك التعامل مع الحالة عبر شاشات متعددة، واستخدام استمرارية الحالة، وإدارة الحالة الشاملة للتطبيق بشكل فعّال. * تحليل الأداء وتحسينه: الكفاءة في استخدام أدوات التحليل مثل Flutter Observatory وDart DevTools لتحليل أداء التطبيق وتحسين العرض، واستخدام الذاكرة، وأوقات بدء تشغيل التطبيق. * تصميم واجهة مستخدم/تجربة مستخدم متقدم: القدرة على تنفيذ رسوم متحركة مخصصة، وانتقالات، وتفاعلات واجهة مستخدم معقدة لإنشاء تجارب مستخدم غنية وممتعة. * قنوات منصة مخصصة: خبرة في قنوات المنصة لتمكين الاتصال بين Flutter والكود الأصلي من أجل دمج وظائف محددة بالمنصة أو الوصول إلى واجهات برمجة التطبيقات الأصلية. * معالجة البيانات دون اتصال: الخبرة في إدارة تخزين البيانات دون اتصال والمزامنة، بما في ذلك استمرارية البيانات مع SQLite وإدارة تعارضات البيانات المحلية. * اختبار متقدم وأتمتة: معرفة بتقنيات الاختبار المتقدمة، بما في ذلك اختبار العناصر النائبة (widget testing)، واختبار التكامل، وأتمتة حالات الاختبار باستخدام أطر عمل مثل flutter\_driver أو flutter\_test. * التكامل المستمر والنشر (CI/CD): خبرة في إعداد وإدارة خطوط أنابيب CI/CD قوية لأتمتة الاختبارات، وتوقيع الكود، وتوزيع التطبيق. * مراجعة الكود والتعاون: خبرة قوية في قيادة مراجعات الكود، وتقديم ملاحظات بنّاءة، والتعاون مع أعضاء الفريق لتحسين جودة الكود وعمليات التطوير. * تطوير حزم متقدمة: إلمام بإنشاء ونشر حزم مخصصة لمجتمع Flutter، والمساهمة في المشاريع مفتوحة المصدر، وصيانة قواعد كود عالية الجودة. * المعالجة في الخلفية والعزلات (Isolates): الكفاءة في تنفيذ مهام في الخلفية باستخدام العزلات، وتنفيذ المهام الدورية، وإدارة الموارد بكفاءة أثناء التنفيذ في الخلفية. * التكامل المتقدم مع الخدمات الخلفية: خبرة في التكامل مع خدمات خلفية معقدة، وتنفيذ المصادقة، والعمل بكفاءة مع واجهات برمجة التطبيقات. * إمكانية الوصول: معرفة بتنفيذ ميزات إمكانية الوصول لجعل تطبيقات Flutter أكثر شمولاً ووصولاً للمستخدمين ذوي الإعاقات. * التطوير عبر المنصات: الخبرة في استهداف منصات متعددة، بما في ذلك الويب وسطح المكتب، باستخدام Flutter. * إعادة هيكلة الكود وصيانة قاعدة الكود: القدرة على إعادة هيكلة وتحسين قواعد الكود الحالية، وتقليل الديون التقنية، وتحسين وحدات الكود وسهولة صيانتها. * الأمان وحماية البيانات: فهم عميق لممارسات البرمجة الآمنة وتنفيذ التدابير الأمنية لحماية بيانات المستخدم ومنع الثغرات الشائعة. * التعامل مع الأخطاء المتقدمة والتسجيل: الكفاءة في التعامل القوي مع الأخطاء، والتسجيل، وآليات الإبلاغ عن الأعطال لتوفير تغذية راجعة ذات معنى لأغراض التصحيح وحل المشكلات. * مراجعات الأداء والقيادة الفنية: خبرة في إجراء مراجعات الأداء لأعضاء الفريق وتوفير الإرشاد للمطورين المبتدئين.


