Software Engineer in Test - Retail Store Apps
Santa Clara Valley (Cupertino), California, United States
Software and Services
Imagine what you could do here. At Apple, great ideas have a way of becoming great products, services, and customer experiences very quickly. Bring passion and dedication to your job and there's no telling what you could accomplish. Retail Applications team has immediate opening for an engineer with solid Test Automation experience. The ideal candidate will be responsible for implementing automation tests for all layers of our applications, design and develop tools and frameworks to enable the reduction of manual testing. This person will also be responsible for coordinating with project managers, engineers and release team for certifying projects for release.
- Hands-on experience in writing and managing software system level automation tests including functional, stress and stability and product performance testing.
- Experience developing automation frameworks and tools.
- Expertise in Java (J2EE / J2SE) and related technologies: Spring Framework, JUnit / TestNG
- Strong Understanding of REST and demonstrated experience with REST APIs testing/automation
- Experience maintaining and scaling up automation infrastructure
- Strong experience in using open source tools like Git, Jenkins
- Experience in containerization (Docker) of server apps
- Experience developing iOS apps using Swift
- Experience with XCUITest and Xcode
- Exposure to cloud solutions (such as AWS) is a plus
- Experience in testing middleware/queues such as for Kafka, JMS
- Strong understanding of relational and non relational (NoSql / distributed) database
- Experience with performance testing tools such as JMeter and Gatling
- Must have knowledge and understand fundamental concepts of Continuous Integration, Automated Testing, User Acceptance Testing
- Experience working with Agile teams and use of Agile project tools.
This position requires a motivated, highly-technical engineer that is passionate about building quality software and is assertive in requiring a high level of quality. You will build the automation framework, automation tools, and develop automation scripts for validating various systems and applications. You will build functional automation scripts, both UI & API, to integrate with our CI/CD pipeline, while ensuring proper test coverage. You will help drive the innovation in test development of all our apps, and work closely with development and QE teams to identify and act on the opportunities for automation and test tools. You will work collaboratively with other manual and automation to develop effective testing strategies as well as quality metrics for new and existing features. Key responsibilities of the job include: Developing and maintain clean test automation frameworks Developing test suites in cooperation with other team members as well as engineering that cover new and existing features. Working efficiently with cross-functional teams, understand product requirements, design test strategy and plans and implement end-to-end tests Building and maintain automated tests Working collaboratively with other QA engineers on-site and offshore to develop effective testing strategies as well as quality metrics for new and existing features
Education & Experience
Bachelor’s degree in Computer Science/Computer Engineering or equivalent experience