الوصف الوظيفي
حول أوريجن
تقوم أوريجن ببناء روبوتات مستقلة متعددة الأغراض لصناعة البناء الأمريكية لمواجهة ارتفاع التكاليف، ومخاطر السلامة، ونقص العمالة.
تجمع منصتنا متعددة الحرف والمودولار بين الأجهزة المصممة خصيصًا وذكاء الموقع في الوقت الحقيقي للتنقل في البيئات المعقدة وتنفيذ المهام بدقة.
تم تدريب روبوتاتنا في محاكاة عالية الدقة وتم نشرها بالفعل في مواقع حية، مما يوفر تنفيذًا أسرع بخمس مرات، وزيادة في الهامش بنسبة 250%، وتوفير كبير في التكاليف.
تبحث أوريجن أوتونوماي عن مهندس برمجيات متعدد الاستخدامات وعملي للانضمام إلى فريقنا المتنامي.
ستعمل عبر أنظمة لينكس المدمجة، وطبقات الشبكات، وبرامج الوسائط الروبوتية، والخدمات المتصلة بالسحابة.
تتطلب هذه الوظيفة أساسيات قوية، وفضولًا فكريًا، والقدرة على التعلم بسرعة - وليس مجرد معرفة بالكلمات الرائجة.
المسؤوليات
تصميم وتنفيذ تسلسلات بدء تشغيل الروبوتات وتنظيم الخدمات لضمان بدء النظام بشكل موثوق وقابل للتحديد.
تكوين وإدارة الشبكات على لينكس - مجموعة TCP/IP، HTTP، iptables، ARP، DHCP، DNS - للتواصل بين الروبوت والسحابة وبين الروبوتات.
امتلاك خطوط أنابيب CI/CD باستخدام ArgoCD، GitHub Actions، وعمليات العمل المعتمدة على الحاويات لشحن البرمجيات إلى الروبوتات.
إدارة بيئات النشر والتشغيل المعتمدة على Docker على الروبوت والبنية التحتية السحابية.
كتابة وصيانة أدوات إدارة النظام والبرامج النصية bash لإدارة الأسطول والتشخيص.
التعاون بشكل وثيق مع فرق الروبوتات، والإدراك، والتطبيقات لدمج قدرات المنصة.
تأسيس وفرض أفضل الممارسات حول سير العمل في Git، واستراتيجيات التفرع، ومراجعة الشيفرة.
قيادة وتوجيه فريق صغير من مهندسي المنصة - تحديد الاتجاه الفني، وإجراء مراجعات الشيفرة، ودفع التنفيذ.
الحصول على خبرة في بيئة ناشئة ديناميكية في طليعة الابتكار في الروبوتات والذكاء الاصطناعي.
المساهمة في تطوير التكنولوجيا التي ستحدث ثورة في صناعة البناء.
العمل جنبًا إلى جنب مع فريق موهوب ومتحمس ملتزم بإحداث تأثير حقيقي في العالم.
التعلم من محترفين ذوي خبرة واكتساب مهارات قيمة في هندسة برمجيات الروبوتات.
الحصول على خبرة عملية في بيئة هندسية حقيقية.
المساهمة في مشروع لديه القدرة على إحداث تأثير كبير على صناعة البناء.
يجب على جميع المرشحين إثبات كفاءة قوية وعملية في كل عنصر مدرج أدناه.
برمجة أنظمة لينكس بلغة C
إدخال وإخراج الملفات - القراءة، الكتابة، البحث، الملفات المخصصة في الذاكرة
البرمجة متعددة الخيوط - pthreads، mutexes، متغيرات الشرط، سلامة الخيوط
الاتصال عبر المقابس - مقابس TCP/UDP، select/poll/epoll
الهياكل البيانية الأساسية والخوارزميات - المكدس، الكومة، قائمة الانتظار، القائمة المرتبطة
القدرة العامة على الفهم - قراءة الكتيبات الفنية، وبيانات المنتجات، وRFCs؛ البحث في الوثائق بشكل مستقل
برمجة Python
برمجة Bash
Git - استخدام CLI، التفرع، الدمج، إعادة التأسيس، حل النزاعات
مخططات UML القياسية - مخطط تدفق، مخطط تسلسل، مخطط نشر
محرر نصوص بدون نافذة - الاستخدام الأساسي في واحد على الأقل من: vim، nano، أو ما يعادلها (لا يتطلب إتقان كامل)
ميزة قوية
سيتم تفضيل المرشحين الذين لديهم خبرة عملية في الغالب من المجالات التالية.
برمجة C++ - C++17، OOP، القوالب، STL
بروتوكولات الشبكة الشائعة - DHCP، ARP، TCP، UDP، DNS
تكوين الشبكة - أجهزة التوجيه، المفاتيح، VLANs، تقسيم الشبكة
معمارية تطبيقات الخادم والعميل - أدوار الواجهة الخلفية والواجهة الأمامية
الاتصال من نظير إلى نظير مقابل الاتصال المركزي - DDS مقابل MQTT، المزايا والعيوب وحالات الاستخدام
إدارة قواعد البيانات - العلائقية (SQL) مقابل NoSQL، تصميم المخطط، الاستعلامات الأساسية
أمان الشبكة - مجموعات التحقق (CRC، MD5، SHA)، تشفير المفتاح العام، التوقيعات الرقمية
إطار عمل ROS2 - pub/sub، الخدمات، الإجراءات، عقد دورة الحياة، نقل DDS
نظام بناء CMake - الأهداف، find_package، تكامل CTest
Docker - كتابة Dockerfiles، docker-compose، إدارة سجل الصور عن بعد
لقد تمت ترجمة هذا الإعلان الوظيفي بواسطة الذكاء الاصطناعي وقد يحتوي على بعض الاختلافات أو الأخطاء البسيطة.