صاحب العمل نشط
حالة تأهب وظيفة
سيتم تحديثك بأحدث تنبيهات الوظائف عبر البريد الإلكترونيحالة تأهب وظيفة
سيتم تحديثك بأحدث تنبيهات الوظائف عبر البريد الإلكترونيالتعاون بشكل استباقي والمساهمة في التصميم والهندسة واختيار الميزات للحلول عبر الفرق الموزعة
كتابة أكواد Python عالية الجودة مع اختبارات الوحدة
تصحيح المشكلات وإنتاج إصلاحات عالية الجودة
مراجعة الكود الذي أنتجه مهندسون آخرون
العمل من المنزل مع السفر العالمي من مرتين إلى أربع مرات في السنة للأحداث الداخلية والخارجية
من أنت
أنت تحب التكنولوجيا والعمل مع أشخاص لامعين وحل المشكلات المثيرة للاهتمام
أنت مفكر استراتيجي
أنت فضولي ومرن وواضح ومسؤول
أنت تقدر المهارات الناعمة وأنت شغوف ومغامر ومدروس ودافع ذاتيًا
أنت حاصل على درجة البكالوريوس أو ما يعادلها في علوم الكمبيوتر أو العلوم والتكنولوجيا والهندسة والرياضيات أو درجة مماثلة
أنت بارع في تقديم أكواد قوية للإنتاج، ويفضل أن تكون مكتوبة بلغة Python.
أنت تتمتع بالخبرة وتستمتع بصيانة وتحسين تطبيقات الويب الكبيرة والناضجة.
أنت تتمتع بخبرة في قواعد البيانات، وORMs (PostgreSQL a plus)، وإدارة البيانات، ونمذجة البيانات.
أنت مهتم أو لديك خبرة في التكامل والبنية الأساسية والعمليات.
أنت تعتقد أن الأمان القوي يتطلب جهودًا واعية في كل مرحلة من مراحل التسليم.
أنت على دراية بنظام التشغيل Ubuntu كمنصة للتطوير والنشر.
أنت تتمتع بفهم قوي لبنية أنظمة حزم البرامج المختلفة، بما في ذلك حزم Debian/Ubuntu.
1. تطوير البرمجيات
الترميز والتنفيذ: كتابة كود نظيف وقابل للصيانة للميزات الجديدة أو إصلاح الأخطاء تحت إشراف مهندسين أكثر خبرة. وعادةً ما يشمل هذا استخدام لغات البرمجة مثل Java أو Python أو JavaScript أو C++ أو لغات أخرى، اعتمادًا على المشروع ومجموعة التكنولوجيا.
التعاون في التصميم: المساهمة في تصميم الميزات أو الحلول الجديدة، والعمل مع كبار المهندسين لضمان التوافق مع بنية النظام والمواصفات الفنية.
مراجعة الكود: المشاركة في مراجعات الكود، وتقديم ملاحظات بناءة للأقران والتعلم من الملاحظات التي تم تلقيها على الكود الخاص بك.
إصلاح الأخطاء: تصحيح الأخطاء وحل المشكلات، باتباع أفضل الممارسات للاختبار واستكشاف الأخطاء وإصلاحها في عملية التطوير.
2. الاختبار وضمان الجودة
اختبار الوحدة: كتابة اختبارات الوحدة لضمان صحة ووظائف البرنامج، وضمان عمل المكونات أو الوحدات الفردية كما هو متوقع.
الاختبار الآلي: المساهمة في إنشاء أو صيانة الاختبارات الآلية التي تساعد في ضمان موثوقية وأداء البرنامج.
توثيق الاختبار: توثيق حالات الاختبار ونتائج الاختبار، والإبلاغ عن أي أخطاء أو مشكلات إلى كبار المهندسين لمزيد من التحليل.
3. التعاون والتواصل
التعاون الجماعي: العمل مع مهندسي البرمجيات الآخرين ومديري المنتجات والمصممين لتنفيذ الميزات أو إصلاح المشكلات. حضور اجتماعات الفريق بانتظام لمناقشة التقدم والعوائق والمهام القادمة.
التواصل بين الوظائف: التواصل مع أعضاء الفريق لتوضيح المتطلبات وحل المشكلات وتقديم تحديثات حول تقدم العمل.
4. التعلم وتطوير المهارات
التعلم المستمر: المشاركة في التدريب والتوجيه وفرص التعلم لتحسين المهارات الفنية ومعرفة البرمجة وأفضل ممارسات تطوير البرمجيات.
اتباع أفضل الممارسات: تعلم وتطبيق أفضل ممارسات الصناعة في الترميز والاختبار والتحكم في الإصدارات وغيرها من جوانب هندسة البرمجيات.
5. التوثيق
توثيق التعليمات البرمجية: كتابة وصيانة توثيق واضح للتعليمات البرمجية، بما في ذلك التعليقات والشروحات للمنطق أو المكونات الرئيسية.
التوثيق الفني: المساهمة في أو إنشاء أدلة المستخدم أو ملاحظات الإصدار أو وثائق النظام حسب الحاجة لدعم الفرق أو المستخدمين الآخرين.
1. لغات البرمجة
اللغات الأساسية: إتقان لغة برمجة واحدة أو أكثر، مثل Java أو Python أو C++ أو JavaScript أو غيرها، حسب مجموعة الأدوات التقنية للشركة.
الأطر والمكتبات: الإلمام بالأطر والمكتبات ذات الصلة بالدور، مثل React أو Angular أو Django أو Spring أو Node.js.
2. ممارسات تطوير البرمجيات
التحكم في الإصدارات: الخبرة في أنظمة التحكم في الإصدارات، وخاصة Git، لإدارة تغييرات التعليمات البرمجية والتعاون مع المطورين الآخرين.
منهجيات Agile: فهم أساسي لممارسات التطوير Agile (Scrum وKanban) والمشاركة في تخطيط العدو السريع والاجتماعات والاسترجاع.
3. حل المشكلات
الخوارزميات وهياكل البيانات: معرفة الخوارزميات وهياكل البيانات الشائعة، بالإضافة إلى القدرة على تطبيقها في سيناريوهات العالم الحقيقي لتحسين الأداء.
التصحيح واستكشاف الأخطاء وإصلاحها: القدرة على تصحيح أخطاء التعليمات البرمجية وحل المشكلات بطريقة منطقية ومنهجية.
4. اختبار البرمجيات
اختبار الوحدات والتكامل: الإلمام بممارسات الاختبار مثل كتابة اختبارات الوحدات واختبارات التكامل وفهم أطر الاختبار (على سبيل المثال، JUnit وMocha وpytest).
التطوير القائم على الاختبار (TDD): التعرض لمفاهيم وممارسات التطوير القائم على الاختبار غالبًا ما يكون ميزة إضافية.
5. قاعدة البيانات والتخزين
قواعد بيانات SQL/NoSQL: المعرفة الأساسية بالعمل مع قواعد البيانات (على سبيل المثال، MySQL وPostgreSQL وMongoDB) وكتابة الاستعلامات للتفاعل معها.
نمذجة البيانات: فهم أساسي لكيفية تصميم البيانات ونمذجتها للتخزين والاسترجاع الفعالين.
6. المهارات الشخصية
التواصل: مهارات اتصال شفهية وكتابية قوية لتوضيح المفاهيم الفنية والتعاون مع أعضاء الفريق.
العمل الجماعي: القدرة على العمل بشكل فعال في بيئة الفريق ومساعدة ودعم الآخرين والمساهمة في نجاح الفريق.
إدارة الوقت: القدرة على إدارة الوقت بشكل فعال وإعطاء الأولوية للمهام والوفاء بالمواعيد النهائية بتوجيه من كبار المهندسين.
دوام كامل