Viva prep · Real questions · Student experiences Enroll in Bootcamp

Proctor workspace

Proctor APPDEV_LEVEL1_VIVA7

Share your experience Add your viva experience here
52 Questions
7 Sets
0 Topics
0 Reviews
Tips for this examiner: Pretty much no theory and full coding session

Need to have very in depth knowledge of the processings going on in the application

Keep Redis, Celery jobs ready and running and don't take much time for setting up

Answer everything in detail with what happens in backend

He might help you alongside, but expect too much support, the proctor might be in a bit of rush.

Student reviews

No student reviews for this proctor yet.

Approved viva sets

  1. 1
    Viva Feedback
    Times asked 2
  2. 2
    Be ready to show your Student ID.
    Times asked 2
  3. 3
    Git collaboration and repository
    Times asked 2
  4. 4
    Be able to explain the complete project with a live demo.
    Times asked 2
  5. 5
    Understand v-model in depth.
    Times asked 2
  6. 6
    The examiner may ask anything from the Vue.js files.
    Times asked 2
  7. 7
    Be able to explain and show two-way data binding in your code.
    Times asked 2
  8. 8
    Understand async functions and API integration.
    Times asked 2
  9. 9
    Know the difference between Session Storage and Local Storage
    Times asked 2
  10. 10
    Understand Vue.js Lifecycle Hooks
    Times asked 2
  11. 11
    Focus on the Vue.js coding part, especially component logic.
    Times asked 2
  12. 12
    Be able to write a basic Vue component and route.
    Times asked 2
Advice: Overall, the proctor was good, but strong coding knowledge is essential.
  1. 1
    First he ask for demo, when i start my demo he immediately start questions contest
    Times asked 2
  2. 2
    What is CRUD. Explain me in your project.
    Times asked 2
  3. 3
    How these statistics cards logic works, how the counting part connected and where the stats variable define in your project.
    Times asked 2
  4. 4
    What is Idempotency.
    Times asked 2
  5. 5
    Open your notepad, Question: "There is a company which have an api name 'movies', in this api have all movies then, Write frontend code that give 'movies list'...Simple 🫠"
    Times asked 2
Advice: Coding question is same almost with little bit modification. He love vue files mostly, so know your vue working connection, buttons, variables.
  1. 1
    - Just code demo and during the explanation he asked to point out where a particular route is which points to the button click, where that button is, and then write a sample route named '/api/viva' which returns a json and connect it to the frontend which sends a request and gets the response on screen.
    Times asked 2
  2. 2
    - Backend Processing for every single button click and the updation in frontend and where the data flow happens, and what are the process runs and where the response is updated for this.
    Times asked 2
  3. 3
    - Usage of Vue CLI and CDN
    Times asked 2
  4. 4
    - Make sure to keep Redis and celery ready
    Times asked 2
  5. 5
    - Explain in detail and not to give high level explanation and give data flow from every single part.
    Times asked 2
  6. 6
    ..
    Times asked 2
Advice: Pretty much no theory and full coding session Need to have very in depth knowledge of the processings going on in the application Keep Redis, Celery jobs ready and running and don't take much time for setting up Answer everything in detail with what happens in backend He might help you alongside, but expect too much support, the proctor might be in a bit of rush.
  1. 1
    Write Route to fetch all data for viva that are happening today
    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
    Write jinja code to show fetched data
    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 %}
  3. 3
    Jinja templates are server side or client side
    Times asked 1
    Official solution

    SimpleClient storage: cookies, localStorage, sessionStorage, IndexedDB. Tokens often localStorage; sessions often cookie.

  4. 4
    n+1 query problem in sql alchemy
    Times asked 1
    Official solution

    SimpleSQLAlchemy MAD1 ka common ORM. Flask-SQLAlchemy wrapper se db.Model, db.session.

    Example

    user = User(email='a@b.com')
    db.session.add(user)
    db.session.commit()
    users = User.query.filter_by(role='admin').all()
  5. 5
    Difference between error codes starting from 4 and 5
    Times asked 1
    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.

  6. 6
    Explain in detail for search functionality is working and question from code written for that.
    Times asked 1
    Official solution

    SimpleSearch: form/query param → ilike filter → results template.

    Example

    q = request.args.get('q', '').strip()
    lots = Lot.query.filter(Lot.name.ilike(f'%{q}%')).all()
Advice: Such nice chill proctor , very supportive
  1. 1
    Viva Feedback
    Times asked 2
    Official solution

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

  2. 2
    Be ready to show your Student ID.
    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.

  3. 3
    Git collaboration and repository
    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.

  4. 4
    Be able to explain the complete project with a live 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.

  5. 5
    Understand v-model in depth.
    Times asked 2
    Official solution

    Simplemodels.py = har table ki class: columns, PK/FK, relationships. Yeh Model layer hai.

    Suggested flow1) Classes list karo
    2) Har table ka kaam 1 line
    3) Relationships (1-M / M-M)
    4) Constraints (unique, nullable)

    Example

    class Lot(db.Model):
        id = db.Column(db.Integer, primary_key=True)
        name = db.Column(db.String(80), nullable=False)
        spots = db.relationship('Spot', backref='lot', lazy=True)
  6. 6
    The examiner may ask anything from the Vue.js files.
    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.

  7. 7
    Be able to explain and show two-way data binding in your code.
    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
    Understand async functions and API integration.
    Times asked 2
    Official solution

    Simpleasync function promise return karti hai. await us promise ka result wait karta hai — callback hell kam.

    Example

    async function loadLots() {
      const res = await fetch('/api/lots');
      const data = await res.json();
      return data;
    }
  9. 9
    Know the difference between Session Storage and Local Storage
    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().

  10. 10
    Understand Vue.js Lifecycle Hooks
    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.

  11. 11
    Focus on the Vue.js coding part, especially component logic.
    Times asked 2
    Official solution

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

  12. 12
    Be able to write a basic Vue component and route.
    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: Overall, the proctor was good, but strong coding knowledge is essential.
  1. 1
    First he ask for demo, when i start my demo he immediately start questions contest
    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.

  2. 2
    What is CRUD. Explain me in your project.
    Times asked 2
    Official solution

    SimpleCRUD = Create Read Update Delete. Admin pe ek resource ke 4 ops dikhao.

  3. 3
    How these statistics cards logic works, how the counting part connected and where the stats variable define in your project.
    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.

  4. 4
    What is Idempotency.
    Times asked 2
    Official solution

    SimpleIdempotent = same request N baar = same effect. GET/PUT/DELETE usually; POST create duplicate ho sakta hai.

  5. 5
    Open your notepad, Question: "There is a company which have an api name 'movies', in this api have all movies then, Write frontend code that give 'movies list'...Simple 🫠"
    Times asked 2
    Official solution

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

Advice: Coding question is same almost with little bit modification. He love vue files mostly, so know your vue working connection, buttons, variables.
  1. 1
    - Just code demo and during the explanation he asked to point out where a particular route is which points to the button click, where that button is, and then write a sample route named '/api/viva' which returns a json and connect it to the frontend which sends a request and gets the response on screen.
    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'
  2. 2
    - Backend Processing for every single button click and the updation in frontend and where the data flow happens, and what are the process runs and where the response is updated for this.
    Times asked 2
    Official solution

    SimpleMAD1 frontend usually Jinja templates + HTML/CSS/Bootstrap (+ thoda JS). MAD2 pe Vue ho to clearly bolo.

  3. 3
    - Usage of Vue CLI and 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.

  4. 4
    - Make sure to keep Redis and celery ready
    Times asked 2
    Official solution

    SimpleRedis box hai, Celery us box se kaam uthane wala worker hai — same cheez nahi.

    Redis: store (cache keys) + queue (broker lists).
    Celery: Python library jo tasks define karti hai, .delay() se queue mein daalti hai, worker execute karta hai.

    Dono localhost pe ho sakte hain. Alag Redis DB index use karo. Redis band = cache miss + Celery stuck.

    Example

    Celery: broker_url='redis://localhost:6379/0'
    Cache:  CACHE_REDIS_URL='redis://localhost:6379/1'

    Project example: export_csv.delay(user_id) Flask se. Worker Redis se task uthata hai, CSV+email. Cache alag keys venues.

    Viva tipAgar possible ho to cache db=1, broker db=0 — keys mix nahi hoti.

  5. 5
    - Explain in detail and not to give high level explanation and give data flow from every single part.
    Times asked 2
    Official solution

    SimpleNayi booking flow: UI form/button → route POST → login_required → validate seats → insert Booking → commit → redirect/flash.

    Suggested flowBrowser → Flask route → Auth → Business rules → SQLAlchemy → SQLite → Response template/JSON

  6. 6
    ..
    Times asked 2
    Official solution

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

Advice: Pretty much no theory and full coding session Need to have very in depth knowledge of the processings going on in the application Keep Redis, Celery jobs ready and running and don't take much time for setting up Answer everything in detail with what happens in backend He might help you alongside, but expect too much support, the proctor might be in a bit of rush.
Created for educational purposes only. Questions are based on students' personal experiences and may not reflect actual exam content.