QA Engineer / Developer in Test (IIoT) - Java
Our company is working on the largest implementation project in the world of Industrial IoT based on Predix IIoT platform (see predix.io).
The system collects, parses and ingests petabytes of data from millions of sensors into various internal databases for the purpose of data analysis and reporting. It uses machine learning and predictive analytics.
We follow Agile principles and The Twelve-Factor App methodology, rely on development teams’ decisions, collect and share knowledge, continuously evolve and apply best practices and industry standards.
We are growing very fast and are looking for QA Engineers (Java).
What is your job:
As a QA Engineer you are a member of development team. Your job is to design, develop and maintain test scenarios and codebase for manual and automated testing of components, features and whole system as well as share knowledge within your team and organization.
You have experience with testing complex scalable systems, preferably microservices, container based virtualization, asynchronous messaging, cloud technologies and platforms.
You work closely with other team members, Scrum Master and Product Owner.
Development team is self-organized cross-functional team of individuals responsible for the full cycle of building and customization of applications running on Predix platform.
What you do:
- Design and develop scenarios and cases for manual and automated tests using Java
- Develop mocks and fixtures for testing of microservices
- Define and maintain test coverage and ratio
- Perform smoke, integration, regression, acceptance and performance testing
- Participate in planning, implementation, testing and release activities
- Share and apply knowledge and best practices within the team
What we expect from you:
- Bachelor’s Degree in Computer Science or in “STEM” Majors (Science, Technology, Engineering and Math) with at least 1.5-year experience in test automation using Java
- Experience in testing of complex systems built with microservices architecture and SPA frontend
- Strong experience with (or at least solid knowledge of) Selenium and TestNG
- Good knowledge of SQL (preferably PostgreSQL dialect)
- Good understanding of CI/CD principles and experience with tools like Jenkins, gitlab-ci or Teamcity
- Experience with isolated testing of components or microservices; building mocks, generators and fixtures for testing purposes
- Understanding of microservice architecture and RESTful principles
- Experience with Linux, bash scripting, git
- Understanding of HTTP/HTTPS, TCP/UDP, virtualization and containerization
Good if you are experienced with:
- Good if you have experience with Python, or Clojure, or Groovy - in addition to Java
- Troubleshooting and root-cause analysis of defects
- Virtualization and containers (VMware/Xen, Docker), cloud technologies and platforms such as OpenStack/Kubernetes/AWS/GCP/Azure
- Deployment tools (Ansible/Salt/Chef/Puppet)
- JMeter or other performance testing tools
- Load and performance tests
More about you:
- A quick learner who loves to apply new technologies and tools
- “Can Do” attitude
- Can travel up to 10% of your working time
- Team player with strong oral and written communication skills
- English: if you have read all the stuff above and understood it, your English is good enough.