Viva prep · Real questions · Student experiences Enroll in Bootcamp

Proctor workspace

Proctor APPDEV_LEVEL1_VIVA1

Share your experience Add your viva experience here
150 Questions
22 Sets
0 Topics
5 Reviews
Tips for this examiner: Just be confident

Student reviews

leaf MAD1

he is pretty chill and patient, don't panic and keep answering. he will give you enough time to think and write codes.

Questions remembered
  1. asked to write the frontend code for the login page
  2. and the backend code for the login page
  3. how are we storing the details of the current user? a lot of time was gone after the proctor joined 10 minutes late, and i had network issues for a while, so he extended my viva for 20 minutes, just asked me the coding questions and told me to prepare well for level-2 viva.
Anonya MAD1

He is very silent. You need to ask him for everything atleast twice. Its almost as if he isnt looking. To be frank , I didnt even know how my viva went. Anyways, stay calm and explain whatever you know properly.

Questions remembered
  1. First, show your id and github collaborator and commits
  2. Then, download application and run. (I faced an issue here while installing dependencies from requirements.txt , but he helped me through this.)
  3. Next , I was asked to demonstrate the app.( I ran into an error here and fixed it myself. He didnt say anything.)
  4. Next, he asked me to write whatever I knew about jinja in Notepad.
  5. Then, he asked me to write python code for api end point to fetch an html file.
  6. After that my viva was over.(He said thankyou and all the best for level-2 viva)
SK MAD1

overall good proctor, don't panic. Do fast whatever he told either it is coding or theory question....he already mentioned in the beginning of viva don't explain theory question just tell me what it is bs.

Questions remembered
  1. 1st he starts with either do checksum or redowload from the portal----so re-dowloaded 2nd he cheked collaborator but don't know my github stuck showing error he waited then start with Theory question same mentioned in sheet
  2. sessions vs tokens
  3. put and patch
  4. autherorization and authentication
  5. ORM and have you used ? which one ? coding question open notepad
  6. write basic form and button
  7. query to fetch all blacklisted company
  8. flask login route and hello route then check functionality
Sheet response MAD1

Have a full knowledge on your project, ans what you know with clarity

Questions remembered
  1. Asked to export project from dashboard (zip), check for collaborator access
  2. Theoretical questions:
  3. Diff btw Authorization and authentication
  4. Diff btw put and patch
  5. Render template
  6. What is template and some other
  7. Db relationship in your project (o-o o-m)
  8. Code in notepad:
  9. Create a Form
  10. app route for login with authentication (same as you implemented)
  11. Query to get all the company id from applications
  12. Project functionality:
  13. Was asked to do all the core functionality and to show warning msg on certain conditions like while logging in after being blacklisted, etc.
Monika MAD1

The proctor was chill and asked the questions on the flow of my demo. He made sure that we are not panicking when questions are asked.

Questions remembered
  1. VIVA 1:
  2. Show the demo of application
  3. Show double booking prevention of appointments
  4. Authentication and authorisation difference
  5. Lazy = true meaning
  6. Blacklist the doctor and show what it does
  7. Difference between Blacklist and delete

Approved viva sets

  1. 1
    * Demo of project
    Times asked 1
  1. 1
    same as previous questions in the sheet (for level 1)
    Times asked 2
Advice: know your project well that will be enough
  1. 1
    - Show ID
    Times asked 3
  2. 2
    - Show GitHub Repo
    Times asked 1
  3. 3
    - Detailed codes
    Times asked 2
  4. 4
    - questions, files, show api,
    Times asked 2
  5. 5
    - write all the vue codes you know or used in notepad.
    Times asked 2
  6. 6
    - Explain your codes, all modules from the start,
    Times asked 2
  7. 7
    - explain each functions that are being used.
    Times asked 2
  8. 8
    Some personal questions,
    Times asked 2
  9. 9
    - like what I'm doing currently and
    Times asked 2
  10. 10
    - where I see myself in 5 years.
    Times asked 2
  11. 11
    - grades in every other project
    Times asked 2
  12. 12
    Didn't let me show the application, or explain it.
    Times asked 2
Advice: Be confident, Know your codes, know your file and know basic coding
  1. 1
    id card
    Times asked 2
  2. 2
    github repo - no of commits, how long it took to finish project, collaborators
    Times asked 2
  3. 3
    download and start app
    Times asked 2
  4. 4
    present app
    Times asked 2
  5. 5
    explain project structure -> BE VERY CLEAR and CONFIDENT while answering this question.
    Times asked 2
  6. 6
    explain db
    Times asked 1
  7. 7
    anything you did not implement? i implemented all mandatory requirements, so no issues
    Times asked 2
  8. 8
    explain for loop in vue.js with a code, then use api call in the script to get data from the app
    Times asked 2
  9. 9
    asked what grade i got in mad1, and wished well for level2 viva
    Times asked 2
Advice: Be confident. Just know your project and code well, he is a chill proctor, gives enough time to answer, no pressure, i did say wrong answer sometimes, he did not mind, gave clues and encouraged a lot
  1. 1
    Level 1 Hospital Management System
    Times asked 2
  2. 2
    Vue CLI vs CDN
    Times asked 2
  3. 3
    Are you using session or token for authentication?
    Times asked 2
  4. 4
    Token is stored in client side or server side?
    Times asked 1
  5. 5
    Asked to set doctor availability and to view the same doctor’s availability from the patient side
    Times asked 2
  6. 6
    Asked to show where I have used lifecycle hook
    Times asked 1
  7. 7
    Asked to show cache expiry code
    Times asked 2
  8. 8
    Asked to login with a blacklisted doctor
    Times asked 2
  9. 9
    Asked if admin can view individual patient history
    Times asked 2
  10. 10
    Coding in notepad
    Times asked 2
  11. 11
    To build vue component with a toggle button which toggles between Hello and GoodBye
    Times asked 2
  12. 12
    To write api route to fetch blacklisted doctors
    Times asked 2
Advice: Very polite proctor. Be prepared to write codes in notepad.
  1. 1
    Mad 2 Viva-1 Placement Portal app
    Times asked 2
  2. 2
    Demonstration
    Times asked 2
  3. 3
    When button is clicked it shows hello Vue component
    Times asked 2
  4. 4
    Login route backend
    Times asked 2
Advice: 1.Practice coding question from the sheet and this (https://docs.google.com/document/d/1-pEm7KwOly0tDNIZep06VW42AceIH41nqYc6CZSLemw/edit?usp=drivesdk) 2. Learn all theory question and understand your code and workflow properly 3. Sir is very chill, kind and understanding. Wants quick and precise answers."
  1. 1
    Gave 5 min for setup application
    Times asked 2
  2. 2
    First he asked theory
    Times asked 2
  3. 3
    Diff between one way vs two binding
    Times asked 1
  4. 4
    Vue lifecycle
    Times asked 2
  5. 5
    Asked me to write show "hello" when click button in notepad
    Times asked 2
  6. 6
    Asked to login route in notepad
    Times asked 2
  7. 7
    What have you used for rbac
    Times asked 2
  8. 8
    Authentication token saved client or server side?
    Times asked 2
  9. 9
    Then demo checked all core feature working
    Times asked 2
Advice: He is chill guy. Read previous questions for theory,be ready for some snippet code writing in notepad
  1. 1
    - Collaborator
    Times asked 2
  2. 2
    - Start with demo
    Times asked 2
  3. 3
    - Asked about some code from project
    Times asked 2
  4. 4
    - 1 way 2 way binding
    Times asked 2
  5. 5
    - some vue basic questions
    Times asked 2
  6. 6
    Coding part
    Times asked 2
  7. 7
    - basic vue component implementing a button when clicked prints "HI"
    Times asked 2
  8. 8
    - basic api which takes date of birth as input and gives age as output
    Times asked 2
Advice: - Very patient and kind proctor. Dont worry, he gives time for everything, just be calm. - He is chill. - Just know your code and make sure everything works fine. - he will give a nice feedback at the end of viva and explain what all went wrong etc.
  1. 1
    Basic definitions:
    Times asked 2
  2. 2
    Models - primary, cascade, lazy, backref
    Times asked 2
  3. 3
    Celery
    Times asked 9
  4. 4
    Redis
    Times asked 6
  5. 5
    Vue directives
    Times asked 3
  6. 6
    Authentication vs authorization
    Times asked 5
  7. 7
    Http methods Asked to code route for redirection Showed project where he asked to send monthly report and crud on parking lot
    Times asked 2
Advice: Just be confident
  1. 1
    asked to write the frontend code for the login page
    Times asked 1
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
  2. 2
    and the backend code for the login page
    Times asked 1
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  3. 3
    how are we storing the details of the current user? a lot of time was gone after the proctor joined 10 minutes late, and i had network issues for a while, so he extended my viva for 20 minutes, just asked me the coding questions and told me to prepare well for level-2 viva.
    Times asked 1
    Official solution

    SimpleLive coding: notepad/editor mein chhota Flask route / Jinja loop / model field. Calm raho, run karke dikhao.

Advice: he is pretty chill and patient, don't panic and keep answering. he will give you enough time to think and write codes.
  1. 1
    Then, download application and run. (I faced an issue here while installing dependencies from requirements.txt , but he helped me through this.)
    Times asked 1
    Official solution

    SimpleExaminer portal wala submitted ZIP chahta hai. Local extra changes mat dikhana.

    Suggested flow1) Portal ZIP download
    2) Extract
    3) venv + pip install -r requirements.txt
    4) flask run / python app.py

  2. 2
    Next , I was asked to demonstrate the app.( I ran into an error here and fixed it myself. He didnt say anything.)
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  3. 3
    Next, he asked me to write whatever I knew about jinja in Notepad.
    Times asked 1
    Official solution

    SimpleJinja2 Flask ka template engine — HTML ke andar {{ }} variables, {% %} logic.

    Example

    {% for lot in lots %}
      <li>{{ lot.name }} — {{ lot.spots }}</li>
    {% else %}
      <p>No lots</p>
    {% endfor %}
  4. 4
    Then, he asked me to write python code for api end point to fetch an html file.
    Times asked 1
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
  5. 5
    After that my viva was over.(He said thankyou and all the best for level-2 viva)
    Times asked 1
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

Advice: He is very silent. You need to ask him for everything atleast twice. Its almost as if he isnt looking. To be frank , I didnt even know how my viva went. Anyways, stay calm and explain whatever you know properly.
  1. 1
    sessions vs tokens
    Times asked 1
    Official solution

    SimpleMAD1 mein usually session-based auth: login pe session['user_id'], har request pe verify.

    Example

    session['user_id'] = user.id
    uid = session.get('user_id')
    user = User.query.get(uid)

    Viva tipSECRET_KEY set karo warna session insecure. logout pe session.clear().

  2. 2
    autherorization and authentication
    Times asked 1
    Official solution

    SimpleAuthentication: tu kaun hai? (login). Authorization: tujhe permission hai? (role check).

    Example

    # auth
    if check_password_hash(user.password, pwd):
        session['user_id'] = user.id
    
    # authz
    if user.role != 'admin':
        abort(403)
  3. 3
    write basic form and button
    Times asked 1
    Official solution

    SimpleORM = Object Relational Mapping. Tables → Python classes. Raw SQL kam likhte ho.

    Example

    class User(db.Model):
        id = db.Column(db.Integer, primary_key=True)
        email = db.Column(db.String(120), unique=True)
    
    User.query.get(5)  # SELECT ... WHERE id=5
  4. 4
    query to fetch all blacklisted company
    Times asked 1
    Official solution

    SimpleBlacklist/block: user.status='blocked' check login/booking pe. Temporary flag vs hard delete permanent.

  5. 5
    flask login route and hello route then check functionality
    Times asked 1
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
Advice: overall good proctor, don't panic. Do fast whatever he told either it is coding or theory question....he already mentioned in the beginning of viva don't explain theory question just tell me what it is bs.
  1. 1
    Theoretical questions:
    Times asked 1
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  2. 2
    Diff btw put and patch
    Times asked 1
    Official solution

    SimplePOST naya janam (har baar naya id). PUT poori photo replace. PATCH sticker chipkao.

    POST create, not idempotent. PUT full update, idempotent. PATCH partial.

    POST ki jagah PUT se REST semantics toot. GET typically no body.

    CRUD map: POST create, GET read, PUT/PATCH update, DELETE delete.

    Pehle 1-line definition, phir related MAD2 layer (Vue SFC / Flask route / models.py / tasks.py / Redis).

    4-line formula: input kahan se aaya, auth/validation kaunsa, DB ya cache ya Celery, kya return.

    Related mix mat karo — cache ≠ Celery, authentication ≠ authorization, v-if ≠ v-show, Beat ≠ Worker. Follow-up ke liye ek difference ready rakho.

    Example

    POST /api/venues
    PUT  /api/venues/1   {all fields}
    PATCH /api/venues/1 {only name}

    Project example: POST /api/venues create. PUT /venues/1 saari fields. PATCH sirf name.

  3. 3
    Render template
    Times asked 1
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  4. 4
    What is template and some other
    Times asked 1
    Official solution

    SimpleTemplate = HTML + placeholders. Jinja {{ }} / Vue template section. Data inject karke UI banata hai.

  5. 5
    Db relationship in your project (o-o o-m)
    Times asked 1
    Official solution

    Simpledb.relationship se object graph: lot.spots, booking.user. backref reverse side auto deta hai.

    Example

    spots = db.relationship('Spot', backref='lot', cascade='all, delete-orphan')
  6. 6
    Code in notepad:
    Times asked 1
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  7. 7
    Create a Form
    Times asked 1
    Official solution

    SimpleORM = Object Relational Mapping. Tables → Python classes. Raw SQL kam likhte ho.

    Example

    class User(db.Model):
        id = db.Column(db.Integer, primary_key=True)
        email = db.Column(db.String(120), unique=True)
    
    User.query.get(5)  # SELECT ... WHERE id=5
  8. 8
    app route for login with authentication (same as you implemented)
    Times asked 1
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  9. 9
    Query to get all the company id from applications
    Times asked 1
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  10. 10
    Project functionality:
    Times asked 1
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  11. 11
    Was asked to do all the core functionality and to show warning msg on certain conditions like while logging in after being blacklisted, etc.
    Times asked 1
    Official solution

    SimpleBlacklist/block: user.status='blocked' check login/booking pe. Temporary flag vs hard delete permanent.

Advice: Have a full knowledge on your project, ans what you know with clarity
  1. 1
    Show the demo of application
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  2. 2
    Show double booking prevention of appointments
    Times asked 1
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  3. 3
    Authentication and authorisation difference
    Times asked 2
    Official solution

    SimpleAuthentication: tu kaun hai? (login). Authorization: tujhe permission hai? (role check).

    Example

    # auth
    if check_password_hash(user.password, pwd):
        session['user_id'] = user.id
    
    # authz
    if user.role != 'admin':
        abort(403)
  4. 4
    Lazy = true meaning
    Times asked 1
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  5. 5
    Blacklist the doctor and show what it does
    Times asked 1
    Official solution

    SimpleBlacklist/block: user.status='blocked' check login/booking pe. Temporary flag vs hard delete permanent.

  6. 6
    Difference between Blacklist and delete
    Times asked 1
    Official solution

    SimpleBlacklist/block: user.status='blocked' check login/booking pe. Temporary flag vs hard delete permanent.

Advice: The proctor was chill and asked the questions on the flow of my demo. He made sure that we are not panicking when questions are asked.
  1. 1
    same as previous questions in the sheet (for level 1)
    Times asked 2
    Official solution

    SimpleLevel = viva difficulty band. Level 1 usually demo + basics; higher pe live coding + deeper theory.

    Viva tipJo level assign hai uske hisaab se demo + theory ready rakho.

Advice: know your project well that will be enough
  1. 1
    - Show ID
    Times asked 3
    Official solution

    SimpleCamera pe clearly college/IITM ID dikhao — naam aur photo match hone chahiye.

    Viva tipPehle se ID haath mein rakho, glare mat aane do. Iske baad GitHub + project run.

  2. 2
    - Detailed codes
    Times asked 2
    Official solution

    SimpleCode dikhao to pehle related file: models → route → template. Flow explain karte hue lines padho.

  3. 3
    - questions, files, show api,
    Times asked 2
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  4. 4
    - write all the vue codes you know or used in notepad.
    Times asked 2
    Official solution

    SimpleVue = UI ka smart assistant. Data badlo, screen khud update. MAD1 Jinja har click pe naya HTML.

    Progressive frontend framework. Components, reactivity, directives.

    MAD2 SPA: ek index.html, Vue Router pages, Flask sirf JSON.

    Fayde: easy, SFC, docs. Vs React: templates HTML-like, course sikhata hai. Vs plain JS: baar-baar DOM mat chhedo.

    Example

    <!-- HelloWorld.vue -->
    <template>
      <h1>{{ msg }}</h1>
    </template>
    <script>
    export default { data() { return { msg: 'Hello' } } }
    </script>

    Project example: Navbar.vue + views (Login, Dashboard). data() / setup() reactive. fetch APIs.

    Viva tipFayde: easy, SFC, reactivity. Vs React: chhota learning curve. Vs plain JS: UI state auto-update.

  5. 5
    - Explain your codes, all modules from the start,
    Times asked 2
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

  6. 6
    - explain each functions that are being used.
    Times asked 2
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

  7. 7
    Some personal questions,
    Times asked 2
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  8. 8
    - like what I'm doing currently and
    Times asked 2
    Official solution

    Simple30 second: naam, degree, project kya hai, stack (Flask + Jinja + SQLAlchemy + SQLite).

    Example

    Main Priya, IITM BS. MAD1 mein parking/ticket app — Flask backend, Jinja templates, session login, SQLite.
  9. 9
    - where I see myself in 5 years.
    Times asked 2
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  10. 10
    - grades in every other project
    Times asked 2
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  11. 11
    Didn't let me show the application, or explain it.
    Times asked 2
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

Advice: Be confident, Know your codes, know your file and know basic coding
  1. 1
    id card
    Times asked 2
    Official solution

    SimpleCamera pe clearly college/IITM ID dikhao — naam aur photo match hone chahiye.

    Viva tipPehle se ID haath mein rakho, glare mat aane do. Iske baad GitHub + project run.

  2. 2
    github repo - no of commits, how long it took to finish project, collaborators
    Times asked 2
    Official solution

    SimpleGitHub repo open karo: commits, collaborators, README. Examiner check karta hai tumne khud kaam kiya.

    Example

    Settings → Collaborators
    Commits: regular messages, last-day dump nahi.

    Viva tipPrivate repo access pehle de do. Main branch submitted ZIP se match honi chahiye.

  3. 3
    download and start app
    Times asked 2
    Official solution

    Simplevenv activate → dependencies → DB create/migrate → flask run. Browser pe localhost dikhao.

    Example

    python -m venv .venv
    source .venv/bin/activate
    pip install -r requirements.txt
    flask run
  4. 4
    present app
    Times asked 2
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  5. 5
    explain project structure -> BE VERY CLEAR and CONFIDENT while answering this question.
    Times asked 2
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

  6. 6
    anything you did not implement? i implemented all mandatory requirements, so no issues
    Times asked 2
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  7. 7
    explain for loop in vue.js with a code, then use api call in the script to get data from the app
    Times asked 2
    Official solution

    SimpleCode explain formula: input kya aaya → auth/validation → DB change → response/UI.

    Viva tipFunction signature + 3-4 important lines + edge case.

  8. 8
    asked what grade i got in mad1, and wished well for level2 viva
    Times asked 2
    Official solution

    SimpleLevel = viva difficulty band. Level 1 usually demo + basics; higher pe live coding + deeper theory.

    Viva tipJo level assign hai uske hisaab se demo + theory ready rakho.

Advice: Be confident. Just know your project and code well, he is a chill proctor, gives enough time to answer, no pressure, i did say wrong answer sometimes, he did not mind, gave clues and encouraged a lot
  1. 1
    Level 1 Hospital Management System
    Times asked 2
    Official solution

    SimpleLevel = viva difficulty band. Level 1 usually demo + basics; higher pe live coding + deeper theory.

    Viva tipJo level assign hai uske hisaab se demo + theory ready rakho.

  2. 2
    Vue CLI vs CDN
    Times asked 2
    Official solution

    SimpleCDN = Vue script tag se, jaise pen drive. CLI/Vite = poori factory (SFC, npm, bundle).

    CDN: no build, chhote apps, exam PC pe Node nahi to bhi chal. Weak: no .vue compile, 3rd-party cache, scale/team.

    CLI/Vite: Single File Components, env, code-split, production dist/. Scalable.

    Examiner 'which + why' — jo use kiya wahi justify, doosra naam rato mat.

    Example

    <!-- CDN -->
    <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
    
    # Vite
    npm run dev
    npm run build

    Project example: CDN: index.html unpkg vue. CLI: package.json, npm run serve / vite.

    Viva tipCDN scalable large teams ke liye weak (no SFC compile, caching 3rd party). Examiner 'which + why' poochta hai — jo use kiya wahi justify karo.

  3. 3
    Are you using session or token for authentication?
    Times asked 2
    Official solution

    SimpleMAD1 mein usually session-based auth: login pe session['user_id'], har request pe verify.

    Example

    session['user_id'] = user.id
    uid = session.get('user_id')
    user = User.query.get(uid)

    Viva tipSECRET_KEY set karo warna session insecure. logout pe session.clear().

  4. 4
    Asked to set doctor availability and to view the same doctor’s availability from the patient side
    Times asked 2
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  5. 5
    Asked to show cache expiry code
    Times asked 2
    Official solution

    Simpletimeout=10, wait, third request phir miss. Restart after change.

    Or cache.delete after update faster.

    Examiner 2 cheezein: simple desi line + tumhare project ki exact file.

    Pehle ID, GitHub, portal ZIP. Phir run: Redis + Flask + worker + beat + Vue. Feature demo: login, RBAC, cache hit/miss, Celery mail, search.

    Line pe ungli: input kahan, kaunsa check, query/cache/task, JSON/UI. Copilot band. Jo nahi kiya honestly bolo + kaise add karte.

    Project example: Decorator timeout chhota temporarily.

  6. 6
    Asked to login with a blacklisted doctor
    Times asked 2
    Official solution

    SimpleBlacklist/block: user.status='blocked' check login/booking pe. Temporary flag vs hard delete permanent.

  7. 7
    Asked if admin can view individual patient history
    Times asked 2
    Official solution

    SimplePehle 1-line definition, phir apne MAD1 project mein file dikhao, phir chhota example.

    Suggested flow1) Concept kya hai?
    2) Mere code mein kahan?
    3) Example / demo
    4) Edge case

    Example

    # related file: models.py / routes / template
    # formula: request → check/auth → DB → render/redirect

    Viva tipExact line yaad nahi to honestly related part dikhao. Bluff mat karo.

  8. 8
    Coding in notepad
    Times asked 2
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  9. 9
    To build vue component with a toggle button which toggles between Hello and GoodBye
    Times asked 2
    Official solution

    SimpleVue = UI ka smart assistant. Data badlo, screen khud update. MAD1 Jinja har click pe naya HTML.

    Progressive frontend framework. Components, reactivity, directives.

    MAD2 SPA: ek index.html, Vue Router pages, Flask sirf JSON.

    Fayde: easy, SFC, docs. Vs React: templates HTML-like, course sikhata hai. Vs plain JS: baar-baar DOM mat chhedo.

    Example

    <!-- HelloWorld.vue -->
    <template>
      <h1>{{ msg }}</h1>
    </template>
    <script>
    export default { data() { return { msg: 'Hello' } } }
    </script>

    Project example: Navbar.vue + views (Login, Dashboard). data() / setup() reactive. fetch APIs.

    Viva tipFayde: easy, SFC, reactivity. Vs React: chhota learning curve. Vs plain JS: UI state auto-update.

  10. 10
    To write api route to fetch blacklisted doctors
    Times asked 2
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
Advice: Very polite proctor. Be prepared to write codes in notepad.
  1. 1
    Mad 2 Viva-1 Placement Portal app
    Times asked 2
    Official solution

    SimpleProject overview: problem → roles → main entities → key flows (register, book, admin approve).

    Viva tip1 minute elevator pitch ready rakho, phir demo.

  2. 2
    Demonstration
    Times asked 2
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  3. 3
    When button is clicked it shows hello Vue component
    Times asked 2
    Official solution

    SimpleVue = UI ka smart assistant. Data badlo, screen khud update. MAD1 Jinja har click pe naya HTML.

    Progressive frontend framework. Components, reactivity, directives.

    MAD2 SPA: ek index.html, Vue Router pages, Flask sirf JSON.

    Fayde: easy, SFC, docs. Vs React: templates HTML-like, course sikhata hai. Vs plain JS: baar-baar DOM mat chhedo.

    Example

    <!-- HelloWorld.vue -->
    <template>
      <h1>{{ msg }}</h1>
    </template>
    <script>
    export default { data() { return { msg: 'Hello' } } }
    </script>

    Project example: Navbar.vue + views (Login, Dashboard). data() / setup() reactive. fetch APIs.

    Viva tipFayde: easy, SFC, reactivity. Vs React: chhota learning curve. Vs plain JS: UI state auto-update.

  4. 4
    Login route backend
    Times asked 2
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

Advice: 1.Practice coding question from the sheet and this (https://docs.google.com/document/d/1-pEm7KwOly0tDNIZep06VW42AceIH41nqYc6CZSLemw/edit?usp=drivesdk) 2. Learn all theory question and understand your code and workflow properly 3. Sir is very chill, kind and understanding. Wants quick and precise answers."
  1. 1
    Gave 5 min for setup application
    Times asked 2
    Official solution

    Simplevenv activate → dependencies → DB create/migrate → flask run. Browser pe localhost dikhao.

    Example

    python -m venv .venv
    source .venv/bin/activate
    pip install -r requirements.txt
    flask run
  2. 2
    First he asked theory
    Times asked 2
    Official solution

    SimpleTheory = concepts: ORM, MVC, auth vs authz, Jinja inheritance, sessions. 1-line def + project example.

  3. 3
    Vue lifecycle
    Times asked 2
    Official solution

    SimpleLifecycle = component ki zindagi ke stages. API call tab jab DOM ready ho — mounted.

    created: instance bani, this data, DOM nahi. mounted/onMounted: page pe aa gaya — fetch, Chart.js, setInterval.
    updated: data change ke baad. unmounted: cleanup (clearInterval) warna memory leak.

    Dashboards onMounted isliye: canvas/API tab valid. created mein $el nahi.

    Composition: onMounted(() => {}) setup ke andar.

    Example

    export default {
      async mounted() {
        const r = await fetch('/api/venues')
        this.venues = await r.json()
      }
    }

    Project example: Venues.vue mounted fetch list. Clock component unmounted pe interval clear.

    Viva tipcreated: data setup, DOM nahi. mounted/onMounted: $el mil gaya — fetch yahi. Dashboards isliye onMounted use karti hain.

  4. 4
    Asked me to write show "hello" when click button in notepad
    Times asked 2
    Official solution

    SimpleViva wrap-up hai. Short thanks + confirm submission ZIP latest hai.

  5. 5
    Asked to login route in notepad
    Times asked 2
    Official solution

    Simple@app.route URL ko Python function se jodta hai. @ wala cheez decorator hai.

    @app.route('/hello/<name>', methods=['GET'])
    def hello(name):
        return f'Hello {name}'

    Decorator function ko wrap karke extra behaviour deta hai (route register, login_required).
    Endpoint generally function name. Path /hello/Ram.
    <int:id> type converter — sirf integer. Bina converter string. ID chahiye to int safer.
    methods=['POST'] only POST. Default GET.
    functools.wraps custom decorator mein original function name/docs preserve karta hai.

  6. 6
    What have you used for rbac
    Times asked 2
    Official solution

    SimpleRBAC = Role Based Access Control. Roles (admin/user) se permissions milti hain, har user pe alag list nahi.

    Example

    if current_user.role != 'admin':
        flash('Not allowed')
        return redirect(url_for('user.home'))
  7. 7
    Authentication token saved client or server side?
    Times asked 2
    Official solution

    SimpleAuthentication: tu kaun hai? (login). Authorization: tujhe permission hai? (role check).

    Example

    # auth
    if check_password_hash(user.password, pwd):
        session['user_id'] = user.id
    
    # authz
    if user.role != 'admin':
        abort(403)
  8. 8
    Then demo checked all core feature working
    Times asked 2
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

Advice: He is chill guy. Read previous questions for theory,be ready for some snippet code writing in notepad
  1. 1
    - Collaborator
    Times asked 2
    Official solution

    SimpleGitHub repo open karo: commits, collaborators, README. Examiner check karta hai tumne khud kaam kiya.

    Example

    Settings → Collaborators
    Commits: regular messages, last-day dump nahi.

    Viva tipPrivate repo access pehle de do. Main branch submitted ZIP se match honi chahiye.

  2. 2
    - Start with demo
    Times asked 2
    Official solution

    SimpleDemo script pehle se practice: 5–7 min, Admin + User roles, saare mandatory features.

    Suggested flow1) Register/login user
    2) Admin login — CRUD
    3) Approval/blacklist
    4) Booking/apply + edge case
    5) Search
    6) Logout

    Viva tipBolte-bolte dikhao. Code tab kholna jab poochhein.

  3. 3
    - Asked about some code from project
    Times asked 2
    Official solution

    SimpleCode dikhao to pehle related file: models → route → template. Flow explain karte hue lines padho.

  4. 4
    - 1 way 2 way binding
    Times asked 2
    Official solution

    SimpleUngli rakhe to 4-line formula — panic ki jagah structure.

    1) File ka role: model / Flask route / Vue SFC / celery task / config
    2) Input kahan: JSON, params, token, props, $route
    3) Kya kaam: query, cache, validation, .delay()
    4) Output: jsonify, this.items, email, redirect

    Unknown keyword: import, decorator, if, commit — har ka reason. Bluff mat.

    Suggested flow1) Kaunsi layer?
    2) Input?
    3) DB/cache/task?
    4) Response/UI?

    Project example: Booking POST: jwt, seats check, commit, 201, Vue list push.

    Viva tipUnknown keyword: import, decorator, if, commit — har ka reason. Panic mat.

  5. 5
    - some vue basic questions
    Times asked 2
    Official solution

    SimpleVue = UI ka smart assistant. Data badlo, screen khud update. MAD1 Jinja har click pe naya HTML.

    Progressive frontend framework. Components, reactivity, directives.

    MAD2 SPA: ek index.html, Vue Router pages, Flask sirf JSON.

    Fayde: easy, SFC, docs. Vs React: templates HTML-like, course sikhata hai. Vs plain JS: baar-baar DOM mat chhedo.

    Example

    <!-- HelloWorld.vue -->
    <template>
      <h1>{{ msg }}</h1>
    </template>
    <script>
    export default { data() { return { msg: 'Hello' } } }
    </script>

    Project example: Navbar.vue + views (Login, Dashboard). data() / setup() reactive. fetch APIs.

    Viva tipFayde: easy, SFC, reactivity. Vs React: chhota learning curve. Vs plain JS: UI state auto-update.

  6. 6
    Coding part
    Times asked 2
    Official solution

    SimpleLive coding: notepad/editor mein chhota Flask route / Jinja loop / model field. Calm raho, run karke dikhao.

  7. 7
    - basic vue component implementing a button when clicked prints "HI"
    Times asked 2
    Official solution

    SimpleVue = UI ka smart assistant. Data badlo, screen khud update. MAD1 Jinja har click pe naya HTML.

    Progressive frontend framework. Components, reactivity, directives.

    MAD2 SPA: ek index.html, Vue Router pages, Flask sirf JSON.

    Fayde: easy, SFC, docs. Vs React: templates HTML-like, course sikhata hai. Vs plain JS: baar-baar DOM mat chhedo.

    Example

    <!-- HelloWorld.vue -->
    <template>
      <h1>{{ msg }}</h1>
    </template>
    <script>
    export default { data() { return { msg: 'Hello' } } }
    </script>

    Project example: Navbar.vue + views (Login, Dashboard). data() / setup() reactive. fetch APIs.

    Viva tipFayde: easy, SFC, reactivity. Vs React: chhota learning curve. Vs plain JS: UI state auto-update.

  8. 8
    - basic api which takes date of birth as input and gives age as output
    Times asked 2
    Official solution

    SimpleLive Flask coding: chhota route likho, save, browser/curl se test. Syntax error terminal mein padho.

    Example

    @app.route('/ping')
    def ping():
        return jsonify(ok=True)
    
    @app.route('/even/<int:n>')
    def even(n):
        return 'even' if n % 2 == 0 else 'odd'
Advice: - Very patient and kind proctor. Dont worry, he gives time for everything, just be calm. - He is chill. - Just know your code and make sure everything works fine. - he will give a nice feedback at the end of viva and explain what all went wrong etc.
  1. 1
    Basic definitions:
    Times asked 2
    Official solution

    SimpleTheory = concepts: ORM, MVC, auth vs authz, Jinja inheritance, sessions. 1-line def + project example.

  2. 2
    Models - primary, cascade, lazy, backref
    Times asked 2
    Official solution

    Simplebackref reverse attribute auto banata hai. back_populates dono sides explicitly naam dete ho — clearer.

    Example

    # backref
    spots = db.relationship('Spot', backref='lot')
    # spot.lot available
    
    # back_populates
    spots = db.relationship('Spot', back_populates='lot')
    # Spot.lot = db.relationship('Lot', back_populates='spots')
  3. 3
    Celery
    Times asked 9
    Official solution

    SimpleCelery = background naukri. HTTP request ko 10 second email bhejne ke liye mat rokna.

    Distributed task queue: aap function ko abhi nahi, worker process mein later/retry/schedule pe chalaate ho.

    MAD2 typical jobs: daily reminder mail, monthly HTML report, user-triggered CSV export.

    Web request 200ms hona chahiye. 10,000 emails request thread mein = timeout. Worker alag CPU pe kaam kare.

    Redis broker chahiye. Beat alag process schedule ke liye.

    Example

    @celery.task
    def daily_reminder():
        for u in User.query.filter_by(active=True):
            send_mail(u.email, 'Book something today!')

    Project example: User Export click → 202 Accepted. Worker CSV + email. Daily 6pm Beat reminder.

    Viva tipWorker + Redis bina Beat ke user-triggered chalega. Scheduled jobs ke liye Beat bhi chahiye.

  4. 4
    Redis
    Times asked 6
    Official solution

    SimpleRedis fridge pe sticky note hai — poori kitchen (database) kholne ki zarurat nahi.

    Redis in-memory key-value store hai. Data RAM mein rehta hai, isliye disk wale SQLite/Postgres se kai guna tez.

    MAD2 mein Redis do kaam karta hai:
    1) Cache — same venue/show/dashboard JSON baar-baar DB se mat nikaalo.
    2) Celery message broker — Flask task queue mein daalta hai, worker uthata hai.

    Source of truth database hi hai. Redis band ho to cache miss ho jaata hai aur Celery queue ruk sakti hai. Crash pe cache gayab ho sakta hai — isliye important data sirf Redis mein mat rakho.

    Example

    import redis
    r = redis.Redis(host='localhost', port=6379, db=0)
    r.set('venues', json.dumps(data), ex=30)
    print(r.get('venues'))

    Project example: GET /api/venues pehle Redis dekho. Miss pe SQLAlchemy query, phir SET with timeout. Celery worker Redis list se daily reminder uthata hai.

    Viva tipCache ke liye db=1, broker ke liye db=0 rakhna smart hai taaki keys mix na hon. Viva mein redis-cli ping → PONG dikhana strong hai.

  5. 5
    Vue directives
    Times asked 3
    Official solution

    SimpleDirectives Vue ke special attributes — HTML ko superpower.

    v-if/else/show, v-for, v-bind (:), v-on (@), v-model, v-html (XSS), v-cloak, v-slot.

    :src = v-bind:src. @click = v-on:click.

    Custom directives bhi (v-focus) — course basics kaafi.

    Example

    <p v-if="ok">Yes</p>
    <li v-for="u in users" :key="u.id">{{ u.name }}</li>
    <input v-model="email">
    <img :src="url">

    Project example: List v-for :key. Form v-model. Admin v-if. Image :src.

    Viva tip: src ke liye v-bind:src ka shorthand. @click = v-on:click.

  6. 6
    Authentication vs authorization
    Times asked 5
    Official solution

    SimpleAuthentication poochta hai "tu kaun hai?", Authorization poochta hai "tujhe yeh kaam karne ki permission hai?"

    Authentication: login. Username + password check karke prove karte ho ki tum genuine user ho. Success pe session/token milta hai.
    Authorization: uske baad role check. Admin hi parking lot delete kar sakta hai, normal user nahi.

    Example (Flask):
    # Authentication

    if user and check_password_hash(user.password, form_password):
        session['user_id'] = user.id
    
    # Authorization
    if session.get('role') != 'admin':
        abort(403)  # logged in ho, lekin allowed nahi

    Project example: student login = authentication. Student admin dashboard nahi khol sakta = authorization.
    Validation alag cheez hai (form sahi bhara hai ya nahi, jaise age 18+).

  7. 7
    Http methods Asked to code route for redirection Showed project where he asked to send monthly report and crud on parking lot
    Times asked 2
    Official solution

    Simpleredirect dusre URL pe bhejta hai. flash one-time message session mein rakh ke next page pe dikhata hai.

    Example

    flash('Login successful', 'success')
    return redirect(url_for('user.dashboard'))
Advice: Just be confident
Created for educational purposes only. Questions are based on students' personal experiences and may not reflect actual exam content.