Skip to main content

Problem Discovery

Understand the Real Need Before You Build​

In digital government, building a working system isn’t enough — we need to build the right system. Whether you’re developing a booking platform, a digital ID system, or an open data portal, the foundation of a successful service is a clear, validated understanding of the problem you're solving.

That’s what Problem Discovery is all about.

Problem discovery is the structured process of understanding the actual needs of users, the pain points in existing processes, and the context in which services are used, before jumping into design or development.

This approach is critical to national service design — where building the wrong thing wastes public money and undermines public trust.

1. Start with the Problem, Not the Feature​

As developers, it’s tempting to start by thinking in terms of components, APIs, or UIs. But before we build anything, we must first ask: What problem are we solving? For whom? What are the real constraints?

You may be handed a feature request — but behind that request could be:

  • A deeper user pain point
  • A policy mismatch
  • A process problem that shouldn’t be digitized at all
  • Discovery helps uncover the root cause, not just the surface-level symptoms.

2. Understand Who the Users Are​

“Identify your users and understand their ongoing needs.” — New Zealand Digital Service Design Standard

National services have many user types: citizens, businesses, civil servants, IT staff, third-party developers, etc. You must understand:

  • Who they are
  • What they’re trying to do
  • What frustrates them today

Even as a developer, you can engage with user understanding through methods like:

  • Stakeholder mapping: Identify all the people affected by your system — not just end users, but also internal users, system integrators, support teams, and policymakers. Visualizing this helps you understand different access needs, dependencies, and flows of information.
  • User interviews or surveys: Even reading a short transcript or summary of real user feedback can help you understand what features are essential vs. what is just "nice to have." Ask open-ended questions:
    • “What do you find difficult when using the current service?”
    • “What would make this task easier or faster?”
  • Journey mapping for current workflows: Document how users complete their task today — especially if it’s manual, hybrid (paper + digital), or reliant on multiple systems. Understanding this journey helps you see where to simplify, where handoffs happen, and where things break.

This helps developers model the right logic, data flows, and UX paths based on real people — not assumptions.

3. Use Discovery to De-Risk Development​

Discovery isn't just about empathy — it’s about efficiency. It helps developers avoid:

  • Building unnecessary features
  • Designing rigid systems for poorly understood workflows
  • Reworking features late in the cycle

By investing in discovery upfront, you reduce complexity, shorten delivery cycles, and build with confidence.

What Developers Should Do During Discovery​

In national service design, developers are not just builders — they are critical thinkers and collaborators who help shape the solution from the earliest stages. Problem discovery is not “someone else’s job.” The earlier developers engage in the discovery process, the more effective the system will be — technically and functionally.

Here’s how developers can contribute meaningfully during the discovery phase:

  • Participate in early discovery sessions when possible
  • Ask clarifying questions about workflows, exceptions, and user goals
  • Read user research summaries and personas
  • Build lightweight prototypes or mock APIs to support rapid testing
  • Collaborate closely with product owners and designers to iterate early

Final Thought: Discovery is Part of Development​

“You can’t code a great service unless you understand the problem it’s solving.”

Problem discovery is not a separate phase — it’s part of your development process. In Cambodia’s digital government mission, developers are not just implementers. You are co-creators of public value.

Make sure what you build actually helps people. That starts with discovering the real problem first.