Overview
Skills
Job Details
About the team:
As part of our Native App Engineering team, you will utilize your personal and professional knowledge and experience to test native app technology, including Android and iOS, within our Native Apps Development Team. This team plays a crucial role in DHI's global native application product strategy by building and supporting cutting-edge iOS, Android, and other native applications for ClearanceJobs.com.
About the role:
In this role, you'll dive head-first into our cutting-edge iOS and Android development projects, contributing to the creation of engaging native applications. You'll work closely with our Mobile Product Owner, engineering, test, and design team to deliver top-notch mobile experiences.
Your career at DHI will be filled with exciting challenges and opportunities for growth. From onboarding and familiarizing yourself with our development environment to contributing to ongoing projects and building strong relationships with your team, every day will bring new learning experiences and chances to make a difference.
Why we re hiring for this role:
The Mobile Software Engineering team tests all the features of ClearanceJobs.com Apps for both iOS and Android providing the best native app experience on the ClearanceJobs platforms for both technologists and recruiters. Having a native first testing focus is key to success in this role.
In the short term you will:
In the first 90 days in the role, you will accomplish several key milestones:
Onboarding and Familiarization: Understand the company's development environment, tools, processes, and coding standards. Get to know your team members and their roles.
Understanding the Product: Familiarize yourself with the product or projects you'll be working on. Understand the user base, key features, and the overall goal of the application.
Automation Framework Familiarization: Dive into the existing codebase. Understand the architecture, design patterns, and coding conventions used in the project.
Contribution to Ongoing Projects: Work on smaller tasks or bug fixes within the automated testing framework to get acquainted with the codebase and development workflow.
In the long term you will:
Learning and Skill Development: Identify areas for improvement in your test engineering development skills and keep learning. This could involve learning new libraries, frameworks, or tools that are relevant to your projects.
Setting Goals: Set short-term and long-term goals for your role within the team. Discuss these goals with your manager to ensure alignment with the team's objectives.
Building Relationships: Build relationships with your team members, stakeholders, and other departments you'll be collaborating with. Communication is key to a successful team dynamic.
Feedback and Improvement: Seek feedback from your peers and manager regularly. Use this feedback to improve your skills and performance.
Contribution to Process and Product Improvement: As you become more familiar with the projects and processes, look for opportunities to suggest improvements in development processes or tools that could benefit the team.
Documentation and Knowledge Sharing: Document your work and share your knowledge with the team. This could include writing documentation, giving presentations, or conducting code reviews.
What you bring to the team:
- Work with other software engineers to understand the high-level native app software designs and technical specs.
- Work with product owners and designers to understand and test the native application vision.
- Work within an agile software development team to deliver and execute test automation solutions for our native application set and shared data services.
- Work collaboratively within the engineering team to identify test cases and suites best suited for automation.
- Plan and execute unit, integration, UI, smoke, performance and other tests using automation testing frameworks for native applications and leveraged data services.
- Work with other DHI employees outside of the team to enhance/expand existing test automation frameworks.
- Perform manual touch testing on multiple devices approximately 70% of the time.
- Troubleshoot and provide failure analysis of issues identified from the automation suite.
- Write and execute SQL queries for UI/data validation and test data generation by writing and maintaining Python and other scripts.
- Provide communication with partnering teams regarding testing progress, dependencies and risk.
- Provide detailed test reports and metrics to document the status and any risk for releases.
- Play an active role and contribute to application design and development.
- Evangelize good software engineering - always be learning.
Required:
- A working understanding of Agile development methodologies.
- Strong communication, problem-solving, organization skills and attention to detail.
- Extensive experience testing native applications using iOS and Android and the testing of APIs.
- Ability to analyze automated test results and metrics, perform root cause failure analysis.
- Strong background in QA methodologies and best practices.
- Ability to distinguish defects from enhancement requests.
- Team player who exhibits effective interpersonal skills with a collaborative style.
- Must have deep understanding of native technologies (iOS, Android development techniques with Swift and Kotlin respectively etc.)
- Typescript and/or Python are a plus.
- Ability to use Continuous Integration/Continuous Delivery (CI/CD) tools and techniques.
Preferred:
- Solid Software Development experience with Android and iOS.
- Experience with common automated testing frameworks and platforms across Microsoft, Java, and open-source languages such as Gherkin (SpecFlow, Cucumber, etc), Selenium, Rest Assured, JMeter, Appium or another mobile test automation frameworks.
- Experience with Google Analytics and SEO concepts and validation a plus.