Sawaal Saathi: Building a Friendly Interview-Practice Agent on AWS
Sawaal Saathi is a friendly AWS-powered interview-practice agent for students, learners, and job seekers. It asks interview questions, scores answers using the Situation–Task–Action–Result structure, and gives clear, encouraging coaching to help users improve one answer at a time.
Interview preparation can be difficult when there is no one available to listen to an answer and provide useful feedback. Many learners know they need to practise, but they do not know what to improve after writing an answer.
I built Sawaal Saathi, a friendly interview-practice agent that helps students, learners, and job seekers practise answering interview questions. It asks a question, evaluates the response, provides a score, identifies the parts of the answer that are present, and gives the user a practical next step.
The goal was to build something small, useful, and encouraging. Instead of making interview practice feel like a formal test, Sawaal Saathi turns it into a repeatable practice loop.

Live demo: https://hzq2lm4m3twfz3qn5ezibanmpq0gpjbe.lambda-url.us-east-1.on.aws/
What Sawaal Saathi does
Sawaal Saathi is designed for people who want to practise interview answers without needing another person to conduct a mock interview.
When a user opens the application, they can choose an interview category and coaching language. The agent displays a question, such as:
“Describe a goal you set for yourself and how you achieved it.”
The user writes an answer and selects Score my answer. Sawaal Saathi then returns:
- A score out of 100
- A short summary of the answer
- A checklist showing which response elements are present
- Friendly coaching feedback
- A suggested next step for improvement
The evaluation focuses on four useful interview components:
- Situation
- Task
- Action
- Result
This structure helps users understand why an answer received a particular score. For example, an answer may explain the situation and result but fail to describe the task or the specific action taken by the candidate.
Sawaal Saathi does not only say that an answer needs improvement. It explains what is missing and encourages the user to try again.

How I built it
Sawaal Saathi is a Python application deployed on AWS Lambda. I packaged the application as a ZIP file and uploaded it to a Lambda function.
The main AWS services and tools used were:
- AWS Lambda to run the application
- AWS Lambda Function URL to expose the agent through a public web address
- AWS IAM to manage the Lambda execution permissions
- Amazon Bedrock and Amazon Nova Lite as the planned model-integration path
- Amazon CloudWatch for deployment monitoring and troubleshooting
- Python for the application logic and deployment verification script
The Lambda function is configured with a public Function URL so that users can open Sawaal Saathi directly in a browser. I also configured the function timeout and environment variables needed by the application.
The application has two important parts. The first part is the interview-practice interface. It displays questions, accepts answers, and presents the result in a visual format. The second part is the scoring and feedback logic, which checks the answer for important interview components and generates coaching suggestions.

Architecture
The architecture is intentionally simple so that the application can be deployed and tested quickly.
The browser sends the user’s request to the AWS Lambda Function URL. Lambda receives the request, processes the answer, evaluates the response, and returns the score and feedback to the browser.
The public Function URL made it easier to test the deployed application from a normal browser. It also made the deployment proof straightforward because the same URL could be opened by another person.
I used IAM permissions for the Lambda execution role and configured the application to use a model identifier through an environment variable. Amazon Bedrock and Nova Lite are included as the planned live AI path, while the application currently has an offline simulator fallback so that the user can still experience the scoring and coaching workflow while model access is pending.
Making interview practice feel encouraging
The main experience decision was to make the feedback supportive and actionable.
A score by itself can feel discouraging. Sawaal Saathi therefore combines the score with positive feedback and a specific improvement suggestion.
For example, the application can show that the answer included the situation and result, but needs more detail about the task and action. It then suggests using more first-person language to explain what the user personally did.
The interface also uses friendly language such as:
“This is your baseline. Tweak your answer and try again to see your glow-up!”
This small detail was important because the agent is intended for people who may already feel nervous about interviews. The tone makes the experience feel more like practice with a supportive coach than an exam.
The workflow is simple:
- Read a question.
- Write an answer.
- Receive a score.
- See which parts are missing.
- Follow the next-step suggestion.
- Try again.
Testing the deployed agent
I tested the deployed AWS Function URL using a verification script. The final proof report confirmed that the main application flow works:
[PASS] Web page loads [PASS] Question endpoint [PASS] Scorecard worksI also tested the live interface directly. The application displayed an interview question, accepted an answer, returned a score of 42/100, showed the situation and result checks, and provided a coaching suggestion.
The screenshot included above shows the deployed Sawaal Saathi interface in action.
The current deployment also reports:
Feedback source: offline-simulator [FAIL] Bedrock self-check ValidationException: Operation not allowedThis means the deployed Lambda application and its scoring experience are working, but Amazon Bedrock/Nova Lite access still needs to be enabled for this AWS account before the application can use live model-backed feedback. I am documenting this limitation clearly instead of claiming that Bedrock is already active.
What comes next
The next step is to enable Amazon Bedrock model access and rerun the deployment verification. Once access is available, Sawaal Saathi can use live Nova Lite responses while preserving the same scoring structure and friendly coaching experience.
I would also like to add more interview categories, support additional coaching languages, and allow users to compare their first answer with an improved answer. Another useful improvement would be saving practice history so users can see how their scores change over time.
Sawaal Saathi started as a small interview-practice agent, but the project reinforced an important lesson: a useful agent does not need to be complicated. A clear question, understandable feedback, and one practical next step can make a meaningful difference to someone preparing for an interview.
Try Sawaal Saathi: https://hzq2lm4m3twfz3qn5ezibanmpq0gpjbe.lambda-url.us-east-1.on.aws/
source code: https://github.com/aasthat803/Sawaal-Saathi
Enjoyed reading this content? Let the author know!
Your likes, comments, shares, and saves help creators reach more builders.
Loading recommendations
Loading article