Quick overview
Job description
This role is for one of our clients
Compensation: $50β$100 per hour
Engagement Type: Project-based contractor role, with payment per approved task
Time Commitment: Approximately 15 hours per week
Estimated Task Duration: Around 5 hours for trainers and 1.5 hours for reviewers
Work Arrangement: Fully remote
Technical Requirements: Hands-on expertise in at least one of Python, Java, Rust, Go, C++, or TypeScript
We are looking for experienced Backend Software Engineers to contribute to the development of Reinforcement Learning Environments (RLEs) designed to evaluate and improve the capabilities of advanced AI models in solving real-world software engineering challenges.
In this role, you will create complex, repository-based coding tasks that assess a model's ability to debug sophisticated issues, implement backend features, refactor existing systems, and optimize application performance. You will work with real codebases to define engineering problems, establish reproducible development environments, and develop reliable verification systems that evaluate submitted solutions.
The ideal candidate has strong backend engineering experience, excellent problem-solving abilities, and the technical depth to identify meaningful challenges within complex software systems. Prior experience in AI or machine learning is not mandatory.
Key Responsibilities
- Design realistic and challenging backend engineering tasks using repositories and codebases with which you have hands-on experience.
- Develop problems involving complex bug fixes, backend feature implementation, API development, system refactoring, and performance optimization.
- Build reproducible environments that allow coding tasks to be executed and evaluated consistently.
- Create deterministic verifiers that identify correct solutions across different valid implementations while rejecting incomplete, incorrect, or hard-coded approaches.
- Develop reference solutions demonstrating effective approaches to solving each engineering challenge.
- Evaluate tasks for clarity, technical relevance, and verifiability, flagging ambiguous or unsuitable problems rather than submitting them.
- Document task requirements, technical assumptions, and verification criteria clearly.
Required Qualifications
- Strong hands-on backend development experience in at least one of the following programming languages: Python 3, Java, Rust, Go, C++, or TypeScript.
- Solid understanding of data structures, algorithms, software architecture, and core software engineering principles.
- Proven ability to debug complex backend systems, identify root causes, and implement reliable fixes.
- Experience developing backend features, working with large codebases, and improving application performance.
- Familiarity with code refactoring, legacy system modernization, and writing maintainable, scalable software.
- Ability to design reproducible test environments and develop reliable, deterministic verification mechanisms.
- Experience taking technical features or engineering solutions from problem definition through implementation and delivery.
- Strong written communication and documentation skills, with the ability to explain complex technical concepts clearly.
Preferred Skills
- Experience building and maintaining backend services and APIs.
- Understanding of distributed systems, system reliability, and performance optimization.
- Familiarity with automated testing, debugging tools, and software verification techniques.
- Experience working with open-source repositories or complex production codebases.
- Interest in artificial intelligence and the technical challenges involved in evaluating advanced AI models.
Compensation Structure
This is an output-based engagement. Compensation ranges from $50 to $100 per hour, with payments made for tasks that meet the defined project specifications and receive approval. Actual time requirements may vary depending on task complexity, individual expertise, and workflow.
Availability and Joining Timeline
This is a flexible, project-based contractor opportunity requiring approximately 15 hours of availability per week. Candidates should be available to begin promptly. Selected professionals are expected to start their first tasks within 24β48 hours of completing the onboarding process.
Selection Process
- Submit your application and complete the screening questions.
- Participate in an AI-powered interview to demonstrate your technical expertise.
- Complete the profile review process.
- Finish onboarding with the Talent Operations team and get started on your first tasks.
Haystack's AI agent can fill in and submit this application for you. How AI auto apply works