Our company and culture
At Flooid, welove our culture it has helped us achieve some amazing things. Passionate about service, we're on a mission to revolutionize our colleagues' and customers' experiences by employing experts in engineering that want to be part of our team.
Flooid is a great place to work because of the people we employ. Fun, professional and supportive, we want like-minded individuals who love to love their jobs. We are more concerned about contribution than job title, and we encourage collaboration and openness.
Through the COVID pandemic, we have accelerated the adoption of remote working principles and currently employ a #RemoteFirst consideration to all roles we employ. That doesn't mean #TogetherNever but it means you might only need to work in the office when it adds value or is part of building and improving our culture.
We're an energetic group of people that have customers' needs at the heart of what we do and a focus on continual quality improvement in everything we do. We have great success in what we've done and an exciting strategy for where we are heading.
The role as a Software Developer in Test (SDET) is to contribute to the strategic approach as part of our Quality Engineering team, playing a pivotal role in the transformation necessary to drive an increase in the adoption of automation test coverage.
The SDET will be responsible for implementing automation test and test frameworks in an agile team, working to improve the continuous integration pipeline and automating all parts of the software engineering process, you will also be expected to perform manual testing activities when automation is unable to be performed.
Your role will require thinking "outside of the box" to understand the various scenarios and configurations that Flooid software can be deployed with in real-world retail environments to ensure customer quality is maintained.
The terms of Quality Engineering and Assurance and the difference between them can lead to confusion. We are moving heavily to Product based delivery but above that still have some dedicated and bespoke Project implementations. We are working towards an approach where Quality Engineering will reside with the Product teams and Quality Assurance more with the Project teams. Our view of the difference between the two definitions is:
Quality Assurance is having the certainty of the product's quality prior to release to the end user, safeguarding requirements are met and that the user experience is of high value to the customer.
Quality Engineering is automatically designing, structuring and developing quality measures into the creation of the product ensuring the quality is consistent and continual throughout.
We have a nucleus of Quality Engineering that we are looking to grow from in the coming months and into 2021.
Having great skills and experience is important to us but we also want the right person that has the right DNA to be part of the Flooid Engineering and has the drive to support our automation practices. The right people will:
- Self-start in the work they do but make that work visible
- Visualize work to the leadership team and wider organization
- Have a pro-active approach to workload and demonstration of completed tasks
- Demonstrate technical skills but also remain close to strategic goals
- Apply QA and QE strategy with pragmatism
- Participate in the transformation from manual to automation testing
- Be pragmatic to know where to automate and where to improve existing process
- Show collaboration expertise with great communications
- Work well within the team they are part of
- Build and foster a powerful team working environment
- Have proven coaching expertise
- Develop both QA and QE people
- Actively participate in the QA & QE Guild running kata sessions and events, leading upon request
- Be seen as an engaging communicator through all channels
- Be a strong team collaborator
- Takes on work that will challenge their expertise
- Working as part of cross functional, passionate agile project team to ensure quality is driven into the heart of the development process from requirements definition through to delivery.
- Designing, developing and supporting frameworks for our test infrastructure and providing automation expertise to our development teams.
- Researching, recommending and implementing tools as needed with the goal of increasing automation.
- Mentoring team members and developers within other teams on test automation.
- Automating documentation and maintaining a robust log of all test cases and test results.
- Ensuring all tests are executed and give regular feedback to the team lead on the status of quality.
- Conduct code reviews of peers in the QE & QA space.
- Test planning and estimation as part of Agile approach.
- Setting up and maintaining the QA test environments.
- Identifying Tester tasks for new user stories during planning sessions.
- Performing manual exploratory testing and executing regression tests that cannot be automated
- Take ownership of automated regression suites
- Constantly reviewing and improving the way we automate and deliver quality
We want our people to embrace opportunities and to grow with our business. Although this is a general summary of the principle responsibilities of the role and the level of knowledge and skill typically required, you may get involved in other activities and you should therefore not consider this to be an exhaustive list.
Skills and experience
To perform the role effectively we are looking for someone that can evidence their expertise in as many of the following technical and soft skills areas as possible:
Technical Skills/ Experience
- From a QA perspective the tools that we're seeking experience of working with are:
- Zephyr JIRA Integration
- Windows & Linux Environments
- Oracle VirtualBox
- Specifically, on Volume & Performance tooling:
- Tools for API testing:
- Within the QE space we're looking for experience with these development languages:
- Experience of writing Java based automation
- Knowledge of Scala to support Gatling
- Bespoke internal tool AutoVera supporting Point of Sale, this encompasses:
- Selenium Webdriver API
- Gherkin Syntax
- We use the IntelliJ IDE for the creation of automation code and are in the process of migrating from Mercurial to Git
- The testing techniques, methodologies and process that we favor are:
- TDD this is the domain of the software engineers
- BDD Behavior Driven Development
- DDD Domain Driven Design
- Page Object Model
- Fail Fast Small incremental independent tests
- Experience of building test infrastructures using containerization technologies such as Docker and working within continuous delivery / continuous release pipeline processes.
- Experience of testing enterprise applications deployed to cloud environments such as AWS, GCP or Azure.
Soft Skills/ Experience
- The role requires someone to be passionate and skilled in terms of experience of QE whilst understanding QA practices.
- A proven track record in ideally more than one place of moving the needle more to automated test coverage from manual effort and realizing the business benefits
- The role requires someone to have a large passion for quality assurance and the ability to think of the edge cases and account for these
- We will expect that the person taking the role has experience of working within both an Agile and DevOps manner and can evidence delivering automation supporting both Continuous Integration and Delivery.
- We recognize that it's unlikely that we will find someone that ticks all of the boxes above, where gaps exist we'd be looking at the personality of the person to want to self-learn and evolve.
Flooid is an Equal Employment Opportunity (EEO) Employer and complies with Title VII of the Civil Rights Act of 1964 and all other applicable federal, state, and local laws and regulations pertaining to EEO, as well as subsequent guidelines established by the EEO Commission. Flooid is committed to providing access, equal opportunity and reasonable accommodation for individuals with disabilities in its employment.