Skip to content

riverpilot/decomp

Repository files navigation

Palantir Decomposition Interview Simulator

An interactive AI-powered practice tool for Palantir's unique Decomposition interview format. Practice with 11 real interview questions, get feedback from an AI interviewer, and receive comprehensive evaluation scores.

Features

  • 11 Real Questions: Authentic Palantir decomposition problems across different categories
  • 40-Minute Timed Interviews: Realistic time pressure with countdown timer
  • AI Interviewer: Claude acts as a challenging but collaborative interviewer
  • Workspace: Built-in note-taking area for pseudocode, diagrams, and decomposition
  • 7-Dimension Rubric: Comprehensive evaluation on clarification, decomposition, user-centric thinking, technical depth, trade-offs, communication, and adaptability
  • Detailed Feedback: Per-dimension scores with specific feedback and improvement areas

Prerequisites

  • Node.js 18+ and npm
  • A local LiteLLM instance running (or access to Claude API)

Setup

  1. Install dependencies:

    npm install
  2. Configure LiteLLM:

    The app expects a local LiteLLM proxy running at http://localhost:4000.

    To set up LiteLLM:

    # Install litellm
    pip install litellm[proxy]
    
    # Run the proxy (example with Claude)
    litellm --model claude-sonnet-4-20250514 --api_key YOUR_ANTHROPIC_API_KEY
  3. Configure environment variables:

    Edit .env.local and set your LiteLLM endpoint and API key:

    LITELLM_API_URL=http://localhost:4000/v1/chat/completions
    LITELLM_API_KEY=your_key_here
    
  4. Run the development server:

    npm run dev
  5. Open your browser: Navigate to http://localhost:3000

How to Use

  1. Select a Question: Choose from 11 different decomposition problems
  2. Read the Briefing: Understand the problem before starting
  3. Start Interview: Begin your 40-minute timed session
  4. Interact: Chat with the AI interviewer while taking notes in the workspace
  5. Submit: When done (or time expires), submit for evaluation
  6. Review Results: Get detailed scores and feedback on 7 dimensions

Question Categories

  • Data-Focused: Problems centered around datasets and insights
  • User-Centric: User empathy and experience-focused challenges
  • Logic-Focused: Entity modeling and system logic design
  • Product Design: End-to-end product decomposition

Evaluation Rubric

You'll be scored 1-5 on each dimension:

  1. Problem Clarification: Asked good questions before jumping to solutions
  2. Decomposition Quality: Broke problem into clear, logical subproblems
  3. User-Centric Thinking: Considered end user needs and constraints
  4. Technical Depth: Proposed technically sound solutions with specifics
  5. Trade-off Discussion: Discussed alternatives and justified decisions
  6. Communication Clarity: Explained reasoning clearly and stayed structured
  7. Adaptability: Handled pushback and added complexity well

LiteLLM Configuration

The app uses LiteLLM to provide a flexible way to connect to various LLM providers. You can configure LiteLLM to use:

  • Anthropic Claude
  • OpenAI GPT-4
  • Local models via Ollama
  • Any OpenAI-compatible API

Example LiteLLM config file (litellm_config.yaml):

model_list:
  - model_name: claude-sonnet-4-20250514
    litellm_params:
      model: anthropic/claude-sonnet-4-20250514
      api_key: os.environ/ANTHROPIC_API_KEY

Then run:

litellm --config litellm_config.yaml

Tech Stack

  • Frontend: Next.js 14, React 18, TypeScript
  • Styling: Inline styles (no external CSS framework)
  • AI: Claude via LiteLLM proxy
  • Fonts: IBM Plex Sans & IBM Plex Mono

Project Structure

palantir-decomp-simulator/
├── app/
│   ├── api/claude/       # API route for LiteLLM proxy
│   ├── globals.css       # Global styles
│   ├── layout.tsx        # Root layout
│   └── page.tsx          # Main simulator component
├── data/
│   ├── questions.ts      # All 11 interview questions
│   └── rubric.ts         # Evaluation dimensions
├── lib/
│   └── prompts.ts        # System prompts for AI
├── styles/
│   └── colors.ts         # Design system colors
├── types/
│   └── index.ts          # TypeScript interfaces
└── .env.local            # Environment configuration

Credits

Based on research from 30+ candidate reports across:

  • interviewing.io
  • Prepfully
  • Blind
  • Glassdoor
  • Reddit (r/csMajors)
  • Palantir's official blog

Questions and format derived from real Palantir Forward Deployed Software Engineer (Delta) interview experiences.

License

MIT

Disclaimer

This is an unofficial practice tool and is not affiliated with or endorsed by Palantir Technologies. All interview questions are reconstructed from publicly available candidate reports.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors