Role description
- We are looking for a self-motivated software engineer with experience developing in Python, to work on test automation tools or Linux based embedded hardware. This role offers an exciting opportunity to push the industry forward by enabling entirely new Linux based hardware testing capabilities, scaling up hardware certification efforts and allowing for deeper test coverage.
- The role involves the development and maintenance of Canonical's open source certification tools, supporting the creation of hardware solutions for test automation, and automating our existing processes. We seek out continuous process and tooling improvements as part of expanding the certification test suites, ultimately to improve the quality of Linux experience felt by millions of Linux end users.
Key responsibilities
- Maintain and develop new features to our Python based test automation tools like Checkbox, used by both in-house teams and industry partners.
- Invent new ways to enable remote, automated testing.
- Help build the software counterpart to in-house designed testing hardware to help test device enablement (graphics, hotplug, bluetooth, etc).
- Write functional and performance tests to support hardware enablement and to protect from regressions.
- Participate in meetings involving international travel 2-3 times per year.
Required Skills And Experience
- Knowledge of Python programming language.
- Quality oriented, pragmatic approach to software design and implementation.
- Interest in test automation methodologies.
- Previous experience working with Ubuntu or other Linux distributions.
- Ability to be productive in a globally distributed team.
- Desired Skills And Experience
- Passion for tinkering: you are a maker.
- Experience working in an agile environment.
- Hardware testing experience, for example in the IoT space.
- Familiarity with the C programming language.
وصف الدور
- نحن نبحث عن مهندس برمجيات لديه دوافع ذاتية ولديه خبرة في التطوير في Python، للعمل على أدوات أتمتة الاختبار أو الأجهزة المدمجة المستندة إلى Linux. يوفر هذا الدور فرصة مثيرة لدفع الصناعة إلى الأمام من خلال تمكين إمكانات اختبار الأجهزة الجديدة تمامًا المستندة إلى Linux، وتوسيع نطاق جهود اعتماد الأجهزة والسماح بتغطية اختبار أعمق.
- يتضمن الدور تطوير وصيانة أدوات التصديق مفتوحة المصدر من Canonical، ودعم إنشاء حلول الأجهزة لأتمتة الاختبار، وأتمتة عملياتنا الحالية. نسعى إلى إجراء تحسينات مستمرة على العمليات والأدوات كجزء من توسيع مجموعات اختبار الشهادات، وذلك في نهاية المطاف لتحسين جودة تجربة Linux التي يشعر بها الملايين من مستخدمي Linux النهائيين.
المهام الأساسية
- الحفاظ على ميزات جديدة وتطويرها لأدوات أتمتة الاختبار المستندة إلى Python مثل Checkbox، والتي يستخدمها كل من الفرق الداخلية وشركاء الصناعة.
- ابتكر طرقًا جديدة لتمكين الاختبار الآلي عن بعد.
- ساعد في بناء نظير البرنامج لأجهزة الاختبار المصممة داخليًا للمساعدة في اختبار تمكين الجهاز (الرسومات، والتوصيل السريع، والبلوتوث، وما إلى ذلك).
- قم بكتابة الاختبارات الوظيفية واختبارات الأداء لدعم تمكين الأجهزة والحماية من التراجعات.
- المشاركة في الاجتماعات التي تنطوي على السفر الدولي 2-3 مرات في السنة.
المهارات والخبرة المطلوبة
- معرفة لغة البرمجة بايثون.
- نهج عملي موجه نحو الجودة لتصميم البرامج وتنفيذها.
- الاهتمام بمنهجيات أتمتة الاختبار.
- خبرة سابقة في العمل مع Ubuntu أو توزيعات Linux الأخرى.
- القدرة على أن تكون منتجًا في فريق موزع عالميًا.
- المهارات والخبرة المطلوبة
- شغف الترقيع: أنت صانع.
- خبرة في العمل في بيئة رشيقة.
- تجربة اختبار الأجهزة، على سبيل المثال في مجال إنترنت الأشياء.
- الإلمام بلغة البرمجة C.
