الوصف الوظيفي
ملخص الوظيفة:
يكون مهندس البرمجيات الخوارزمية الأول مسؤولًا عن لعب دور قيادي في فريق يركز على تطوير التحسينات والتعزيزات لخوارزميات توجيه النقل والجدولة. يقوم هذا الشخص بتحليل وتصميم وبرمجة وتصحيح الأخطاء في تحسينات الخوارزميات. يقدم الوثائق الفنية للفريق وأصحاب المصلحة. قد يتفاعل مع المستخدمين لتحديد متطلبات النظام و/أو التعديلات اللازمة. لديه خبرة في التصميم القائم على الكائنات والترميز وضبط الأداء واختبار الوحدة. ستكون الوظيفة حوالي 75٪ تطوير و25٪ صيانة ودعم النظام. يجب أن يكون هذا الشخص أيضًا لديه مهارات تواصل وبناء فرق قوية ويجب أن يكون قادرًا على المشاركة في مناقشات تصميم البرمجيات وتوجيه بنية الحل بناءً على مفاهيم التصميم القائم على الكائنات المثبتة وأنماط الصناعة القياسية وأفضل الممارسات. يقوم بتوجيه ودعم نمو المطورين الأقل خبرة من خلال القيادة.
الموقع: DealerSocket، بنغالور
المسؤوليات والواجبات الأساسية:
- تصميم وتنفيذ واستكشاف الأخطاء في الخوارزميات المعقدة مع التركيز على الحلول التقليدية والمبنية على التعلم الآلي.
- تحسين أداء وقابلية التوسع للخوارزميات للتطبيقات في العالم الحقيقي، مع معالجة القيود التجارية والمقايضات.
- إجراء ضبط الخوارزميات، بما في ذلك تحسين المعلمات وتعزيز كفاءة وقت التشغيل.
- كتابة كود نظيف ووحدوي ومُوثق جيدًا في C#، C++، جافا و.NET لضمان جودة الإنتاج.
- نمذجة البيانات المنطقية
- تصميم قائم على الكائنات والترميز واختبار الوحدة
- تأليف ومراجعة المتطلبات الفنية لضمان الامتثال لمتطلبات الأعمال
- إجراء اختبارات الوحدة المناسبة وكتابة كود البرمجيات (بما في ذلك اختبارات الوحدة الآلية)
- المشاركة في عملية الاختبار من خلال مراجعة وتحليل الاختبارات، وشهادة البرمجيات
- المشاركة في مراجعات كود الأقران وتطوير مستوى مهارة الآخرين من خلال الإرشاد
- استكشاف الأخطاء الحية لمشكلات إنتاج العملاء
الهندسة الخاصة بالتعلم الآلي:
- بناء وتحسين نماذج وعمليات التعلم الآلي، مع التركيز على القيود مثل السرعة والدقة وقابلية التفسير.
- تطوير واختبار خوارزميات التعلم الآلي مثل طرق التعلم تحت الإشراف وغير المراقب والتعلم المعزز، مصممة لتطبيقات محددة.
- معالجة وتحليل مجموعات البيانات الكبيرة، مع ضمان جودة البيانات والتطبيع والتحويل لتناسب احتياجات الخوارزمية.
- تصحيح الأخطاء واستكشاف مشكلات أداء النماذج، بما في ذلك الإفراط في التكيف، وعدم التكيف، ومشكلات التقارب.
- تنفيذ وتحسين طرق اختيار/استخراج الميزات لتعزيز دقة النموذج ووقت التشغيل.
- نشر نماذج التعلم الآلي في الإنتاج، مع ضمان التكامل القوي في الأنظمة الحالية.
الأداء المتقدم والأدوات:
- تصميم وتنفيذ دوال خسارة مخصصة، وتقنيات تنظيم، واستراتيجيات تحسين.
- استخدام أدوات وتقنيات التوصيف لاستكشاف الأخطاء وتعزيز الكفاءة الحاسوبية (مثل TensorFlow Profiler، PyTorch Profiler، أو حلول مخصصة).
- استغلال أطر الحوسبة الموزعة لتدريب ونشر نماذج التعلم الآلي على مجموعات بيانات كبيرة.
- بناء وصيانة بيئات المحاكاة لتقييم سلوك الخوارزميات المعتمدة على التعلم الآلي وغير المعتمدة على التعلم الآلي تحت قيود متنوعة.
التعاون والبحث:
- التعاون مع علماء البيانات وخبراء المجال لمواءمة الخوارزميات مع متطلبات المشروع والنتائج المتوقعة.
- البقاء على اطلاع بالتطورات في أطر التعلم الآلي والمكتبات والبحوث لدمج المنهجيات الحديثة في المشاريع.
- ترجمة الأبحاث الحديثة إلى حلول برمجية عملية وقابلة للتوسع
المؤهلات:
- التعليم: درجة البكالوريوس في علوم الحاسوب أو هندسة الحاسوب أو الهندسة الكهربائية أو الرياضيات
- الخبرة: 6+ سنوات من الخبرة في تطوير البرمجيات القابلة للتطبيق.
- تجربة في شركة قائمة على المنتج هي إلزامية
المعرفة/المهارات/القدرات:
- معرفة بالخوارزميات الشائعة للتوجيه
- بائع السفر
- خوارزمية ديكسترا لأقصر طريق أولاً
- الخوارزميات الجينية والحدسية
- تحليل الخوارزميات
- التفكير المنطقي
- مهارات تواصل ممتازة
- مهارات ممتازة في الكتابة والتحدث باللغة الإنجليزية
- معرفة ممتازة بنمذجة البيانات المنطقية
- معرفة ممتازة ببيئات تطوير C#/C++ وعملية التطوير
- متمرس في منهجيات دورة حياة تطوير البرمجيات القياسية في الصناعة (SDLC) ومنهجيات Agile مثل SCRUM
- معرفة بممارسات Agile
- معرفة بصناعة النقل مرغوبة ولكن ليست مطلوبة
- خبرة في توجيه المطورين الأقل خبرة
- يتبع تطوير البرمجيات باستخدام مفاهيم وممارسات وإجراءات قياسية في الصناعة
- القدرة على العمل على مهام متعددة في وقت واحد مع أعضاء فريق مختلفين و/أو مجموعات أخرى داخليًا وخارجيًا
- القدرة على الانخراط بفعالية في إدارة الوقت الذاتية وتحديد أولويات عبء العمل
- القدرة على العمل بشكل مستقل لتطوير مهارات جديدة حسب الحاجة لدعم منتجات وتطبيقات جديدة
- القدرة على التنسيق والإشراف على جهود متوازية لعدة مطورين
- معرفة بقواعد البيانات العلائقية وSQL
أداء هياكل البيانات
لقد تمت ترجمة هذا الإعلان الوظيفي بواسطة الذكاء الاصطناعي وقد يحتوي على بعض الاختلافات أو الأخطاء البسيطة.