> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mergeoa.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Customize assessments to match every engineering role

> Configure difficulty, specialization, and language surface to precisely match each assessment to the hiring bar your team is evaluating against.

Merge gives you three configuration axes — difficulty, specialization, and language surface — to ensure each assessment targets the precise skills and expectations of the role you're hiring for. Calibrating these options carefully means you get comparable, interpretable signal across candidates, and candidates encounter work that reflects what the job actually demands.

## Difficulty levels

Difficulty controls the complexity of the codebase and the subtlety of the issues embedded in the pull request. Higher levels introduce more nuanced tradeoffs, deeper architectural concerns, and longer, more interdependent PR chains.

| Level            | Target profile                                                                                                                           |
| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| **Intern**       | Early-stage students or candidates with minimal professional experience. Issues are straightforward and well-scoped.                     |
| **New Graduate** | Recent graduates entering their first professional role. Reviews cover foundational patterns and common entry-level pitfalls.            |
| **Junior**       | Engineers with 1–2 years of experience. Expects familiarity with standard patterns and the ability to identify clear correctness issues. |
| **Mid-level**    | Engineers with 2–5 years of experience. Requires reasoning about design tradeoffs, not just surface-level bugs.                          |
| **Senior**       | Experienced engineers expected to lead reviews. Issues are subtle, architectural, and often involve cross-cutting concerns.              |
| **Staff**        | Engineers operating across teams or systems. Reviews involve systemic tradeoffs, organizational impact, and long-term maintainability.   |
| **Principal**    | Senior technical leaders. Expects deep expertise, the ability to reason about strategic tradeoffs, and highly refined communication.     |

## Specializations

Specialization determines the engineering domain the codebase and pull request reflect. Choose the domain closest to the work the candidate will actually do.

* **Frontend** — UI components, browser APIs, rendering performance, accessibility, and state management patterns.
* **Backend** — Server logic, API design, data access patterns, error handling, and service boundaries.
* **Infrastructure** — Cloud configuration, deployment patterns, infrastructure as code, and operational reliability.
* **Networking** — Protocols, load balancing, service mesh configuration, and network security posture.
* **Core Database** — Query optimization, schema design, indexing strategy, and data integrity constraints.
* **Performance** — Profiling, benchmarking, algorithmic complexity, and optimization patterns at scale.
* **Distributed Systems** — Consensus mechanisms, consistency models, fault tolerance, and distributed coordination.
* **Data Pipelines** — ETL design, streaming architectures, batch processing, and data quality.
* **Security** — Vulnerability detection, authentication and authorization flows, input validation, and threat modeling.
* **Platform** — Developer tooling, CI/CD pipeline design, internal platforms, and developer experience.
* **Systems** — Operating system concepts, memory management, concurrency primitives, and low-level programming.
* **APIs** — REST and GraphQL design, contract testing, API versioning, and client ergonomics.

## Language surface

Language surface controls which programming languages appear in the codebase and pull request. You have two approaches:

* **Restrict to specific languages** — Limit the assessment to one or two languages when the role has clear language requirements. This signals precise expectations to candidates and makes reviews directly comparable.
* **Allow a broader mix** — Permit a wider range of languages when hiring for generalist or polyglot engineers where adaptability matters more than language-specific depth.

<Tip>
  For senior specialist roles, restricting to 1–2 languages signals clear expectations to candidates and produces more directly comparable scorecards across your applicant pool. Reserve broader language surfaces for generalist, platform, or architecture-focused roles.
</Tip>

## Combining options

These three axes — difficulty, specialization, and language surface — compose independently, so the combinations are precise and meaningful. A **Senior + Security + Python** assessment tests a candidate's ability to identify authentication vulnerabilities, insecure deserialization, and injection risks in production-grade Python code. A **Mid-level + Frontend + TypeScript** assessment tests a different candidate on React patterns, type safety, and rendering correctness.

Choosing the right combination up front means the scorecard you receive reflects the actual bar for your role, making it easier to compare candidates and have confident debrief conversations with your hiring panel.
