DEV Community

Nirmala Devi Patel
Nirmala Devi Patel

Posted on

AI Was Helping Me Prepare for Internships — Until I Realized It Was Forgetting Everything 🤯

I didn’t expect memory to be the problem 🧠

While building an AI career advisor, I kept running into the same issue.

Every interaction looked good in isolation.
But the moment I tried to use it across multiple sessions, everything broke.

I’d ask for resume feedback, get useful suggestions, close the tab—and when I came back, the system had no idea who I was.

At first, I assumed this was just a limitation of prompts.

It wasn’t.

What I was trying to build 🚀

The goal was straightforward:

An AI assistant that helps students with:

📄 Resume feedback

📊 Skill gap analysis

🎯 Internship tracking

🎤 Interview preparation

The stack itself was not unusual:

React frontend

Node.js backend

LLM for response generation

🧠 A persistent memory layer

The real difference was in how requests were handled.

Instead of treating each query independently, the system reconstructs user context before generating a response.

The problem only shows up at scale 📉

If you test with single prompts, everything works fine.

But real usage doesn’t look like that.

Internship preparation is not one interaction—it’s a sequence:

📚 Learning new skills

🛠 Building projects

📨 Applying to companies

📈 Improving based on feedback

If the system forgets each step, it can’t provide meaningful guidance.

Stateless systems don’t work for long-term workflows ⚠️

Most LLM-based applications follow a simple pattern:

This works well for isolated questions.

But it completely ignores history.

There’s no awareness of:

progress

past mistakes

user-specific context

Which leads to repetitive, generic answers.

Rethinking the problem: career prep as a timeline ⏳

Instead of treating interactions as isolated queries, I started modeling them as a timeline.

Each user has:

👤 A profile (skills, projects)

📌 Events (applications, interviews)

💬 Session context (recent interactions)

So the system should behave more like this:


That small change shifts the entire system behavior.

Why memory changes everything 🔥

Once the system has access to structured context, even basic features improve.

📄 Resume feedback becomes contextual

based on actual projects

not generic suggestions

📊 Skill recommendations become targeted

derived from real gaps

not random lists

🎯 Internship suggestions become relevant

filtered using past activity

not broad recommendations

At this point, memory is no longer a feature—it becomes infrastructure.

Why I didn’t build memory from scratch 🧩

Instead of implementing storage and retrieval from the ground up, I used:

👉 https://github.com/vectorize-io/hindsight

It provides a structured way to:

store interactions

retrieve relevant context

evolve memory over time

The documentation helped shape the retrieval logic:
👉 https://hindsight.vectorize.io/

And the broader concept of agent memory:
👉 https://vectorize.io/features/agent-memory

What changed after adding memory 📈

Before:

repeated questions

generic suggestions

no continuity

After:

context-aware responses

pattern recognition

progressive improvement

A simple example:

Before:

“Add more projects”

After:

“You built a REST API last week—include it in your resume.”

That difference comes entirely from memory.

What surprised me the most 🤔

I initially thought better prompts would solve the problem.

They didn’t.

The biggest improvements came from:

storing structured user data

retrieving only relevant context

Memory quality mattered far more than prompt engineering.

Lessons learned 🧠

Without memory, personalization is not possible

More data is not better—structured data is

Retrieval is harder than storage

Systems should improve over time, not reset

Final thought 💡

Most AI tools today are optimized for single interactions.

But real problems—like career preparation—are sequences.

Once you design for that, memory stops being optional.

👉 It becomes the system.

Top comments (0)