Dynamic Workday Job Application Bot Creation
Budget: ₹600 – ₹1,500 INR
I need a Python-based automation bot that reads Workday job application URLs from a .txt file and completes job applications end-to-end automatically using Playwright.
IMPORTANT — Read Before Applying
Every Workday job URL is configured differently by each employer. There is no fixed page structure, no fixed number of sections, no fixed field order. The bot must dynamically detect and handle whatever appears on the page at runtime. Do not apply if your solution relies on hardcoded selectors, fixed section orders, or assumes any specific page structure. The bot must work on any Workday job URL without code changes.
Authentication — Three Scenarios
The bot must detect which auth scenario applies and handle it automatically:
Auth required first, then form fill
Form fill starts first, then auth prompt appears mid-flow
No auth at all, direct form fill only
Login/Create Account must use email and password only. No OAuth. No "Sign in with Google, LinkedIn," or any third-party provider.
If the platform triggers an email verification step after login, the bot must pause and keep retrying the sign-in automatically every 60 seconds until the user manually verifies their email, then continue from where it left off without any manual input.
Form Filling — Core Personal Details
These fields are commonly present but even here the bot must verify their existence before attempting to fill. Never assume a field is present:
Full name, email, phone number
Address, city, country
"How did you hear about us" — if present, select from: Career Website, LinkedIn, Glassdoor, or Job Boards
Any consent or legal checkboxes — check them if present
Form Filling — Fully Dynamic Sections
This is the core challenge of the project. Sections will vary completely across different job URLs. Some jobs will have all of the below, some will have only a few, some may have completely different custom sections not listed here. The bot must:
Scan the page at runtime to detect which sections exist
Fill only the sections that are actually present
Skip gracefully if a section is missing
Handle sections that appear conditionally based on previous answers
Handle multi-step flows where new sections load after completing the previous one
Never crash or stop because an expected section is not found
Sections that may or may not appear include:
Work experience (company, title, dates, description, reason for leaving)
Education (institution, degree, field of study, graduation year)
Skills (detect available skill options and select or add from a configurable list)
Resume or CV upload (PDF from local path)
Cover letter upload or text field (if present)
Voluntary and EEO questions (gender, ethnicity, disability status, veteran status)
Application-specific questions unique to that employer (free text, dropdowns, yes/no, radio buttons, checkboxes, multiple choice)
Any additional custom sections that are not listed above
The bot must handle any combination of these and any section it has never seen before without failing.
AI-Powered Question Answering (OpenAI GPT-4)
All free-text questions, application questions, and voluntary questions must be answered using the OpenAI API dynamically. The prompt must be crafted so the model:
Reads the exact question text from the page
Answers as the applicant in a professional, confident, and natural tone
Answers "No" to anything involving criminal record, background issues, or conflicts of interest
Answers "No" to questions about prior employment at this company or any related organization
Keeps answers concise and human-sounding
Adapts its answer based on the specific question — no generic copy-paste responses
For dropdowns or multiple choice, selects the most favorable available option
The AI must handle questions it has never seen before and still produce a sensible, favorable answer.
IMPORTANT — Read Before Applying
Every Workday job URL is configured differently by each employer. There is no fixed page structure, no fixed number of sections, no fixed field order. The bot must dynamically detect and handle whatever appears on the page at runtime. Do not apply if your solution relies on hardcoded selectors, fixed section orders, or assumes any specific page structure. The bot must work on any Workday job URL without code changes.
Authentication — Three Scenarios
The bot must detect which auth scenario applies and handle it automatically:
Auth required first, then form fill
Form fill starts first, then auth prompt appears mid-flow
No auth at all, direct form fill only
Login/Create Account must use email and password only. No OAuth. No "Sign in with Google, LinkedIn," or any third-party provider.
If the platform triggers an email verification step after login, the bot must pause and keep retrying the sign-in automatically every 60 seconds until the user manually verifies their email, then continue from where it left off without any manual input.
Form Filling — Core Personal Details
These fields are commonly present but even here the bot must verify their existence before attempting to fill. Never assume a field is present:
Full name, email, phone number
Address, city, country
"How did you hear about us" — if present, select from: Career Website, LinkedIn, Glassdoor, or Job Boards
Any consent or legal checkboxes — check them if present
Form Filling — Fully Dynamic Sections
This is the core challenge of the project. Sections will vary completely across different job URLs. Some jobs will have all of the below, some will have only a few, some may have completely different custom sections not listed here. The bot must:
Scan the page at runtime to detect which sections exist
Fill only the sections that are actually present
Skip gracefully if a section is missing
Handle sections that appear conditionally based on previous answers
Handle multi-step flows where new sections load after completing the previous one
Never crash or stop because an expected section is not found
Sections that may or may not appear include:
Work experience (company, title, dates, description, reason for leaving)
Education (institution, degree, field of study, graduation year)
Skills (detect available skill options and select or add from a configurable list)
Resume or CV upload (PDF from local path)
Cover letter upload or text field (if present)
Voluntary and EEO questions (gender, ethnicity, disability status, veteran status)
Application-specific questions unique to that employer (free text, dropdowns, yes/no, radio buttons, checkboxes, multiple choice)
Any additional custom sections that are not listed above
The bot must handle any combination of these and any section it has never seen before without failing.
AI-Powered Question Answering (OpenAI GPT-4)
All free-text questions, application questions, and voluntary questions must be answered using the OpenAI API dynamically. The prompt must be crafted so the model:
Reads the exact question text from the page
Answers as the applicant in a professional, confident, and natural tone
Answers "No" to anything involving criminal record, background issues, or conflicts of interest
Answers "No" to questions about prior employment at this company or any related organization
Keeps answers concise and human-sounding
Adapts its answer based on the specific question — no generic copy-paste responses
For dropdowns or multiple choice, selects the most favorable available option
The AI must handle questions it has never seen before and still produce a sensible, favorable answer.