The Senior QA Engineer is responsible for the improvement of the quality of our internally developed software systems. This engineer owns and leads all testing activities, gives guidance to other test and developer engineers on the testing strategy, does research and design for the building and maintaining test automation frameworks, and can work on the research, design, and implementation of software that is a part of team domains. The Senior QA Engineer is responsible for ensuring compliance with new and existing quality standards, implementing quality management actions, and contributing to the development of company policies and procedures.
- Actively works with engineering teams on standardization of QA processes and tools.
- Drives and leads all testing activities for highly complex and distributed backend systems to support core products, including test planning and strategy, test automation, mock service development, and load testing.
- Creates testing best practices and ensures they are used within teams. Leads the process of introducing new QA approaches and works with teams to implement them.
- Knows the system under test inside out, proactively analyzes feature requirements, and points to potential testing challenges.
- Designs and maintains robust test automation frameworks on multiple application platforms.
- Writes functional and non-functional test scenarios.
- Analyzes performance requirements and defines performance tests.
- Based on the team priority – researchs, designs, and implements product software.
- Investigates and troubleshoots potential environment and/or test issues.
- Works closely with Operation and Release teams on planning, deploying, and testing new software releases.
- Contributes to overall Quality Assurance best practices, strategy, and methodology.
- Develops test strategies, creates test plans, and executes test cases both manually and via automation.
- Coaches and mentors developers in testing best practices and provides code reviews.
- Cooperates with other engineers to produce high quality and resilient products.
- University Degree or equivalent work experience
- 4+ years of test automation experience or software development with OOP (Java, Python, …)
- Experience writing automated functional tests using popular test automation frameworks with TDD/BDD approach
- Experience writing and executing performance tests using any popular performance test tool (JMeter, Locust, Gatling…)
- Experience with CI/CD flows and practices
- Excellent skills and knowledge of Computer Science fundamentals, REST, network protocols, Linux, OS basics, relational and non-relational DB systems
- Solid understanding of design patterns and best practices
- Strong background in software development and processes
- Ability to write advanced database queries (select, insert, update, and delete)
- Mentorship experience in the QA domain
- Strong understanding of QA principles and methodology with the ability to apply this understanding directly to specific problems.
- Strong analytical and problem-solving skills with attention to detail
- Able to create automated tests using common frameworks and languages
- Experience testing software in a virtualized environment and common open-source software packages
- Strong understanding of AGILE and SCRUM methodologies
- Excellent oral and written communication skills
- Ability to wear multiple hats – no job being too small or too large
- Degree in Computer Science or equivalent experience
- Experience testing highly distributed backend systems based on various network protocols
- Experience building highly optimized and multi-threaded automation frameworks
- Experience with cloud computing (e.g., AWS)
- Object-oriented programming experience
- Exposure to large traffic sites or services
- Experience with JIRA, or other ticketing/bug tracking systems
- Release management experience
- Exposure to NoSQL technologies (MongoDB, Redis, etc)
- Understanding of Message Queuing Systems (RabbitMQ, Qpid, etc)
- Git and GitFlow experience
- Experience in one of the preferred languages Python/C++
- Knowledge of basic Linux system administration tasks
- Able to understand and contribute to the broader picture – overall solution architecture and interfacing to the owned parts
TeleSign connects and protects online experiences with sophisticated customer identity and engagement solutions. Through APIs that deliver user verification, data insights, and communications we solve today’s unique customer challenges by bridging businesses to the complex world of global telecommunications.
TeleSign is proud to be an equal opportunity employer. We believe our differences help us create a better workplace, a better product, and a better community. We do not discriminate on the basis of race, color, ancestry, religion, national origin, marital status, pregnancy, sex, sexual orientation, gender, gender identity or expression, age, genetic information, disability, military or veteran status, or any other basis protected by federal, state or local law, ordinance or regulation.
TeleSign is an Affirmative Action Employer and as part of the commitment to AAP, it will seek to ensure affirmative action to provide equality of opportunity in all aspects of employment, and that all personnel activities, such as the recruitment selection, training, compensation, benefits, discipline, promotion, transfer, layoff and termination processes remain free of illegal discrimination and harassment based on protected characteristics.