Inspiration
Many people are entirely unaware that negotiating is part of the interview process, and just as many are uncomfortable with the idea all the way up to the offer. This often leads to those with nontraditional backgrounds being underpaid compared to their peers. So I created a silly little game to make everyone a little more comfortable with the most awkward part of the whole thing.
What it does
Through a voice first interface, the user has to navigate a salary negotiation with Marcus', a hiring manager powered by Gemini 3 Flash. The user's voice is translated for machine understanding and then the model is able communicate back using Deepgram's TTS.
How we built it
Used a Python backend to implement bidirectional voice chat. Deepgram API provided access to fast and accurate TTS and STT models. Everything was hooked together through a React front end.
Challenges I ran into
- Gemini 3 documentation: Spent so much time on an error because the documentation doesn't clearly explain some changes.
- Latency vs. quality trade-off: Initial system prompt was verbose (4KB) which added latency to every LLM call. Had to cut instructions while maintaining Marcus's personality.
- Real-time audio synchronization: Managing the flow of audio, transcript updates, and TTS playback without race conditions required careful state management.
Accomplishments that I'm proud of
Shipped a working voice AI in 24 hours: Full STT → LLM → TTS pipeline with autonomous tool use and larned a tool that is unlike anything I have ever used before mostly through experimentation and documentation.
What I learned
I learned a lot about how AI can interface with external tools and how nothing comes for free despite how much the field has grown in the past couple years.
What's next for Salary Kombat
I'd like to use it to learn how agents can interface with much more complicated tools, and how to reduce latency so that technology like that can be more easily used by more people throughout the world.
Log in or sign up for Devpost to join the conversation.