---
title: Principles
description: "The principles that guide product engineering at Langfuse: how we decide what to build, how we ship it, and what we expect of each other."
---

# Product Engineering Principles

## What we do

- Define a group of lead users with whom we can iterate more closely on each product area
- Product areas are clearly split between engineers (see [ownership](/handbook/how-we-work/ownership))
- Write docs, do support
  - Docs are how we scale and a key aspect of the product
  - Support is how we learn and make sure that customers ping us whenever the product is not as great as it could be
- Question/cut scope to ensure quality/speed/maintainability
- Follow the [Product Ops workflow](/handbook/product-engineering/how-we-work/product-ops) to
  - Act swiftly on customer feedback (bugs, improvements) if core to roadmap/strategy; goal to get them shipped same-week if small; builds trust and compounds
  - Move feedback from Slack/Pylon/… into Linear ASAP if we want to ship this, thereby we reduce noise in public channels and track execution of improvements

This requires

- Inbox 0 on Linear Inbox and Pylon — see [Using Linear](/handbook/tools-and-processes/using-linear) for the Linear inbox SLA
- Write docs/changelog posts when shipping something

## What we don't do

- Optimize for the requirements of a single user if it does not match our roadmap
- Communicate timelines externally
- Get into high-stress; we are calmly shipping at high velocity/quality

<!-- agent-instructions -->

---

## Agent Instructions

This page is part of the [Langfuse](https://langfuse.com) documentation, published as plain Markdown for AI agents. Every page is available as Markdown by appending `.md` to its URL, or by sending an `Accept: text/markdown` header. This page: `https://langfuse.com/handbook/product-engineering/principles.md`.

### Querying these docs

If the answer is not on this page, query the documentation instead of guessing:

- **Semantic search** across all Langfuse docs, returning an answer with the relevant pages and excerpts. Ask a specific, self-contained question:

  ```bash
  curl -sG "https://langfuse.com/api/search-docs" --data-urlencode "query=How do I trace a LangGraph agent?"
  ```

- **Index of every page**: <https://langfuse.com/llms.txt>, with per-section indexes [llms-docs.txt](https://langfuse.com/llms-docs.txt), [llms-integrations.txt](https://langfuse.com/llms-integrations.txt), and [llms-self-hosting.txt](https://langfuse.com/llms-self-hosting.txt).

### Before writing Langfuse code

- **Install the [Langfuse Agent Skill](https://langfuse.com/docs/api-and-data-platform/features/agent-skill).** It encodes Langfuse's own best practices for instrumentation, prompt management, and evaluation, and materially improves results.
- **Read [What does a good trace look like?](https://langfuse.com/docs/observability/best-practices.md)** before instrumenting an application.
- **Verify endpoints, parameters, and response fields** against the [API reference](https://api.reference.langfuse.com) instead of inferring them from code examples.
- **Use the [Langfuse CLI](https://langfuse.com/docs/api-and-data-platform/features/cli)** (`npx langfuse-cli api <resource> <action>`) to read or write traces, prompts, datasets, and scores from the terminal.

Found an error in these docs? Please open an issue at <https://github.com/langfuse/langfuse-docs/issues>.
