Software QA Engineer
The Apple Services Engineering (ASE) team is one of the most exciting examples of Apple's long-held passion for combining art and technology. These are the people who power the App Store, Apple TV, Apple Music, Apple Podcasts, and Apple Books And they do it on a substantial scale, meeting Apple's high expectations with dedication to deliver a huge variety of entertainment in over 35 languages to more than 150 countries! These engineers build secure, end-to-end solutions. They develop the custom software used to process all the creative work, the tools that providers use to deliver that media, all the server-side systems, and the APIs for many Apple services. Thanks to Apple's unique integration of hardware, software, and services, engineers here partner to get behind a single unified vision. That vision always includes a deep dedication to strengthening Apple's privacy policy, one of Apple's core values. Although services are a bigger part of Apple's business than ever before, these teams remain small, forward-thinking, and multi-functional, offering greater exposure to the array of opportunities here!
We are looking for a Quality Assurance Engineer to join our group in a hybrid black box/white box role.Responsibilities include; performing functional, regression, ad-hoc and compatibility testing of ASE Storefronts on MacOS, iOS, tvOS and Windows. Day to day work involves bug reporting and isolation, test plan documentation, writing and maintaining test case automation as well as working closely with other teams (engineering, project management, etc.). This position demands a self-motivated individual with strong technical and communication skills who can contribute in a team environment.
The ideal candidate will possess exceptional analytical skills in test case design and bug diagnosis. Be dynamic and prepared to test/regress a high volume of changes on a day-to-day basis. Demonstrate excellent bug reporting skills and ability to communicate clearly with third parties. Possess leadership skills/qualities.
Candidate should possess the ability to implement automated tests in an existing framework and also have the desire to perform end to end black box testing with a keen focus on the customer experience.
- Proven experience in black box testing Client-Server products with a focus on Server/API testing
- Demonstrated ability to write automation in Python
- Experience in testing RESTful APIs
- Proficiency in an object-oriented language like C#, Java, JavaScript, Perl, Ruby, or Swift
- Experience traversing Unix directory structures; use basic Unix commands to scrape log files
- Experience scrapping customer logs and web searches to design tests cases as end user would use it
- Solid knowledge of internet protocols, web proxies, caching and other Web related fundamentals
- Thorough knowledge of Mac OS X, Apple mobile products, and Windows platforms Strong analytical, problem solving and creative thinking skills
- Bachelors degree in Computer Science or/and 5 years relevant experience
- 5 years experience in gray box QA. Comfortable and adaptable in a fast-paced environment
- Acquaintance with continuous integration/deployment
- Familiarity with static code analysis tools and load testing
- Dedication to user-focused design & high quality technology
- Experience with basic database queries and UI testing skills
- Strong commitment to technical quality assurance as a key part of the software development cycle
- Willingness to work cross-functionally with other teams to make all products and deployments seamless for our customers
- Excellent verbal and written communication
- Experience performing code reviews
- Ability to lead projects and contribute as part of a team. Strong leadership skills
- Familiarity with Lucene/Solr
- Familiarity with statistical analysis tools