TECH 8 min

What We Delegate to Independent Developers: a PR Instead of an Interview, Claude Code Welcome

Concrete task buckets waiting for contributors: OpenData adapters, ML experiments, frontend, performance, tests. Our only "interview" is your first pull request. AI-assisted code is welcome — we write with Claude Code every day.

What We Delegate to Independent Developers: a PR Instead of an Interview, Claude Code Welcome

In the previous article we announced that we're opening LEX AI as open source. Now the specifics: what tasks sit in the backlog, how they're packaged, why our only "interview" is a first pull request, and why we love Claude Code.


A PR Instead of an Interview

We don't believe in LeetCode, HackerRank, and three-hour whiteboard interviews. They test the ability to solve problems under stress — not the ability to ship working code into a real codebase.

Our filter is simpler: pick an issue labeled good-first-issue or help-wanted, open a PR, go through review. That is our "interview." Except the output stays in production — and is paid if the task is on the price list.

If the PR lands, we already know:

That's all we need. After that, we talk contract, rate, scope.


We Write With Claude Code Ourselves. AI-Assisted PRs Are Welcome

We're not against AI-written code. On the contrary — we ship dozens of PRs every week written together with Claude Code. Our CI/CD includes Claude agents that auto-fix failing builds on every push to main. So your workflow with Cursor, Claude Code, Copilot, or Codex is not a problem — it's a plus.

What we check:

An LLM assistant is a tool like an IDE. It doesn't make you a worse engineer, and it doesn't make you a better one either — it just speeds up the engineer you already are.


Bucket 1 — OpenData Adapters and ETL

We have 15+ government sources integrated: EDRSR, Verkhovna Rada, NACP, OpenReyestr, OpenSanctions, GLEIF, ICIJ Offshore Leaks, HIBP, NVD, INTERPOL, World Bank. Wanted next:

Typical task — 3 to 5 days:

  1. Write the adapter in services/opendata-importers/importers/
  2. Add checkpoint + resume logic (base class already exists)
  3. Write a test with a fixture
  4. Add it to the scheduler config

Stack: Python 3.11 async or Node.js, PostgreSQL COPY, shared base/checkpoint/http_client/ip_pool modules already in place.


Bucket 2 — ML Experiments

The most interesting and most expensive bucket. We're looking for contributors on:

Stack: HuggingFace, PyTorch, vLLM, optional Vertex AI / SageMaker. GPU comes from our credit pool with Google Cloud / AWS.

Compensation: fixed + bonus on hitting a metric (e.g., >X% preference rate vs baseline).


Bucket 3 — Frontend and UX

lexwebapp — React 19 + Vite + TailwindCSS + Zustand + TanStack Query. Waiting:

Difficulty ranges from a 3-day task (timeline view) to a 2-week project (dashboard).


Bucket 4 — Performance and Infra


Bucket 5 — Tests and Documentation

These are ideal for a first PR. Low risk, fast review, we're always reachable.


What We Don't Delegate

To avoid confusion:

Everything else — fair game.


How to Start

  1. Clone github.com/overthelex/secondlayer, run docker compose -f docker-compose.local.yml –env-file .env.local up -d
  2. Browse issues labeled good-first-issue, help-wanted, bounty
  3. Comment on the issue that you're taking it (to avoid duplication)
  4. Open a PR — we review within 48 hours
  5. Get paid — UAH via bank or USDT, if the task has a price

For ML, OSINT, or performance tasks — we recommend opening a Discussion first to align on approach. Otherwise there's a risk of doing a PR we'll ask you to redo differently.


FAQ

Q: What if I'm new and have never done a PR to open source? A: There's Bucket 5 (tests and docs). A first PR on a README improvement or a new Playwright test is a great entry point. We'll help with review and advice.

Q: How does payment work? A: Before taking a task, check whether it has the bounty or paid label. If yes, the amount is in the description. Otherwise it's a community contribution without payment, but with a mention in the CHANGELOG and credit in the README.

Q: Can I take a large ML task as my first contribution? A: Better not. Start with a 1–3 day task so we both see how it feels to work with our code. After that — it's all yours.

Q: Will you sign an NDA? A: If the task is in secondlayer-core — yes, a simple mutual NDA. For open-source tasks no NDA is needed.


Open repo: https://github.com/overthelex/secondlayer Contributor issues: https://github.com/overthelex/secondlayer/labels/good-first-issue Discussions: https://github.com/overthelex/secondlayer/discussions Contact: vladimir@legal.org.ua


Write a PR, not a cover letter.