Software Development Engineer in Test
Software Development Engineer In TestThe Software Development Engineer in Test is primarily responsible for developing, maintaining, and executing automated tests to validate new and improved features, create necessary framework additions, and to expand test coverage of existing product areas. This role focuses on contributing fixes and new tests to automated test suites, performing PR reviews of automated tests submitted by team members, and assisting with the monitoring of nightly automation run reports. This is a full-time role with remote, on-site, or hybrid opportunities available.Responsibilities include designing and developing automated test plans and test cases that cover functional requirements for desktop, front-end (Web), back-end (API), and mobile applications; configuring Continuous Integration/Continuous Development servers (Jenkins), including creating and maintaining jobs/pipelines to coordinate builds with automated testing; performing PR reviews of automated tests submitted by other team members to ensure code quality and coverage; ensuring the stability of the nightly automation runs through both proactive and reactive measures, and leading the monitoring of nightly automation run reports; demonstrating sufficient proficiency in relevant Ignition product areas, and adequately testing all areas; maintaining a proficient understanding of the company, our primary software deliverable and its purpose (Ignition), and our customer base; collaborating with Developers, Product Managers, and QA Generalists to clarify requirements and provide feedback on functionality, usability, and performance; identifying, documenting, and tracking defects using issue tracking tools, ensuring clear communication and resolution processes; and staying up to date with industry trends, tools, and technologies to continually enhance testing strategies.Requirements include a Bachelor's degree in Computer Science/Engineering OR at least 4 years experience working in a related field; at least 2+ years of experience in a test automation engineering role; test automation framework experience in one of the following areas: familiarity with writing automated test cases for Web application testing frameworks (Selenium WebDriver, PyTest, Cypress, or Playwright); familiarity with writing test automation for Desktop/Swing applications with testing tools like (QFTest or UFT); experience with executing manual tests on mobile devices (iOS and Android) using actual devices or emulators; good programming knowledge proficiency with at least one language, including understanding of functions, conditional statements, and basic object oriented concepts (Python, Java/JavaScript, C++, or TypeScript); experience with coding in at least one modern IDE (Eclipse, IntelliJ IDEA, PyCharm); familiarity with the SDLC (Software Development Lifecycle) and each of the phases; good proficiency with source control management systems, such as Git, and common usage (clone and checkout of repositories and specific branches, commits and merge conflicts); experience with setup and querying of SQL databases (MS SQL Server, MySQL, similar); familiarity with Windows, Linux (Ubuntu), and macOS platforms, including working from the command line, and debugging issues with applications running as a service; experience with deploying applications using virtualization software (VMWare, Docker Desktop), including creating images, debugging running containers, and use of persistent data (volumes); and experience with bug tracking systems and writing proper bug reports.