The Software Development Engineer in Test position is a hands-on role that contributes to the success at Esurance by designing and developing automated test processes, scripts and tools to champion the code quality principles for the growing application and system landscape, as it relates to the delivery of our omni-channel customer experience applications. This position would be responsible for operating within fast-paced initiatives, in an Agile lifecycle.
- Contribute to System test methodologies, test plans and highly effective test automation by creating and executing automated system tests to replicate real-world scenarios
- Write code to simulate tests and to build various testing tools, by working alongside other engineers and championing code quality principles; Deliverables will include code builds and documented test results
- Participate in tool analysis, creates proof of concept models, and makes recommendations to support the tools selection process
- Participate in reviews (walkthroughs) of technical specifications and program code with other members of the engineering team, communicating design, requirements, feature set, functionality and limitations of systems/applications to team
- Proactively involve with product managers right from inception through functional validation to launch, while always looking for potential quality issues/bugs and offer triaging and root cause analysis capabilities to the engineers
- Create and setup test scenarios and test data as needed
- Work with various team to promote QA processes, practices and standardization
- in test automation development, using frameworks and tools like Jasmine, Jest, Mocha, Chai, Junit, TestNG, including web UI automation tools like Selenium RC/WebDriver framework as well as REST/JSON APIs
- Working knowledge of the various types of testing, from functional testing to performance and security testing
- Knowledge of White Box Testing practices using tools like SonarQube
- using test case management tools like QAComplete, TCM or TestRail.
- Experience in bug management tools like Bugzilla or JIRA and development environments like Visual Studio or Eclipse
- Working knowledge of software engineering best practices for the full software development life cycle, including coding standards, code reviews, source control, build and release processes, continuous deployment, and test suite development and maintenance
- Working knowledge of application software development lifecycle concepts and test environment and configuration management concepts in an Agile and occasionally in a traditional waterfall setting Ability to work in a group setting and collaborate by providing transparency in test results
- Experience working in Agile/Scrum models Ability to critique work of self and others constructively
- Strong written and verbal communication skills
- Enthusiastic and energetic with an inherent curiosity to break code and stress test it!
Experience / Education
- degree in Computer Science with coursework in algorithms, information systems and basic programming concepts is required OR
- Equivalent industry experience for 2+ years in delivering software test automation practices with exposure at the unit and integration level testing OR
- industry experience for 3+ years as a software engineer building and writing code for various ecommerce and online applications
Java Developer / Engineer