I was eating ramen and scrolling LinkedIn when I noticed something.
Project managers complaining that engineers never update Jira. Engineers complaining that PMs create tickets with zero context. Both groups agreeing that converting meeting notes into tickets manually is a nightmare. Job posts asking for "Jira automation experience." Everyone nodding. Nobody building anything.
I am a college student with zero work experience and a laptop that takes four minutes to open Chrome. So naturally, I decided to build the thing they were all complaining about.
The skeleton in the PM and engineer relationship
Here is what nobody says out loud: the real problem is not Jira. It is that after every meeting, someone has to do the boring work of translating what was said into structured tickets. PMs don't want to do it. Engineers don't want to do it. It falls into a gap and either gets done badly or not at all.
I figured if I could automate even 60% of that, I'd be solving something real. Not a tutorial project. An actual problem that people with real salaries were venting about publicly.
How it started (badly)
I found Atlassian. I Googled "Jira API free tier for students." I dug through forums and documentation for days because everything useful seemed to cost money. I had no idea what I was doing. My GitHub was rusty. My laptop was running on prayers and a 40% battery that never charges past 40%.
I wrote the first version in online compilers because my machine couldn't handle running a local server without freezing. Someone eventually told me about Replit. That saved me.
It took about two weeks to get something that actually ran.
What the tool does
You paste a meeting transcript into a form. The app scans it for action items using keyword matching — words like "will," "to do," "action item," "needs to." It then connects to the Jira API and creates real tickets automatically.
No OpenAI. No API bills. Just Python, Flask, keyword logic, and a lot of Stack Overflow.
The part that actually humbled me
The API was not the hard part. The hard part was that people talk like humans.
"Maybe someone should look into that" is not an action item. "We should probably circle back on this" is not an action item. "I feel like the timeline needs revisiting" is definitely not an action item, but my first version created a Jira ticket for it anyway.
I spent days tweaking keyword rules to stop the bot from hallucinating tasks. It is still not perfect. But it no longer files a ticket every time someone says "we should."
That problem — messy human language versus structured systems — is apparently what engineers at big companies work on too. I did not expect to stumble into it from a bowl of ramen.
Deployment, which was its own story
Vercel did not work. I tried for a day. Moved to Render. Got it running. Celebrated. Then my original Jira API key expired and I had to recreate all my environment variables from scratch.
One full extra day. For an expired key.
Nobody tells you about this part.
What is still broken (honestly)
It only handles plain text. No audio transcripts yet. It cannot assign tickets to specific people. If the Jira API slows down, the page just hangs — I have not added proper timeout handling. And the keyword matching misses anything phrased indirectly.
Next version: better error handling, maybe a lightweight NLP layer so it understands "John said he'd take care of the auth bug" as an action item assigned to John.
Why I'm writing this
Because the LinkedIn posts that made me build this were from people with years of experience who were still annoyed by a problem a college student with a broken laptop could take a shot at.
You don't need the job to build the thing. Build the thing and then get the job.
Live demo: https://meeting-to-jira-assistant.onrender.com/
GitHub: https://github.com/k-kj0
Top comments (0)