As a Software Development Engineer in Test, you will be implementing a mix of functional, performance, reliability, and end-to-end automated tests to support Mail, Messages, FaceTime, Phone, Safari, AirDrop, ShareSheet and Applied Networking. During the design process you will work with different engineering teams to create robust and valuable tests as well as advocate for testable development practices. Code review and design discussions are a vital expectation of this process. Moreover, we also care deeply for the maintenance and the triage of the test results where you will have the chance to detect and drive complex software issues to resolution as well as developing tools to analyze and report test result trends. Finally, itβs vital to share your story with demos and discussions to continue furthering our obsession with quality.
Responsibilities:
- Design, develop and maintain automation test framework and tests for new features that span across multiple platforms
- Streamline automated test reporting leveraging various communication mediums
- Perform root cause analysis on bugs found via automation
- Investigate issues blocking automated runs and resolve in timely manner
- Ensure scalability and efficiency of the test infrastructure
- Collaborate cross functionally with various teams to achieve strategic quality goals
BS in Computer Science or equivalent
Experience developing in Python, Java, Swift or C/C++ or Objective-C,
Experience in software development lifecycle and development tools like git
Experience in testing and automating APIs, UIs and Native Applications for Mobile and/or Desktop
Experience working with Continuous Integration systems
Proficiency in Swift or Objective-C
Proficiency in XCTest, XCUITest and Xcode
Familiar with databases, SQL, and scripting languages
Excellent written and communication skills
Demonstrated ability to drive an automated testing project
Strong understanding of Quality Engineering methodologies and practices
Ability to build effective working relationships
Proficient in refactoring, test automation, testable and modular code, and build infrastructure