The Senior Software Development Engineer in Test will have a variety of responsibilities related to products developed by the Software Engineering group. The responsibilities include creating and executing manual and automated test plans and cases, analysis of test plans for potential automation, application installation and configuration, and system integration and validation. Responsibilities will also include developing automated test suites and contributing to automated test framework. Testing will be performed on back end infrastructure systems including Linux applications and Databases, web interfaces, mobile devices, and set top boxes.
MAJOR DUTIES AND RESPONSIBILITIES
Contributes to the planning, configuration, and testing of the systems as directed.
Develops and executes comprehensive manual and automated test suites.
Contributes to the automated test framework using best practices including operational, performance, and feature enhancements.
Mentors and trains lower level engineers including encouraging best practices for software development.
Participates in code reviews for created tests and framework changes.
Contributes to documents related to test system architecture and results reporting. Contributes to documentation for operations and deployment.
Troubleshoots and resolves advanced problems. Helps gather diagnostic information for analysis.
Attend meetings as necessary for testing purposes.
Provide succinct and accurate documentation of issues.
Has firm understanding of the product architecture, technology, dependencies and interactions with other components.
SME within multiple disciplines, cross trains other team members.
Take ownership of a product and work in-depth with the development team to perform gap analysis, create comprehensive end-to-end test plans, identifying automating test cases.
Mentors and trains lower level engineers.
Proactively collaborates with other teams on integration.
Works beyond the scope of given task.
Skills/Abilities and Knowledge
3+ years of experience using command line Unix/Linux.
5+ years of QA experience in systems integration.
- Demonstrated experience creating test suites from design specifications, user stories and UI/UX design documents within an Agile environment
- Experience with defect tracking systems such as Jira
- Experience using multiple software test methodologies.
- Knowledge of the SDLC
5+ years of development or automated test programming experience.
- Demonstrated expertise with Java & Java open-source tools and frameworks (Spring, JUnit, TestNG, Selenium, MongoDB).
- Demonstrated expertise with build & development tools (Maven, Jenkins, Eclipse, SONAR).
- Demonstrated experience with dynamic languages (Ruby, Groovy, Python) and frameworks (Rails, Grails).
- Experience using code management tools (Perforce, JIRA).
- Ability to quickly learn DSLs and apply that knowledge to develop scripts using the DSL.
- Demonstrated expertise with object-oriented analysis and design, design patterns and SOA architecture.
- Experience working with medium to large software teams.
5+ years of experience troubleshooting complex systems using test tools, network management systems and error reporting systems to determine and resolve problems.
3+ years of experience with Oracle and SQL/noSQL
Knowledge of web services (SOAP/ReST) and their associated data formats
Experience using test tools such as Wireshark, Charles, SOAPUI, ReST Clients, etc.
Basic IP networking knowledge.
Understanding of iOS/Android mobile devices from a user perspective is a plus
Strong communicator (written and verbal): ability to read, write, speak and understand English.
Ability to focus on deadlines and deliverables.
Self-starter, self-motivated, driven individual.
Ability to read and comprehend requirements for testing.
Ability to analyze and assist in resolving defects.
Determines and develops the best solutions to problems with limited direction.
Works independently to solve technical problems; consistently produces significant results; self-motivated and initiator; sets and achieves goals.
Possesses in-depth knowledge of the practical application of engineering technology. Uses broad application of established principles & theories
Ability to work well with shifting priorities.
Keen attention to detail.
Display professional, positive, and approachable attitude/demeanor and discretion.
Strong organizational skills.
Proficient in Microsoft Office applications (Word, Excel, Outlook)