Job Description

Job Title: Software Development Engineer in Test

Location: Sioux Falls, SD (Hybrid work environment)

About us:

For more than 40 years, SONIFI has provided guest technologies and professional services to help hoteliers improve guest satisfaction, simplify operations, and increase revenue. Our innovations have led the hospitality industry through many changes in guest behaviors, preferences, and technologies – and we continue to lead the way in creating more connected, smart digital hospitality experiences both now and in the future.

SONIFI’s culture of innovation enables us to be one provider who can deliver seamless guest experiences across a variety of solutions, including guest Wi-Fi and internet services, engaging interactive TV platforms, the widest entertainment offering in the industry, and smart device and system integrations.

About the Role:

A Software Development Engineer in Test (SDET) is expected to leverage their software engineering experience to build test automation solutions to maximize test coverage and efficiency as well as drive and perform manual test execution where needed, support merging and deployment of code within continuous integration/continuous development (CI/CD) pipeline, and verifying the release quality to ensure that functionality, usability, performance, and security are meeting expectations; as well as customer confidence. SDET will act as a risk-driven quality assurance professional, escalating quality issues and concerns in a timely manner, and provide suggestions for improvement to the team, management, and stakeholders. Contribute to process improvement initiatives to increase quality and testing efficiency. They work to support other testers and developers on the team and lead by example. SDET at this level can independently deliver medium to large tasks. They use best practices to deliver high-quality testing results and continue to push their knowledge.

Responsibilities:

  • Develop and maintain the automated test harness using known frameworks.
  • Create the core test harness.
  • Create the setup and tear-down of the environments.
  • Integrate the test suites in the existing CI/CD pipelines.
  • Create and update test cases based on the different test scenarios.
  • Create new test cases leveraging the test harness and adding additional setup and tear downs when necessary.
  • Convert acceptance criteria into automated tests.
  • Day-to-day review the automated test failures to determine if it is a harness issue or a product defect.
  • Drive and perform test execution, particularly in verifying the release quality to ensure that functionality, usability, performance, and security are meeting expectations.
  • Build and identify test automation solutions and tools to maximize test coverage and efficiency.
  • Write maintainable, reliable, reusable, secure, performant code to support automated testing.
  • Review and advise testing methods and best practices for developers and testers.
  • Participate in technical discussions within the development and QA team with other groups associated with assigned projects.
  • Advocate for shift-left approach to testing and be the voice of quality in a highly collaborative team.
  • Drive test-related activities early in a sprint and maximize working in parallel with developers.
  • Develop and maintain tools and reporting infrastructures for visualization of key test metrics.
  • Work closely with development team to review acceptance criteria, prepare test plans & test cases, execute tests & report the results.
  • Work with our DevOps toolset and extend the automation testing aspects as needed (building dashboards, scripting)
  • Manual tests when automation is not feasible yet.
  • Design and implement test plans and test procedures and scripts to certify the delivery of high-quality software.
  • Provide testing status, generate reports, track metrics, and create test closure reports.

Qualifications:

  • Proficiency in at least one programming language (Java, JavaScript, Python) used for test automation, with the ability to write clean, maintainable, and efficient code. Additionally, familiarity with object-oriented programming principles, design patterns, and advanced language features is preferred.
  • Ability to design, develop, and maintain robust and scalable test automation frameworks tailored to the specific needs of the project.
  • In-depth understanding of web technologies and protocols, including SOAP, REST, front-end frameworks (React/Angular) and browser developer tools for debugging and profiling.
  • Ability to set up and configure complex test environments, including virtual machines, containers, and cloud infrastructure. Proficiency in infrastructure as code (IaC) tools like Terraform or CloudFormation is desirable.
  • Knowledge of advanced cloud services and architectures, including serverless computing, microservices, auto-scaling, and cloud-native development principles.
  • Experience with advanced CI/CD practices like Blue-Green deployments, canary releases, infrastructure automation and pipeline orchestration are desirable.
  • Proficiency in using advanced features of version control systems, including branching strategies, resolving complex merge conflicts, and implementing/contributing to branching models like Gitflow.
  • Proficiency in containerization technologies like Docker and container orchestration platforms like Kubernetes, including deploying and managing applications in containerized environments is desirable.
  • Mastery of SQL (Structured Query Language) for querying, updating, and managing relational databases. (MySQL, PostgreSQL, NoSQL)
  • Proficiency in performance testing concepts and tools to assess the scalability, reliability, and responsiveness of software applications under various load conditions is desirable. (JMeter, Gatling)
  • Ability to implement comprehensive test reporting mechanisms and analyze test metrics to provide insights into the quality and performance of software products.

Benefits:

We offer a competitive salary and a comprehensive benefits package including health, dental, vision, 401(k) with employer match, paid time off (PTO), flexible work arrangements, professional development opportunities, pet insurance, and on-demand pay. The final salary will be determined based on factors such as experience, education, and location.

#Engineering

Application Instructions

Please click on the link below to apply for this position. A new window will open and direct you to apply at our corporate careers page. We look forward to hearing from you!

Apply Online