| import pytest |
| from text_extractor import extract_entities, JobCore |
|
|
|
|
| def test_judgment_labs_extraction(): |
| """Test extraction of Judgment Labs Research Engineer posting.""" |
| |
| sample_jd = """Judgment Labs logo |
| Judgment Labs |
| Share |
| Show more options |
| Research Engineer |
| San Francisco, CA 路 23 hours ago 路 Over 100 applicants |
| Promoted by hirer 路 No response insights available yet |
| |
| |
| On-site |
| Matches your job preferences, workplace type is On-site. |
| |
| Full-time |
| Matches your job preferences, job type is Full-time. |
| |
| Easy Apply |
| |
| Save |
| Save Research Engineer at Judgment Labs |
| Research Engineer |
| Judgment Labs 路 San Francisco, CA (On-site) |
| |
| Easy Apply |
| |
| Save |
| Save Research Engineer at Judgment Labs |
| Show more options |
| Your AI-powered job assessment |
| |
| |
| Am I a good fit? |
| |
| Tailor my resume |
| |
| How can I best position myself? |
| |
| About the job |
| Bonus (in case you even read the posting!): |
| |
| If you send us an email at contact@judgmentlabs.ai that you've taken a look at our open-source agent post-building SDK and given it a star, we'll bump you up in our queue! https://github.com/JudgmentLabs/judgeval |
| |
| |
| Company Description |
| |
| Judgment Labs is a leading infrastructure provider for evaluation, monitoring, and reward modeling for long trajectory agents. Founded by LLM researchers from Stanford AI Lab, Berkeley AI Research, and Together AI, Judgment Labs empowers agent teams to create loops for testing, monitoring, and optimization. The company is on a mission to unleash self-improving agents. |
| |
| |
| Role Description |
| |
| This is a full-time on-site Research Engineer role located in San Francisco, CA at Judgment Labs. |
| |
| |
| Research engineers are responsible for designing and implementing new methods for agent evaluation and their downstream applications into monitoring, testing, and optimization. Examples include fine tuning judge models to produce human-aligned preference models for evals, or using aligned models to generate reward criteria for use in RL. |
| |
| |
| Qualifications |
| |
| Computer Science and Algorithms skills |
| Research and Development (R&D) expertise |
| Experience in developing advanced algorithms for self-improving agents |
| Excellent problem-solving and analytical skills |
| Ability to work collaboratively in a team environment |
| Bachelor's, Master's or Ph.D. in Computer Science or related field""" |
|
|
| result = extract_entities(sample_jd) |
| |
| |
| |
| assert isinstance(result, JobCore) |
| assert hasattr(result, 'company') |
| assert hasattr(result, 'role') |
| assert hasattr(result, 'location') |
|
|
|
|
| def test_clearml_brand_extraction(): |
| """Test ClearML JD extraction - should extract ClearML not NVIDIA.""" |
| |
| clearml_jd = """ClearML logo |
| ClearML |
| Share |
| Show more options |
| Junior Machine Learning Engineer |
| Washington, United States 路 3 hours ago 路 Over 100 applicants |
| Promoted by hirer 路 No response insights available yet |
| |
| Remote |
| |
| Full-time |
| Matches your job preferences, job type is Full-time. |
| |
| Easy Apply |
| |
| Save |
| Save Junior Machine Learning Engineer at ClearML |
| Your AI-powered job assessment |
| |
| Am I a good fit? |
| |
| Tailor my resume |
| |
| How can I best position myself? |
| |
| About the job |
| Junior Machine Learning Engineer (Machine Learning AI) |
| |
| Join us to advance data science and machine learning. |
| |
| ClearML is a rapidly growing open source MLOps platform that helps data science, ML engineering, and DevOps teams easily develop, orchestrate, and automate ML workflows at scale. Our frictionless, unified, end-to-end MLOps suite enables users and customers to focus on developing their ML code and automation, ensuring their work is reproducible and scalable. ClearML is trusted by brands such as NVIDIA, NetApp, Samsung, Hyundai, Bosch, Microsoft, Intel, IBM, and Philips. |
| |
| Overview: |
| We are an open source end-to-end MLOPs platform, built by developers for developers. |
| |
| We're looking for a junior Machine Learning Engineer (Machine Learning AI) to join our growing team. In this role, you will collaborate across our development and product teams and will have a chance to collaborate with our MLOPs experts working in the exciting areas of machine learning, deep learning, DevOps, and AI. |
| |
| The ideal candidate will be a recent graduate who wants to learn how to create and fine-tune models from large amounts of raw information and optimize them You will work with our team to learn to build ML/DL data pipelines to extract valuable business insights, analyze trends, and help us make better decisions. |
| |
| We expect you to be highly analytical with a knack for analysis, math, and statistics, and a passion for machine learning and research. Critical thinking and problem-solving skills are also required. |
| |
| Responsibilities: |
| - Research and analyze valuable data sources and automate processes |
| - Perform preprocessing of structured and unstructured data |
| - Review large amounts of information to discover trends and patterns |
| - Create predictive models and machine-learning algorithms |
| - Modify and combine different models through ensemble modeling |
| - Organize and present information using data visualization techniques |
| - Develop and suggest solutions and strategies to business challenges |
| - Work together with engineering and product development teams to build and test ML/DL solutions stretching the entire spectrum of ML operationalization from data processing, model training, hyperparameter tuning, deployment, and model management. |
| |
| Requirements: |
| - Graduate role, no experience necessary, remote opportunity |
| - Knowledge of SQL and Python; familiarity with Scala, Java, or C++ is a plus. |
| - Familiar with Kubernetes and/or perhaps similar container system |
| - Strong math and analytical skills, with business acumen |
| - Strong communication and presentation skills |
| - Good problem-solving abilities |
| - BSc or BA degree in Computer Science, Engineering or other relevant area""" |
|
|
| result = extract_entities(clearml_jd) |
| |
| |
| assert result.company.lower() == "clearml" |
| assert result.company.lower() != "nvidia" |
| assert "junior machine learning engineer" in result.role.lower() |
| assert "washington" in result.location.lower() |
| assert result.posted_days == 1 |
| assert result.seniority.lower() == "junior" |
|
|
|
|
| def test_standard_practice_extraction(): |
| """Test Standard Practice JD extraction.""" |
| |
| standard_practice_jd = """Standard Practice logo |
| Standard Practice |
| Share |
| Show more options |
| Backend AI Engineer [Recent Grad] |
| New York, NY 路 2 months ago 路 Over 100 applicants |
| Promoted by hirer 路 Actively reviewing applicants |
| |
| Hybrid |
| Matches your job preferences, workplace type is Hybrid. |
| |
| Full-time |
| Matches your job preferences, job type is Full-time. |
| |
| Easy Apply |
| |
| Save |
| Save Backend AI Engineer [Recent Grad] at Standard Practice |
| Backend AI Engineer [Recent Grad] |
| Standard Practice 路 New York, NY (Hybrid) |
| |
| Easy Apply |
| |
| Save |
| Save Backend AI Engineer [Recent Grad] at Standard Practice |
| Show more options |
| Your AI-powered job assessment |
| |
| Am I a good fit? |
| |
| Tailor my resume |
| |
| How can I best position myself? |
| |
| About the job |
| The Company |
| |
| Standard Practice is building the next generation of foundational tools for medical practices. |
| |
| Over one million healthcare professionals spend 4.5 hours each day on the phone. Standard Practice is a voice AI platform that automates medical practices outbound calls to insurance and pharmacies. With a human-sounding voice, our AI agent tactically completes calls as an employee would, all without someone having to sit on the phone. We help medical practices generate more revenue, faster, and focus on care, not paperwork. |
| |
| Today, we're using voice AI to transform medical practice operations. Looking forward, we're building the next set of foundational tools that power medical practices across the country. |
| |
| We're growing fast and raised $8.5 million from Tiger Global, Wing VC, A* Capital, and Expa. |
| |
| Our HQ is located in Flatiron, New York City.""" |
|
|
| result = extract_entities(standard_practice_jd) |
| |
| |
| assert result.company.lower() == "standard practice" |
| assert "backend ai engineer" in result.role.lower() |
| |
| assert result.seniority.lower() in ["junior", "recent grad", "recent", "entry", ""] or "grad" in result.role.lower() |
|
|
|
|
| def test_chipagents_extraction(): |
| """Test ChipAgents JD extraction with funding detection.""" |
| |
| chipagents_jd = """ChipAgents logo |
| ChipAgents |
| Share |
| Show more options |
| Full-Stack AI Engineer |
| Santa Barbara, CA 路 3 weeks ago 路 Over 100 applicants |
| Promoted by hirer 路 Actively reviewing applicants |
| |
| On-site |
| Matches your job preferences, workplace type is On-site. |
| |
| Full-time |
| Matches your job preferences, job type is Full-time. |
| |
| Easy Apply |
| |
| Save |
| Save Full-Stack AI Engineer at ChipAgents |
| Your AI-powered job assessment |
| |
| Am I a good fit? |
| |
| Tailor my resume |
| |
| How can I best position myself? |
| |
| About the job |
| Full-Stack AI Engineers |
| |
| Location: Santa Barbara, CA / Santa Clara, CA |
| |
| About ChipAgents: |
| |
| ChipAgents is redefining the future of chip design and verification with agentic AI workflows. Our platform leverages cutting-edge generative AI to assist engineers in RTL design, simulation, and verification, dramatically accelerating chip development. Founded by experts in AI and semiconductor engineering, we partner with top semiconductor firms, cloud providers, and innovative startups to build intelligent AI agents. The company is a Series A company backed by tier-1 VC firms. ChipAgents is deployed in production to companies that have shipped 16B chips.""" |
|
|
| result = extract_entities(chipagents_jd) |
| |
| |
| assert result.company.lower() in ["chipagents", ""] or "chip" in result.company.lower() |
| assert "full-stack ai engineer" in result.role.lower() or "engineer" in result.role.lower() |
| |
| assert result.funding is not None or result.source_map.get("funding") in ["", "google", None] |
|
|
|
|
| def test_empty_text(): |
| """Test extraction with empty text.""" |
| result = extract_entities("") |
| |
| assert result.company == "" |
| assert result.role == "" |
| assert result.location == "" |
| assert result.seniority == "" |
| assert result.posted_days is None |
| assert result.salary_low is None |
| assert result.salary_high is None |
| assert result.mission is None |
| assert result.funding is None |
| assert result.source_map == {} |
|
|
|
|
| def test_minimal_extraction(): |
| """Test extraction with minimal information.""" |
| minimal_jd = """Software Engineer |
| Google Inc |
| Mountain View, CA |
| Posted 2 days ago""" |
| |
| result = extract_entities(minimal_jd) |
| |
| assert result.company.lower() in ["google inc", "google"] |
| assert "software engineer" in result.role.lower() |
| assert "mountain view" in result.location.lower() |
| |
| assert result.posted_days is None or result.posted_days == 2 |
|
|
|
|
| def test_salary_extraction(): |
| """Test salary extraction patterns.""" |
| salary_jd = """Senior Data Scientist |
| Meta |
| Menlo Park, CA |
| $120k-$180k per year |
| Posted 1 week ago""" |
| |
| result = extract_entities(salary_jd) |
| |
| assert result.salary_low == 120000 |
| assert result.salary_high == 180000 |
| assert result.posted_days == 7 |
|
|
|
|
| def test_seniority_extraction(): |
| """Test seniority level extraction.""" |
| senior_jd = """Senior Machine Learning Engineer |
| OpenAI |
| San Francisco, CA |
| 5+ years experience required""" |
| |
| result = extract_entities(senior_jd) |
| |
| assert "senior" in result.seniority.lower() |
| assert result.company.lower() == "openai" |
| assert "senior machine learning engineer" in result.role.lower() |