Speak at The Fifth Elephant 2026 Annual Conference
Share you work with the community
Jul 2026
13 Mon
14 Tue
15 Wed
16 Thu
17 Fri 09:00 AM – 06:00 PM IST
18 Sat 09:00 AM – 06:00 PM IST
19 Sun
sooraj shankar
@soorajshankar
Submitted May 30, 2026
AI agent memory is often discussed as a prompting problem or a vector search problem. In production, it behaves much more like a data system. Agents need to store facts, preferences, decisions, intermediate notes, and shared organizational context. That memory has to be named, scoped, searched, updated, versioned, inspected, and eventually corrected.
This session looks at agent memory through a data engineering lens. We will discuss how to model memory as scoped state rather than opaque prompt text: virtual paths for user and shared memory, full-text search alongside retrieval, revision history for every write, access logs for observability, and controlled context injection back into the model. I will use MemexAI, an open-source Postgres-backed memory layer for agents, as the implementation example, but the talk is designed around reusable design patterns and trade-offs for anyone building long-running AI systems.
Takeaways:
This session is useful for data engineers, ML systems engineers, AI platform teams, backend engineers, and product engineers building RAG systems, copilots, or long-running agents that need persistent and inspectable context.
Sooraj Sanker is a Bengaluru-based fullstack and AI engineer, and the founder of MemexAI, an open-source Postgres-backed memory layer for long-horizon AI agents. He spent roughly six years at Hasura and PromptQL, where he worked on conversational analytics, AI agent interfaces, tool-based workflows, artifact-aware chat, and state management for distributed agent execution. His work sits at the intersection of agent infrastructure, context engineering, data UX, and production reliability.
Draft slides: https://drive.google.com/file/d/1-UAb5BWP_CQIMcRxrWe0Im21VOmoAerW/view?usp=sharing
{{ gettext('Login to leave a comment') }}
{{ gettext('Post a comment…') }}{{ errorMsg }}
{{ gettext('No comments posted yet') }}