We are seeking a software engineer with a passion for building and validating resilient distributed systems. At Canonical you can build a career and drive the success of those leveraging Canonical's Ubuntu and Juju to build multi-cloud deployable cloud applications.
We see quality engineering as a first class engineering practice and are looking for people who can bring deep engineering insights and a data driven approach to test automation, reporting and data analytics.
The Distributed Systems testing team at Canonical is responsible for ensuring the high quality of Canonical's Cloud solutions based on Juju, Terraform, Open Stack, Kubernetes when deployed under highly diverse conditions, from bare metal in customer data centers to public clouds like AWS, GCE, Azure.
As a software engineer you will have the opportunity to develop CI pipelines which power Canonical's cloud integration testing and reporting. Upcoming initiatives you will have the opportunity to contribute to include expanding deployment capabilities to new clouds and developing AI/ML pipelines for automatic analysis of test results. A successful candidate is interested in tackling these problems, as well as imagining and leading new initiatives within the team and across Canonical.
Location: this is a Globally remote role
What your day will look like
Create automated testing approaches and infrastructure for validating reliability, performance, and resilience of cloud orchestration tools and applications Enable engineering teams across Canonical to develop software with confidence by making distributed system testing tooling available across the company Enhance continuous integration pipelines for deploying and testing Canonical's cloud native products such as Kubeflow Deploy, manage, and debug highly distributed systems Monitor and report on automated testing efforts Collaborate daily with a globally distributed team
What we are looking for in you
Solid background in modern test processes and strategies Experience with Python or Go development Strong object oriented development skills Ability to develop and ship production grade modern web applications Working knowledge of continuous integration tools such as Jenkins, Circle CI, Git Hub CIKnowledge of networking technologies and fundamentals Solid understanding of Linux system architecture A capacity for complex abstract thinking Capability for 2-4 weeks of international travel travel per year
Additional skills that you might also bring
Collecting and analyzing large multidimensional datasets Operating data platforms: key-value stores, relational or document databases, event buses Work with cloud technologies such as Open Stack, Kubernetes, Terraform and AWSDeveloping AI/ML pipelines
What we offer you
We consider geographical location, experience, and performance in shaping compensation worldwide. We revisit compensation annually (and more often for graduates and associates) to ensure we recognise outstanding performance. In addition to base pay, we offer a performance-driven annual bonus. We provide all team members with additional benefits, which reflect our values and ideals. We balance our programs to meet local needs and ensure fairness globally.
Distributed work environment with twice-yearly team sprints in person - we've been working remotely since 2004! Personal learning and development budget of USD 2,000 per year Annual compensation review Recognition rewards Annual holiday leave Maternity and paternity leave Employee Assistance Programme Opportunity to travel to new locations to meet colleagues from your team and others Priority Pass for travel and travel upgrades for long haul company events
Canonical believes a diverse workforce enhances our ability to deliver world class software and services which meet the world's computing needs. We are committed to ensuring equal employment opportunities to all qualified individuals. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status.
نحن نبحث عن مهندس برمجيات لديه شغف ببناء والتحقق من الأنظمة الموزعة المرنة. في Canonical، يمكنك بناء مسيرتك المهنية ودفع عجلة نجاح أولئك الذين يستفيدون من Ubuntu و Juju من Canonical لبناء تطبيقات سحابية قابلة للنشر عبر سحابات متعددة.
نحن نعتبر هندسة الجودة ممارسة هندسية من الدرجة الأولى، ونبحث عن أشخاص يمكنهم تقديم رؤى هندسية عميقة ونهج قائم على البيانات لأتمتة الاختبار وإعداد التقارير وتحليلات البيانات.
فريق اختبار الأنظمة الموزعة في Canonical مسؤول عن ضمان الجودة العالية لحلول Canonical السحابية القائمة على Juju و Terraform و Open Stack و Kubernetes عند نشرها في ظل ظروف متنوعة للغاية، بدءاً من الخوادم المعدنية (bare metal) في مراكز بيانات العملاء وصولاً إلى السحابات العامة مثل AWS و GCE و Azure.
بصفتك مهندس برمجيات، ستتاح لك الفرصة لتطوير خطوط أنابيب التكامل المستمر (CI) التي تشغل اختبارات التكامل السحابي وإعداد التقارير في Canonical. تشمل المبادرات القادمة التي ستتاح لك فرصة المساهمة فيها توسيع قدرات النشر إلى سحابات جديدة وتطوير خطوط أنابيب الذكاء الاصطناعي/تعلم الآلة (AI/ML) للتحليل التلقائي لنتائج الاختبار. المرشح الناجح هو المهتم بمعالجة هذه المشكلات، بالإضافة إلى تخيل وقيادة مبادرات جديدة داخل الفريق وعبر Canonical.
الموقع: هذا دور وظيفي عن بُعد عالمياً
كيف سيبدو يومك
إنشاء نهج وبنية تحتية للاختبار الآلي للتحقق من الموثوقية والأداء ومرونة أدوات وتطبيقات تنسيق السحابة. تمكين فرق الهندسة عبر Canonical من تطوير البرمجيات بثقة من خلال توفير أدوات اختبار الأنظمة الموزعة عبر الشركة. تحسين خطوط أنابيب التكامل المستمر لنشر واختبار المنتجات السحابية الأصلية من Canonical مثل Kubeflow. نشر وإدارة وتصحيح الأنظمة الموزعة للغاية. مراقبة وإعداد تقارير عن جهود الاختبار الآلي. التعاون يومياً مع فريق موزع عالمياً.
ما نبحث عنه فيك
خلفية قوية في عمليات واستراتيجيات الاختبار الحديثة. خبرة في تطوير Python أو Go. مهارات قوية في البرمجة كائنية التوجه (OOP). القدرة على تطوير وشحن تطبيقات ويب حديثة بجودة الإنتاج. معرفة عملية بأدوات التكامل المستمر مثل Jenkins و Circle CI و GitHub CI. معرفة بتقنيات وأساسيات الشبكات. فهم قوي لهندسة نظام Linux. قدرة على التفكير التجريدي المعقد. القدرة على السفر الدولي لمدة 2-4 أسابيع سنوياً.
مهارات إضافية قد تمتلكها
جمع وتحليل مجموعات البيانات الكبيرة متعددة الأبعاد. تشغيل منصات البيانات: مخازن القيمة والمفتاح، قواعد البيانات العلائقية أو الوثائقية، ناقلات الأحداث. العمل مع تقنيات السحابة مثل Open Stack و Kubernetes و Terraform و AWS. تطوير خطوط أنابيب الذكاء الاصطناعي/تعلم الآلة.
ما نقدمه لك
نحن نأخذ الموقع الجغرافي والخبرة والأداء في الاعتبار عند تحديد التعويضات في جميع أنحاء العالم. نقوم بمراجعة التعويضات سنوياً (وبشكل متكرر للخريجين والمنتسبين) لضمان تقدير الأداء المتميز. بالإضافة إلى الراتب الأساسي، نقدم مكافأة سنوية قائمة على الأداء. نحن نوفر لجميع أعضاء الفريق مزايا إضافية تعكس قيمنا ومبادئنا. نوازن برامجنا لتلبية الاحتياجات المحلية وضمان العدالة على مستوى العالم.
بيئة عمل موزعة مع فترات عمل جماعية شخصية مرتين سنوياً - نحن نعمل عن بُعد منذ عام 2004! ميزانية للتعلم والتطوير الشخصي قدرها 2000 دولار أمريكي سنوياً. مراجعة سنوية للتعويضات. مكافآت تقديرية. إجازة سنوية. إجازة أمومة وأبوة. برنامج مساعدة الموظفين. فرصة للسفر إلى مواقع جديدة للقاء الزملاء من فريقك وغيرهم. بطاقة Priority Pass للسفر وترقيات السفر للرحلات الطويلة الخاصة بفعاليات الشركة.
تؤمن Canonical بأن القوى العاملة المتنوعة تعزز قدرتنا على تقديم برمجيات وخدمات عالمية المستوى تلبي احتياجات الحوسبة في العالم. نحن ملتزمون بضمان تكافؤ فرص العمل لجميع الأفراد المؤهلين. سيحصل جميع المتقدمين المؤهلين على اعتبار للتوظيف دون اعتبار للعرق أو اللون أو الدين أو الجنس أو الهوية الجنسية أو التعبير أو التوجه الجنسي أو الأصل القومي أو الوراثة أو الإعاقة أو العمر أو حالة المحاربين القدامى.