As the Quality Assurance (QA) Software Engineer, you will assist with the application development of key organizational systems for our company based in Salt Lake City. Sera Prognostics requires ongoing software enhancements to facilitate the processing of laboratory developed tests. The combination of in-house developed and off-shelf purchased systems require the technical expertise of an experienced QA Software Engineer to assist with the analysis, design, development, and implementation of a comprehensive QA process for testing these systems as we accommodate the current and future growth needs of our organization.
- Contribute to the growing software development team and assist with the continuous improvement of the team’s methodology for establishing best practices of developed applications.
- Develop and execute automated tests, and manual test cases and investigate and assist in problem analysis, as well as the resolution of delivered software components.
- Identify, evaluate and recommend QA process and activities supporting software engineering in an agile team environment.
- Participate in the design and development of a common, scalable, reusable, easy-to-maintain and effective testing automation and execution framework.
- Contribute to the adoption and success of continuous integration and unit testing practices with the software engineers on your team.
- Document software issues and enhancement requests and assist development with concise and detailed steps for duplication of the defects found.
- Perform manual and automated functional, integration, and regression tests.
- Provide maintenance of systems through programming of software enhancements and/or development of new software solutions across multiple programming languages.
- Assist the development team in establishing best practices and identifying current technology solutions, programming languages, tools, etc.
- 4+ years of experience with ensuring Quality in a software delivery environment.
- 4+ years of experience in Quality Assurance (manual and automation testing required).
- 4+ years of experience with one or more test case management, bug tracking and test automation tools required (i.e. Confluence, IntelliJ, Jenkins, JIRA, LoadRunner, Postman, TestLink, Rest-Assured, Sauce Labs, Selenium, SoapUI, VS Code or similar).
- 3+ years of experience programming with .NET with hands-on experience in a multitude of domains.
- Consuming and understating requirements in an agile environment, business analysis, database development, quality engineering, business process development and refinement, and process mapping.
- Direct experience as a software QA advocate and advisor to the product development team
- Strong knowledge of the C# language along with associated frameworks such as Visual Studios, WPF, WCF, WebAPI, MVC, XAML, etc.
- Experienced with various relational database management systems, (i.e. SQL Server, Oracle, MySQL, etc.), and related languages (i.e. PL/SQL, T-SQL, etc.).
- Familiarity with business ecosystems such as Salesforce.com, Microsoft Azure (including DevOps), AdvancedMD, etc.
- Understanding of Object-Oriented design patterns and best practices, SaaS, REST and Cloud Architecture (AWS).
- Experience with web services (REST & SOAP, JSON & XML, etc.).
- Exposure and understanding of existing, new and emerging technologies, and processing environments.
- Strong organizational skills, attention to detail and the ability to work between multiple projects with tight deadlines.
- Demonstrated ability to establish relationships and build rapport to communicate with colleagues at all levels so that issues can be uncovered, and needs identified.
- Excellent oral and written communication skills with the ability to communicate to a technical and non-technical audience.
A particularly successful candidate will also possess the following:
- 4 – 6 years of experience in developing QA solutions built for testing applications in the Microsoft .NET platform
- 3+ years’ experience developing systems in the .NET language.
- Extensive experience with technology planning, development, implementation, testing, and maintenance.