Tool and Automation Engineer

    • Cupertino, CA

Summary

Posted: Jun 15, 2020

Role Number: 200142841

Imagine what you could do here. At Apple, new ideas have a way of becoming extraordinary products, services, and customer experiences very quickly. Bring your passion and dedication to our team and there's no telling what you could accomplish. Apple services are an essential part of the Apple experience that extends even beyond the owners of Apple devices. Our users rely on services such as iMessage, iTunes, the App Store, and iCloud to communicate, to access powerful applications and media content, and to build, store and protect their memories seamlessly across all their devices. The Automation Engineering team is responsible for establishing a culture of quality by refining and enforcing quality standards and processes. The team develops tools and frameworks that enable the rest of the organization to deliver high quality applications.

Key Qualifications

  • Strong software testing fundamentals with proficiency in Black Box, White Box and Performance testing
  • Expertise in quality assurance processes with hands on experience in creating test strategies, plans and test cases
  • Experience using automated testing frameworks like Junit, TestNG, ScalaTest, Cucumber, Selenium, JMeter, Gatling
  • Experience in developing testing infrastructure for Distributed Systems, Big Data Platforms and cloud native applications
  • Proficient in Scala, Java, Python, or similar programming language
  • Experience working with Hadoop, Cassandra, Kafka, Spark, Hive or other big data tools
  • Proven experience with Jenkins or similar CI systems
  • Proven ability to ramp up quickly on both existing and new technologies
  • Exceptional analytical and problem solving skills


Description

We are looking for a motivated automation engineer with strong technical background. Someone that has aspirations to build innovative automation solutions that drives quality and reduce time to market for applications.The successful candidate will have the opportunity to solve complex software testing problems involving distributed systems and big data applications. This position entails developing tools and frameworks that integrate with CI\CD pipelines to ensure every application we ship meets the quality standards. If you have a passion for quality, this position is for you. Responsibilities: • Design and develop the testing infrastructure e.g testing tools, libraries, frameworks. The team will leverage these to test the software, services, data platforms as well as the machine learning models built on those platforms. • Integrate the testing tools with continuous integration and continuous deployment systems to shorten the feedback loop. • Create detailed and comprehensive test strategies and plans for testing data pipelines, client\server and mobile applications. • Write different types of tests, such as Unit, Integration, Performance and Acceptance for existing and new projects so as to ensure bug free software is delivered to the specification. • Perform manual testing when required, log defects and provide feedback on product features and specifications • Derive quality initiatives for advocating, educating and evangelizing software quality best practices • Keep abreast of new testing tools and strategies and evaluate the technologies to incorporate into the projects.

Education & Experience

Bachelors in Computer Science or related field or equivalent experience

Additional Requirements

  • Experience with iOS, macOS, app development and mobile test automation
  • Experience working with container orchestration and deployment systems like Docker, Kubernetes, Spinnaker



Back to top