To effectively source and engage senior software developers in Tests (SDETs), we must focus on actionable strategies that identify high-quality candidates and engage them meaningfully
Talent search for Software Developers in Test
Create a solid pipeline, focus on diverse sourcing channels, leveraging both traditional platforms and niche communities. The goal is to identify and attract the right talent.
LinkedIn Advanced Search
Use LinkedIn Recruiter to create targeted searches. Focus on key filters such as:
Current job titles (e.g., “Software Developer in Test”)
- Software Development Engineer in Test (SDET)
- QA Automation Engineer
- Test Automation Engineer
- Automation Test Engineer
- Quality Assurance Engineer (Automation)
- QA Engineer (Automation)
- Automation Developer
- Test Engineer (Automation)
- Software Test Engineer (Automation)
- Senior SDET
- Lead SDET
- Automation Architect
- Quality Engineer (Automation)
- QA Developer
- Continuous Integration/Continuous Deployment (CI/CD) Automation Engineer
- DevTest Engineer
- Test Automation Specialist
- Quality Engineer in Test (QET)
- Software Quality Engineer (Automation)
- Performance Test Engineer (Automation)
- Test Automation Lead
- Software Engineer in Test (SET)
- Test Automation Consultant
- Senior QA Engineer (Automation)
- Automation Framework Engineer
Tech stacks
Programming Languages
- Python: Widely used for its simplicity and powerful libraries for testing (e.g., PyTest, unit test).
- Java: Popular for enterprise-level applications; supports tools like Selenium, TestNG, and JUnit.
- JavaScript/TypeScript: Common for frontend and full-stack testing, using tools like Cypress, Playwright, and Jest.
- C#: Used in Microsoft environments with tools like NUnit, SpecFlow, and Selenium.
- Ruby: Often used with frameworks like RSpec and Capybara.
- Go (Golang): Increasingly popular in cloud-native environments for its performance and concurrency capabilities.
- Kotlin: Used in Android test automation with Espresso and Appium.
Test Automation Frameworks
- Selenium: A widely-used open-source tool for browser automation across different browsers and platforms.
- PyTest: A popular framework for Python, known for its simple syntax and powerful features.
- Cypress: A JavaScript-based end-to-end testing framework designed for modern web applications.
- JUnit/TestNG: Java-based testing frameworks commonly used for unit testing and integrated with Selenium for automation.
- Appium: A cross-platform mobile testing framework for native, hybrid, and mobile web applications.
- Cucumber: A tool for Behavior-Driven Development (BDD) using Gherkin syntax, supporting multiple languages.
- Playwright: A newer JavaScript-based framework from Microsoft for cross-browser testing.
- Robot Framework: An open-source automation framework for acceptance testing, suitable for test-driven development.
- Katalon Studio: An all-in-one platform that supports web, API, mobile, and desktop app testing.
Continuous Integration/Continuous Deployment (CI/CD) Tools
- Jenkins: One of the most popular open-source CI/CD tools, with numerous plugins for automation and integration.
- GitLab CI: Built-in CI/CD pipeline within GitLab, providing a seamless DevOps experience.
- Circle CI: A cloud-based CI/CD service that is known for its ease of use and integration with various development tools.
- Azure DevOps: Provides pipelines for CI/CD, along with source control, artifact storage, and more.
- Travis CI: A continuous integration service used to build and test software projects hosted on GitHub.
- Bamboo: An Atlassian CI/CD server that integrates seamlessly with other Atlassian products.
- TeamCity: A CI/CD server from JetBrains known for its deep integration with IntelliJ IDEA and other JetBrains IDEs.
- ArgoCD: A GitOps continuous delivery tool for Kubernetes environments.
Cloud Platforms and Services
- Amazon Web Services (AWS): Used for cloud-based test environments, serverless testing (AWS Lambda), and CI/CD pipelines (AWS CodePipeline).
- Microsoft Azure: Supports DevTest Labs for development and testing, along with Azure Pipelines for CI/CD.
- Google Cloud Platform (GCP): Offers Google Cloud Build, Cloud Functions for serverless testing, and other testing-related services.
- Docker and Kubernetes: Containers and orchestration tools for creating consistent and scalable test environments.
Performance and Load Testing Tools
These tools are crucial for ensuring that applications can handle anticipated traffic and usage patterns.
- JMeter: An open-source tool used for performance and load testing of web applications.
- Gatling: A powerful load testing tool focused on high performance, particularly for HTTP servers.
- Locust: A Python-based load testing tool that allows distributed testing.
- k6: An open-source load testing tool that supports modern development workflows.
API Testing Tools
Modern applications heavily rely on APIs, making API testing a critical component of the SDET stack.
- Postman: A popular tool for manual and automated API testing with support for scripting.
- Rest Assured: A Java library for testing REST APIs.
- SoapUI: A tool for testing SOAP and REST web services.
- Karate: A framework for API test automation, performance testing, and even UI automation.
- Newman: A command-line collection runner for Postman that is used for CI/CD integrations.
Version Control and Collaboration Tools
Version control and collaboration tools are crucial for managing codebases and working in teams.
- Git: The most widely used version control system, with platforms like GitHub, GitLab, and Bitbucket.
- JIRA: A popular project management and issue tracking tool.
- Confluence: Used for documentation and collaboration within teams.
- Slack and Microsoft Teams: Common tools for team communication and integration with other DevOps tools.
Monitoring and Reporting Tools
These tools help in continuous monitoring of test environments and reporting test results.
- Allure Report: A flexible reporting tool that integrates with various test frameworks.
- ExtentReports: A customizable HTML reporting library for Selenium WebDriver tests.
- Grafana and Prometheus: Monitoring tools that can also be used to track testing metrics and performance data.
- Splunk: A platform for searching, monitoring, and analyzing machine-generated big data.
Security Testing Tools
Security is a critical aspect, and SDETs often need to have some familiarity with basic security testing tools.
- OWASP ZAP: An open-source tool for finding security vulnerabilities in web applications.
- Burp Suite: A popular tool for web vulnerability scanning.
- Snyk: A tool for finding and fixing vulnerabilities in open-source dependencies.
Engage in Niche Tech Communities
GitHub
Sourcing talent on GitHub can be highly effective for finding skilled developers, including SDET, who are actively coding and contributing to open-source projects. Before diving into sourcing, understand how GitHub works:
- Repositories: A repository (repo) is a project that contains all the files, history, and documentation. Reviewing repos allows you to see a developer’s coding style, languages, and contributions.
- Commits: Commits are changes or updates made to a repository. Frequent commits may indicate an active developer.
- Pull Requests (PRs): Pull requests are proposals to merge changes from one branch to another. Reviewing PRs can show how a developer collaborates and handles feedback.
- Issues: Issues are discussion threads on bugs, features, or tasks. They give insights into problem-solving and communication skills.
- Stars and Forks: A high number of stars or forks indicates a popular repository, and contributing to such repositories can show a developer’s reputation.
Define Your Search Criteria
Identify the specific skills and experience you are looking for in a candidate (see the above lists)
Skills: Programming languages (e.g., Python, Java), frameworks (e.g., PyTest, Selenium), and tools.
Role: Focus on developers who are involved in QA, test automation, or related projects.
Experience Level: Look for developers with substantial commits, contributions to high-star repositories, or maintainers of significant projects.
Use GitHub’s Advanced Search Features to search for SDET profiles with Python and PyTest skills, use the following approach:
Search by Repositories
pytest language: Python stars:>50
This query searches for repositories that mention “pytest,” are written in Python, and have more than 50 stars, indicating popularity or quality.
This query targets users based in the Netherlands who use Python, have a background in QA or Test Automation, and have more than 20 followers, indicating influence or active engagement.
Search by Issues or Pull Requests:
“QA Automation” OR “SDET” is:pr is:closed
This query looks for closed pull requests related to QA Automation or SDET roles. It helps find developers who have completed meaningful contributions.
Engage with Potential Candidates
Once you identify promising profiles, engage with them thoughtfully.
Interact with Their Work:
Star or Fork Their Repositories: This can get the developer’s attention and shows appreciation for their work.
Comment on Issues or Pull Requests: Provide constructive comments or ask questions about their contributions. This can help initiate a conversation.
Send a Personalized Message
Use GitHub’s Email (if Available): Some profiles have public emails listed. Use this to reach out with a personalized message.
Personalized Outreach via InMail on Linkedin
Develop personalized messages
Based on the candidate’s profile, work, and interests. Reference specific GitHub projects, Stack Overflow contributions, or common connections. Below mess is just an example:
Software Eng in Test | Remote flexible | Opportunity
Hi XXX,
Hope you are having a nice day.
I am reaching out on behalf of XXX, who have mandated me to find their future Talent in software engineer in test:
In this context, I saw your profile and noticed that your background aligns well with the team’s stack and professional culture!
Our QA team is deeply involved in test automation, utilizing a coding-oriented stack with Python, Pytest, and Selenium for UI testing and Jenkins for CI. Each member collaborates closely with our feature teams and developers.
At XXX, we’re dedicated to developing XXXX
If you’re curious and open to exploring this opportunity further, check out the details here: ➡️ [ XXXX ]
We’d love to share more details with you over a quick video call! Please let me know what your thoughts are. 😊
Looking forward to hearing from you! NAME
A/B Test Outreach Messages
Experiment with different outreach messages (per 100 candidates to do percentages) templates to identify which generates higher response rates
Follow-up
If there is no response after a week, send a follow-up message adding more value, such as sharing a relevant blog post or an upcoming tech event.
KPIs for Sourcing and Engagement
To effectively source talent on LinkedIn for SDET (Software Development Engineer in Test) roles, it is important to set specific Key Performance Indicators (KPIs) and actionable steps to search, engage, and convert profiles into potential hires. Below is a detailed breakdown of actionable KPIs for each stage of sourcing on LinkedIn.
Objective: Identify a targeted number of qualified SDET candidates with expertise in Python and PyTest from LinkedIn every month.
Candidates sourced per month
400 = 100 / Week
The response rate to personalized outreach: 30%
under 20% is bad, above 40% is great
Conversion rate from outreach to screening calls: 50%
This means 50% of candidates who have replied to your messages must be screened
Use LinkedIn Recruiter for Advanced Searches
Utilize Boolean strings to refine searches for SDET roles with specific skills (e.g., Python, PyTest, Test Automation).
Boolean String Example
This guide will help you design Boolean strings that are comprehensive, targeted, and efficient in narrowing down the right candidates.
Job Titles: Common titles associated with SDET roles.
See the above list of “current job titles”
Required Skills and Technologies: Key technical skills, tools, and frameworks.
Python, PyTest, Selenium, REST API, CI/CD, Jenkins, Java, JavaScript, TestNG, Docker, Kubernetes.
Keywords related to software testing, automation, and quality assurance.
See the above list of “Tech stacks”
Combine Synonyms and Variations Using the OR Operator
The **OR** operator broadens your search by including variations of the same concept. It helps capture candidates with different job titles that match the SDET profile.
– **Job Titles Example**:
“`plaintext
(“Software Development Engineer in Test” OR SDET OR “QA Automation Engineer” OR “Test Automation Engineer” OR “Automation QA Engineer” OR “Software Engineer in Test”)
“`
Narrow Down with the AND Operator
The **AND** operator is used to ensure that all specified terms must be present in the search results. This helps in targeting candidates with specific skills and technologies.
– **Job Titles + Skills Example**:
“`plaintext
(“Software Development Engineer in Test” OR SDET OR “QA Automation Engineer” OR “Test Automation Engineer” OR “Automation QA Engineer” OR “Software Engineer in Test”)
AND (Python AND PyTest)
“`
Exclude Irrelevant Profiles with the NOT Operator
The **NOT** operator helps exclude profiles that may contain keywords you want to avoid (e.g., “Manual Tester” or “Functional QA”).
– **Exclusion Example**:
“`plaintext
(“Software Development Engineer in Test” OR SDET OR “QA Automation Engineer” OR “Test Automation Engineer” OR “Automation QA Engineer” OR “Software Engineer in Test”)
AND (Python AND PyTest)
NOT (“Manual Tester” OR “Functional QA” OR “Manual QA”)
“`
Include Alternative Keywords and Skills Using Parentheses
Grouping keywords with parentheses helps organize the search string and improves readability. You can use them to group multiple keywords or skill sets.
(“Software Development Engineer in Test” OR SDET OR “QA Automation Engineer” OR “Test Automation Engineer” OR “Automation QA Engineer” OR “Software Engineer in Test”)
AND (Python AND (PyTest OR “Test Automation” OR Selenium OR “TestNG” OR “Rest API”))
NOT (“Manual Tester” OR “Functional QA” OR “Manual QA”)
“`
Refine by Adding Specific Tools and Frameworks
Include specific tools and frameworks to refine the search further. For SDET roles, common tools might include Selenium, JUnit, Docker, and Jenkins.
– **Refined Boolean String Example**:
“`plaintext
(“Software Development Engineer in Test” OR SDET OR “QA Automation Engineer” OR “Test Automation Engineer” OR “Automation QA Engineer” OR “Software Engineer in Test”)
AND (Python AND (PyTest OR Selenium OR “TestNG” OR “REST API” OR “CI/CD” OR Jenkins OR Docker OR Kubernetes))
NOT (“Manual Tester” OR “Functional QA” OR “Manual QA”)
“`
Add Location Filters (if Needed)
If you are targeting candidates in a specific location, include location-related keywords.
(“Software Development Engineer in Test” OR SDET OR “QA Automation Engineer” OR “Test Automation Engineer” OR “Automation QA Engineer” OR “Software Engineer in Test”)
AND (Python AND (PyTest OR Selenium OR “TestNG” OR “REST API” OR “CI/CD” OR Jenkins OR Docker OR Kubernetes))
AND (Netherlands OR Amsterdam OR “Remote Europe”)
NOT (“Manual Tester” OR “Functional QA” OR “Manual QA”)
“`
Test and Refine the Boolean String
Run the Boolean string in LinkedIn Recruiter or another platform to see the results. Ensure the results are relevant and align with the targeted SDET profile.
(“Software Development Engineer in Test” OR SDET OR “QA Automation Engineer” OR “Test Automation Engineer” OR “Automation QA Engineer” OR “Software Engineer in Test”) AND (Python AND (PyTest OR Selenium OR “TestNG” OR “REST API” OR “CI/CD” OR Jenkins OR Docker OR Kubernetes)) AND (Netherlands OR Amsterdam OR “Remote Europe”) NOT (“Manual Tester” OR “Functional QA” OR “Manual QA”)
Leverage LinkedIn Talent Pool Engagement
Add candidates to a LinkedIn Talent Pipeline and send regular updates on new job openings, tech blogs, or company news
100 per week as listed above
Set Up Search Alerts
Use LinkedIn Recruiter to create automated search alerts for new profiles that match the SDET criteria.