Software Engineer, Test at Genesys (Indianapolis, IN) (allows remote)

Genesys (Indianapolis, IN)

Software Engineer Full Time

A Software Engineer, Test is a dependable member of the Testing organization who contributes mostly to the efforts of a single development team. SETs have proven their ability to work independently on simple features to assess the scope of testing, implement automated system-level tests, and maintain a CI pipeline by triaging and optimizing tests. SETs assist Sr SETs with tasks to improve our testing frameworks and processes.


Candidates for this position are able to code effectively in at least one programming language and can quickly learn new techniques and languages. While SETs primarily focus on the testing effort of a single team, they also have the drive to understand how their work integrates with other groups in order to provide value to our customers. SETs use various tools to troubleshoot failing tests and issues with system stability and performance.


SETs understand the needs and processes of other departments including Development, Product Management, Sales, Support, and Professional Services. Good SETs have a strong understanding of their development team’s processes, priorities, roadmap, and current feature work.


SETs develop into Sr SETs by proving their ability to assess risk and identify testing requirements for complex projects. They advance by providing helpful feedback on code reviews, leading the charge to maintain an efficient testing pipeline, and by acquiring a strong understanding of how PureCloud services integrate. Candidates for promotion beyond SET are those who show a strong understanding of testing philosophy and the ability to gain respect and lead others toward positive results.


Major Responsibilities/Activities:


· Triage failed automated test executions and report defects when appropriate


· Maintain automated test jobs in an automated deployment pipeline


· Coordinate bug hunts to gather user feedback for new features


· Identify useful test cases that identify and isolate faults


· Automate regression test cases that valid product functionality and stability


· Contribute robust, well architected solutions to the shared test framework


· Build trust and maintain relationships with team members of product management and development


· Participate in design and code reviews to help mentor other team members and to influence the technical direction of the testing department


· Perform exploratory testing to identify high-risk areas, refine requirements, and isolate bugs to increase testability of application


· Coordinate test efforts for projects involving multiple teams to ensure appropriate test coverage


· Expert in the architecture, design, and customer use cases for their team's services


· Identify acceptance criteria for complex projects and determine priorities for test automation to balance operational efficiency with sufficient test coverage


· Identify areas of risk for performance, longevity, and architectural robustness by designing and running longevity and destructive tests


· Assist support engineers with escalated customer issues by reading logs, explaining intended behaviors, and identifying defects


Minimum Requirements: A Bachelor of Science degree in Computer Science (preferred) or related degree or equivalent in work experience.


The following qualifications are required:


· Intermediate proficiency of the following


· Ability to analyze and interpret data using software analytics services such as New Relic and SumoLogic to monitor services and diagnose problems


· Knowledge of object-oriented programming (OOP) using programming languages such as Java and C#


· Knowledge of object-oriented design patterns


· Ability to use version control systems such as GitHub or Bitbucket


· Ability to use delivery pipeline automation and configuration tools such as Jenkins


· Knowledge of service-oriented architecture (SOA)


· Knowledge of the Software Development Life Cycle (SDLC)


· Knowledge of multi-tier web applications and technologies such as HTTP, JavaScript, and JSON in a service-oriented architecture (SOA)


· Knowledge of agile testing methodologies and best practices for continuous delivery (CD)


· Understand how to use application frameworks such as Spring and Express to develop applications


· Effective written and verbal communication skills


· 3 to 5 years of industry experience


Pluses:


· Web user interface test automation with Selenium


· Knowledge of Amazon Web Services (AWS) such as EC2 and S3


· Telephony message and call flows with SIP, XMPP, and Jingle


Genesys is an equal opportunity employer committed to diversity in the workplace. We evaluate qualified applicants without regard to race, color, age, religion, sex, sexual orientation, gender identity or expression, marital status, domestic partner status, national origin, genetics, disability, military and veteran status, and other protected characteristics.