• Software Engineer in Test

    Job Locations US-IA-Iowa City
    Posted Date 3 weeks ago(4/4/2018 4:27 PM)
    Job ID
    2017-1063
    # of Openings
    7
    Category
    Information Technology (Development)
    Travel
    No Travel Required
  • Overview

    ACT is a nonprofit organization helping people achieve educational and workplace success.  Our programs are designed to boost lifelong learning in schools and workplaces around the world. Whether it's guiding students along their learning paths, enabling companies to develop their workforce, fostering parent, teacher, and counselor understanding of student progress, guiding job seekers toward career success, or informing policymakers about education and workforce issues. ACT is passionate about making a difference in all we do.

     

    Learn more about working at ACT at act.org!

    Responsibilities

    The Software Engineer in Test is responsible for developing automated tests and automation frameworks to support ACT’s next generation applications.  The job includes development in Java and/or Python, integrating with Bitbucket for source control, Jenkins for builds, and Docker for virtualization within AWS and utilizing the ROBOT, Jmeter, and Blazemeter frameworks in a continuous integration deployment model.  This role will participate in the Agile process and ensure product quality, robustness, scalability, and consistency.

     

    We have 6 openings and will be hiring at multiple levels based on experience and qualifications.

      

    Typical work-related activities include:

     

    Level I:

    • Use, create, maintain, and enhance automated tests with reusable components that can be leveraged by multiple teams for standard automation tasks
    • Collaborate with Scrum team to support all testing activities – test case creation, test execution, and troubleshooting defects, including activity in consideration of product scalability, reliability, consistency, and performance, as well as leveraging static code analysis tools, and how we support production monitoring
    • Own all testing activities related to Scrum team execution, including planning test execution needs across sprints
    • Actively participate in grooming user stories, sprint demos, and daily Scrums to help establish a Behavior-Driven Development (BDD) approach
    • Recommend changes to ensure quality and performance standards

     

    Level II includes prior level activities plus:

    • Independently design, maintain, and enhance automated tests capitalizing on existing automation frameworks and reusable components
    • Independently collaborate with Scrum team to support all testing activities
    • Proactively own all testing activities related to Scrum team execution
    • Actively participate in design/architectural discussions, grooming user stories, sprint demos, and daily Scrums to help establish a Behavior-Driven Development (BDD) approach
    • Recommend product, infrastructure, or design changes to ensure quality and performance standards

     

    Senior includes prior level activities plus:

    • Independently design, create, maintain, and enhance automation frameworks with reusable components that can be leveraged by multiple teams for standard automation tasks
    • Support junior team members to proactively anticipate and resolve issues across Scrum teams
    • Take responsibility for department success through mentoring, coaching, and advising other team members

     

    Lead includes prior level activities plus:

    • Proactively own the overall quality of the entire automation suite at ACT, including anticipating and proactively planning frameworks and tools to be used across teams
    • Actively participate in process improvement and tool selection discussions and decisions within area of expertise
    • Recommend tools and standards to ensure software quality and performance standards

    Qualifications

    EDUCATION: 

    • Bachelor’s degree in a related area required, preferably in Computer Science, Mathematics, Statistics or Information Systems
    • Or equivalent combination of education and experience from which comparable knowledge and abilities can be acquired

     

    EXPERIENCE:

    Level I:

    • Minimum of one year of experience coding in object oriented languages required
    • Or equivalent experience in test automation scripting

     

    Level II:

    • Minimum of three years of progressive IT experience that includes coding in Java or Python required
    • Experience working in an Agile development environment preferred

       

    Senior:

    • Minimum of five years of progressive IT experience that includes coding in Java or Python required
    • Experience developing automated scripts required
    • Experience working in an Agile development environment preferred

       

    Lead:

    • Minimum of seven years of progressive IT experience
    • Subject matter expertise in one or more of the following required: Java, Python, or performance tools such as Jmeter and Blazemeter
    • Experience in architecting software solutions, and technical design in continuous integration environment required
    • Experience developing complex automation frameworks using OO and modern development languages and techniques required
    • Experience working in an Agile development environment preferred

     

    KNOWLEDGE, SKILLS, AND ABILITIES:

    Level I

      Required:

    • Demonstrated ability to learn new technologies quickly and effectively
    • Understanding of  RESTful API’s
    • Understanding of relational or no-SQL databases (MongoDB, Raven)
    • Ability to use JSON and/or XML
    • Ability to work as part of a Scrum team, following SAFe agile practices
    • Strong communication and collaboration skills
    • Ability to own all testing activities related to Scrum team execution
    • Results-oriented and able to work across the organization
    • Should be comfortable working in a rapidly transforming organization

     

      Preferred:

    • Knowledge of Java or Python
    • Working knowledge of Agile development
    • Knowledge of version control such as Git
    • Understanding of how to integrate code into automated deployment pipelines
    • Knowledge of test automation frameworks such as Robot
    • Understanding of performance testing frameworks such as Jmeter and Blazemeter
    • Knowledge of static code analysis tools such as SonarQube, HPFortify, and Crucible
    • Knowledge of production monitoring solutions such as NewRelic, Tivoli, App Dynamics, SCOM, and synthetic transaction scripting

     

    Level II includes prior level knowledge, skills, and abilities, plus:

      Required:

    • Demonstrated ability to develop automated scripts
    • Strong understanding of Java and/or Python
    • Ability to integrate code into automated deployment pipelines
    • Strong knowledge of how to test RESTful API’s
    • Strong knowledge of version control such as Git
    • Demonstrated relational and/or no-SQL database skills (MongoDB, Raven)
    • Demonstrated ability to proactively own all testing activities related to Scrum team execution, including anticipating and proactively planning test execution needs across sprints

     

      Preferred:

          Strong understanding of performance testing frameworks such as Jmeter and Blazemeter

     

    Senior includes prior level knowledge, skills, and abilities, plus:

      Required:

    • Demonstrated ability to develop complex automation frameworks using OO and modern development languages and techniques required
    • Demonstrated ability to integrate code into automated deployment pipelines required
    • Demonstrated ability to support, mentor, coach and advise other team members required
    • Ability to develop innovative solutions to technical issues required
    • Demonstrated ability to proactively own all testing activities related to Scrum team execution, including anticipating and proactively planning test execution needs across sprints

     

       Preferred:

    • Experience in architecting software solutions, and technical design in continuous integration environment
    • Demonstrated success in new technology implementation

     

    Lead includes prior level knowledge, skills, and abilities, plus required:

    • Demonstrated ability to lead technical professionals and influence product stakeholders
    • Demonstrated success in new technology implementation
    • Ability to lead team through changes in a rapidly transforming organization
    • Expertise in static code analysis tools such as SonarQube, HPFortify, and Crucible
    • Expertise in production monitoring solutions such as NewRelic, Tivoli, App Dynamics, SCOM, and synthetic transaction scripting

     

     

    COMPENSATION:

     

    Starting salary commensurate with qualifications. Excellent benefits and work environment. 

    Options

    Sorry the Share function is not working properly at this moment. Please refresh the page and try again later.
    Share on your newsfeed

    Connect With Us!

    Not ready to apply? Connect with us for general consideration.