Planview Interview Experience | Full Stack Python Developer

planview logo
planview
· Full Stack Python Developer
July 21, 2026 · 0 reads

Summary

I went through two rounds, including a system design discussion and an LRU cache coding question, but was rejected because I used Java instead of the preferred Python.

Full Experience

Interview Experience | Python Backend Role | 2 Rounds + LRU Cache | Rejected Despite Correct Solution

Round 1 (26 June)

The first round was mostly discussion-based.

Topics Covered

  • System Design of my current projects
  • Python fundamentals
  • AI projects and practical usage

The interviewer spent a good amount of time discussing my architecture decisions and how I had built AI‑powered solutions at work.

Round 2 (30 June)

This round focused on:

  • Deep dive into my projects
  • How I use AI in my day‑to‑day development workflow
  • 1 Coding Question

DSA Question — Implement SmartCache (LRU Cache)

Design a cache with limited capacity.

Implement:

  • SmartCache(int capacity)
  • get(int key)
  • put(int key, int value)

Requirements

  • Return -1 if key doesn't exist.
  • Every access makes the key Most Recently Used.
  • If cache is full, evict the Least Recently Used (LRU) item.

Expected Approach

Use:

  • HashMap → O(1) lookup
  • Doubly Linked List → Maintain usage order

Operations:

  • get() → Move node to front
  • put()
    • Update existing → Move to front
    • If full → Remove tail (LRU)

Complexity

  • get() → O(1)
  • put() → O(1)
  • Space → O(capacity)

Follow‑up

After writing the solution, the interviewer asked me to:

  • Run through multiple test cases
  • Explain every pointer update
  • Justify why both operations remain O(1)
  • Discuss edge cases (capacity = 1, updating existing keys, repeated gets)

Everything went smoothly, and the follow‑up discussion was positive.

Verdict

Rejected

The feedback was that the role was primarily for a Python Developer.

Although:

  • My approach was correct
  • My Java implementation was correct
  • I cleared the dry run
  • I answered all follow‑up questions

...the expectation was to code in Python, while I chose Java.

Takeaway

For language‑specific backend roles, always ask the interviewer which programming language they prefer before starting the coding round. A correct solution isn't always enough if the interview is evaluating proficiency in a particular language.

Hope this experience helps someone preparing for similar interviews. Good luck!

Interview Questions (1)

1.

Implement SmartCache (LRU Cache)

Data Structures & Algorithms

Design a cache with limited capacity.

Implement:

  • SmartCache(int capacity)
  • get(int key)
  • put(int key, int value)

Requirements:

  • Return -1 if the key does not exist.
  • Every access makes the key Most Recently Used.
  • If the cache is full, evict the Least Recently Used (LRU) item.

Expected Approach:

  • Use a HashMap for O(1) lookups.
  • Use a Doubly Linked List to maintain usage order.
  • get() moves the accessed node to the front.
  • put() updates existing nodes and moves them to the front; if the cache is full, remove the tail node (LRU).

Complexity:

  • get() O(1)
  • put() O(1)
  • Space O(capacity)

📣 Found this helpful? Please share it with friends who are preparing for interviews!

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!