Oral Exam II: Mock Technical Interview, Round 2
Congratulations! You passed the first round with your prototyping skills! In round 2 we'll focus on your prompt engineering skills.
Learning Objective: Demonstrate your ability to engineer effective prompts for a local LLM and communicate your understanding of technical concepts in a professional setting.
Scheduling
The second oral exam will be held from Monday, November 2nd to Friday, November 6th, 2026.
Schedule your interview time slot in Canvas no later than Sunday, November 1st at 11:59pm. The oral exam time slots are on a first-come, first-served basis. If you do not sign up for an oral exam time slot by the deadline, you will receive a 0 for the exam.
Professionalism is important. Not showing up to your scheduled appointment or canceling within 24 hours of your scheduled appointment will result in 0 credit for the exam. No exceptions.
To schedule in Canvas, select the Calendar tab in the left sidebar, then show only the INFO 4340/5440 calendar. Then pick a time slot that works for you and click on it to sign up.
Format
The mock technical interview will last a maximum of 15 minutes. (You may finish early, but there is a hard stop at 15 minutes.) A timer will be present during the interview to help you manage your time.
You will be provided an exam repository with a WebLLM assistant app. You should have the repository open as a Codespace (or Dev Container in Docker) with the model loaded before the interview begins. Your repository and Codespace should be unmodified at the start of the exam. Any modifications made to the repository or Codespace before the exam begins are considered a violation of the Code of Academic Integrity.
At your scheduled time, the proctor will introduce the exam and start the 15-minute timer. You will be randomly assigned a (GitHub) issue that asks you to engineer a system prompt for a task. During the interview, you will be asked to think aloud and explain your reasoning as you work through the problem.
You should be able to demonstrate the following skills during the interview as part of completing the assigned issue:
- writing a system prompt using the system prompt characteristics (persona, safety & ethics, behavioral guidance, capability awareness, response formatting) that fit the task
- providing context to the model using template literals and interpolation (
${}) - one-shot, few-shot, and chain-of-thought prompting
- writing efficient prompts (specific and descriptive, but no bigger than necessary) that produce a response in a reasonable amount of time
- testing, critiquing, and revising a prompt
You decide when you're done with the issue (within the 15-minute time limit). When you're finished, the exam proctor will evaluate your prompt engineering skills with a surprise user prompt. The proctor will evaluate the model's response based on the issue's acceptance criteria, the appropriateness of the system prompt characteristics, and the efficiency of the response in terms of time and tokens.
The responses from small models are slightly unpredictable and vary even for the same user prompt. If the response from the surprise prompt does not meet the acceptance criteria, you will send the same prompt again to see if the model produces a better response. The proctor will grade the better of the two responses. You will not be able to change your prompt after you see the surprise user prompt.
You may use a one-page (8.5" × 11"), front and back, cheat sheet with your handwritten notes during the exam. You must submit your cheat sheet at the end of the exam. All other resources are prohibited, including the internet and AI tools like GitHub Copilot. Scratch paper will be provided.
You will be required to commit and sync/push your exam repository at the end of the exam.
Grading
Your oral exam will be evaluated on the following criteria:
- Professionalism: How effectively you demonstrated professionalism during the interview, including being on time, being prepared, and communicating respectfully.
- Communication: How effectively you communicated your understanding of the technical concepts and your problem-solving process.
- Problem-Solving: How effectively you tested, critiqued, and revised your prompt.
- Technical Competency: How effectively you applied prompt engineering techniques so that your assistant meets the issue's acceptance criteria for the surprise user prompt.
For each criterion, you will receive 0, 1, 2, 3, or 4 points. The entire exam is worth 16 points.
Professionalism (25%)
| Points | |
|---|---|
| 4 | On time and prepared (Codespace running and unmodified, no Copilot, model loaded). Appropriately dressed. Composed and engaged, even when stuck. |
| 3 | One minor lapse (e.g. model still loading, briefly flustered). |
| 2 | Slightly late or not fully prepared (e.g. Codespace needs a reset), or flustered/disengaged at times. |
| 1 | Late and unprepared, or frequently disengaged. |
| 0 | Very late, unprofessional or disrespectful, or breaks the exam rules (e.g. typed cheat sheet, other resources, AI). |
Communication (25%)
| Points | |
|---|---|
| 4 | Thinks aloud throughout without prompting. Clearly explains what they are adding to the prompt and why, using correct vocabulary (system prompt, context, one-shot/few-shot, etc.). Answers to questions are accurate and specific. |
| 3 | Thinks aloud most of the time with occasional prompting. Explains what and usually why. Vocabulary is mostly correct. |
| 2 | Thinks aloud some of the time, but often needs prompting. Explains what is being typed, but the why is vague or missing. Vocabulary is sometimes missing or used incorrectly (e.g. calls the system prompt "the question"). |
| 1 | Rarely thinks aloud, even with prompting. Explanations mostly read the prompt aloud. |
| 0 | Silent, or explanations are inaccurate. Unable to explain what their prompt does or why. |
Problem-Solving (25%)
| Points | |
|---|---|
| 4 | Uses responses to decide what to add (missing facts → context; wrong format → format instructions/examples). Starts short, tests, critiques against the acceptance criteria, and makes targeted revisions. Tests beyond the obvious case. Needs little guidance. |
| 3 | Iterative, but tests only the obvious case or some revisions are guesses. Needs a nudge or two. |
| 2 | Unorganized (e.g. writes a long prompt before testing); mostly trial-and-error. Needs several nudges. |
| 1 | Rarely tests, or doesn't connect results to revisions. Little progress, even with guidance. |
| 0 | Doesn't understand the issue or doesn't test. No progress, even with guidance. |
Technical Competency (25%)
| Points | |
|---|---|
| 4 | Surprise response (the better try) meets. Well-engineered prompt: context via ${}; the system prompt characteristics that fit the task (persona, safety & ethics, behavioral guidance, capability awareness, response formatting); one-shot, few-shot, or chain of thought if the task needs them; specific and descriptive, but no bigger than necessary. |
| 3 | Surprise response meets, but the prompt has a gap (a characteristic that fits the task is missing, or the prompt is bloated). Or partly meets, but the prompt clearly covers the case (the model ignored it twice). |
| 2 | Surprise response partly meets (including long, rambling responses). |
| 1 | Surprise response doesn't meet, but context is via ${} and the prompt addresses some criteria. Or context isn't via ${}, even if it meets. |
| 0 | Surprise response doesn't meet, and context is missing/copy-pasted or the prompt is minimal or unrelated. |
Preparation
The exam builds on the prompt engineering activities from class (restaurant review ratings, the System Prompt Maker, Game Night, and the Syllabus Assistant) and Homeworks 4 and 5.
Prepare by practicing with the exam repository. Make up a task-specific assistant for something the model can't know about (your club, a made-up store, a course policy), write the facts as context, and engineer a prompt for it. You will find this easier if you study with a partner: one person writes the assistant's prompt, and the other person tries to "break" it with user prompts the author didn't expect.
When you're done practicing, reset the exam repository (git reset --hard, git clean -dfx, npm install).
Before the Interview
You need not wear formal dress nor business casual for this mock interview, but also don't show up in sweatpants and flip-flops.
Open your exam repository as a Codespace and have it up and running before the exam starts. Open the app and wait for the model to finish loading. Make no changes to the repository or Codespace.
Wait until called before entering the examination room (Malott 301D).
The exam timer starts exactly at your scheduled time, even if you are not present or your Codespace is not running. If you arrive late, you will have less time to complete the issue.