{"slug": "i-built-80-of-an-ai-video-generation-platform-as-a-first-year-intern-here-s-what", "title": "I Built 80% of an AI Video Generation Platform as a First-Year Intern & Here's What I Learned", "summary": "A software developer intern at Plumo AI built roughly 80% of the company's AI video generation platform during a summer internship, including the Flutter frontend, most of the NestJS backend, and a multi-agent pipeline chaining Whisper transcription, ElevenLabs voice replication, HeyGen video generation, and the Instagram Graph API. The developer reports that the hardest problems were integration failures at agent handoffs, which were resolved by adding explicit output-format validation between each stage.", "body_md": "When I joined Plumo AI as a Software Developer Intern this summer, I expected to contribute to a small feature or two. What actually happened was that I ended up building the entire frontend in Flutter, roughly 80% of the NestJS backend, and integrating a multi-agent AI pipeline that connected Whisper, ElevenLabs, HeyGen, and the Instagram Graph API into one coherent system. This post is about what that actually looked like, not the polished version, but the real one.\n\n**What we were building**:\n\nPlumo AI is a B2C platform under which I was building this product that automates AI driven video content creation. The pipeline works like this: a user uploads or links a video, a transcription agent extracts the audio and converts it to text using Whisper, a voice replication agent recreates the voice using ElevenLabs, a video generation agent produces the final video using HeyGen and then the content gets published automatically via the Instagram Graph API. Each of these is a separate agent with its own input format, output format and failure mode. My job was to build the frontend that users interact with, the backend services that coordinate all of this, and wire the agents into a single working pipeline.\n\n**The first real problem: making frontend and backend actually talk**\n\nThe hardest part wasn't any single agent. It was making the Flutter frontend, the NestJS backend and the agent layer all work together continuously without the flow breaking down somewhere in the middle. In theory, the architecture is clean, user action triggers a backend call, backend triggers the first agent, output flows to the next. In practice, every handoff point was a potential failure. The user authentication and account activation flow was particularly painful because it sat at the entry point of everything, if the session wasn't established correctly, none of the downstream agent calls would work either. Getting the full flow from sign-in through to a completed agent pipeline working end to end required debugging across three different layers simultaneously, which is something you cannot really prepare for by reading documentation.\n\n**The second real problem: agents that work individually but break together**\n\nEach agent worked fine in isolation. The transcription agent handled audio correctly. The voice replication agent produced accurate output when given clean text. But when I connected them, things broke in ways that were not obvious. The transcription agent would succeed and return its output in one format, but the next agent in the pipeline expected a slightly different structure, different field names, different nesting, different handling of edge cases like silence or background noise in the audio. When the extraction was working but transcription was failing, or vice versa, the error messages were often misleading because the failure was happening at the handoff between agents, not inside either agent itself.\n\nWhat fixed it was building explicit validation at every handoff point. Before passing output from one agent to the next, I added checks that verified the response was in the expected format before the next agent tried to consume it. This sounds obvious in retrospect but when you're building a system this way for the first time, you assume the agents will just work together because they each work individually. They don't.\n\n**What I actually learned**\n\nThe clearest thing I took away from this internship is the difference between building something that works and building something that keeps working as the system grows. When you have one API call in a project, error handling is simple. When you have five agents in sequence, each calling external APIs with their own rate limits, latency and output variations, the failure surface is completely different. A failure in agent three doesn't look like an error in agent three rather it looks like agent four returning nothing useful.\n\nI also learned that system integration is its own skill, separate from knowing the individual technologies. I knew Flutter, I knew NestJS, I had used APIs before. But knowing each piece didn't automatically tell me how to make them work together at scale. That understanding only came from actually hitting the problems like the inconsistent formats, the session flow breaking, the agent pipeline dropping state in the middle and solving them one by one.\n\n**What's next**\n\nIf I were to do it again, I'd build explicit contract tests between agents from day one rather than discovering format mismatches after connecting them. I'd also instrument every agent handoff with structured logging from the start, because when something breaks in the middle of a five step pipeline, knowing exactly what each agent received and returned is the only way to debug it efficiently.\n\nFor anyone building multi agent systems for the first time: the agents are not the hard part. The contracts between them are.", "url": "https://wpnews.pro/news/i-built-80-of-an-ai-video-generation-platform-as-a-first-year-intern-here-s-what", "canonical_source": "https://dev.to/sambhavi0/i-built-80-of-an-ai-video-generation-platform-as-a-first-year-intern-heres-what-i-learned-4la3", "published_at": "2026-10-02 14:35:29+00:00", "updated_at": "2026-10-02 14:38:03.817866+00:00", "lang": "en", "topics": ["ai-agents", "generative-ai", "ai-products", "developer-tools"], "entities": ["Plumo AI", "Flutter", "NestJS", "Whisper", "ElevenLabs", "HeyGen", "Instagram Graph API"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/i-built-80-of-an-ai-video-generation-platform-as-a-first-year-intern-here-s-what", "markdown": "https://wpnews.pro/news/i-built-80-of-an-ai-video-generation-platform-as-a-first-year-intern-here-s-what.md", "text": "https://wpnews.pro/news/i-built-80-of-an-ai-video-generation-platform-as-a-first-year-intern-here-s-what.txt", "jsonld": "https://wpnews.pro/news/i-built-80-of-an-ai-video-generation-platform-as-a-first-year-intern-here-s-what.jsonld"}}