Viva prep · Real questions · Student experiences Enroll in Bootcamp

Search viva questions

Level2_128 MAD1 Level 1 Aug 3, 2026
  1. 1
    ID verification. GitHub collaborator check.
  2. 2
    Demonstrate the project and all mandatory functionalities.
  3. 3
    Explain the backend logic. Write an app route/controller function in Notepad.
  4. 4
    Explain CRUD operations and where they are used.
  5. 5
    Explain HTTP Status Codes.
  6. 6
    Make a frontend/UI modification.
Level2_108 MAD1 Level 1 Aug 3, 2026
  1. 1
    Show your ID card. Show GitHub repository, collaborators, and commits. Download the project from the portal and run it.
  2. 2
    Verify core project features (e.g., create company/student, approve drive, register staff, blacklist, booking, etc.).
  3. 3
    Write a controller to: Show all blacklisted students. Show blacklisted companies. Show drives that are not approved and whose job title is Data Scientist. Fetch filtered data from a table.
  4. 4
    Explain your routes/controllers.
  5. 5
    Explain an unknown line of code.
  6. 6
    Understand when to use render_template() vs redirect().
  7. 7
    Write Jinja syntax to display data (e.g., description and eligibility).
  8. 8
    What is Jinja2, and why is it used?
  9. 9
    Explain the data types in Jinja: {% for d in drives %} → d is an object. render_template(..., drive=drives) → drive is a list of objects.
  10. 10
    Explain the MVC architecture.
  11. 11
    What is HTTP? Difference between PUT and PATCH.
  12. 12
    Explain how you used AI while developing the project and justify your understanding of the code.
level2_84 MAD1 Level 1 Aug 3, 2026
  1. 1
    Introduce yourself. Show your ID card. Download the project from the portal and run it. Demonstrate the complete application. Explain whether you built the project yourself or used AI assistance.
  2. 2
    Explain the overall project structure and working.
  3. 3
    Summarize the entire app.py. Explain __init__.py.
  4. 4
    Explain the complete flow of the Staff Dashboard (app.py + HTML templates).
  5. 5
    Explain the Staff Login route in detail.
  6. 6
    Explain any Update and Delete (CRUD) route.
  7. 7
    During route explanations, justify every important keyword/function used and why it is needed.
  8. 8
    Explain models.py in detail.
  9. 9
    Explain the database relationships.
  10. 10
    Difference between backref and back_populates.
  11. 11
    What is Cascade and how does it work?
  12. 12
    Where have you implemented these relationships in your project?
  13. 13
    What alternatives could be used instead?
  14. 14
    Explain how Authentication and Authorization are implemented in your project (with code).
  15. 15
    Explain Session management.
  16. 16
    How do you prevent unapproved staff from logging in?
  17. 17
    Explain the validations implemented in your application and how they work.
  18. 18
    Add a new field to the Admin Navbar displaying the Staff Name and Location for all treks.
  19. 19
    Improve the UI using Bootstrap to make the added section look cleaner.
level1_150 MAD1 Level 1 Aug 3, 2026
  1. 1
    Checksum verification.
  2. 2
    Open the database using an SQL Viewer extension.
  3. 3
    Identify mistakes, missing features, and improvements in the project.
  4. 4
    Explain Entity Mapping (how entities/models are mapped to database tables).
  5. 5
    What is Git? What is VCS (Version Control System)?Explain the role of Git as a VCS.
level1_149 MAD1 Level 1 Aug 3, 2026
  1. 1
    GitHub check, ID verification, download/checksum/smoke test.
  2. 2
    Demonstrate the complete application and explain the project flow.
  3. 3
    Explain the project architecture and folder structure. Explain edge cases in your project.
  4. 4
    Explain models.py and the database schema.
  5. 5
    Explain relationships between models. One-to-One / One-to-Many. backref vs back_populates.
  6. 6
    What is ORM?
  7. 7
    Where is the blacklisted field stored? Explain database migration (if asked).
  8. 8
    Explain duplicate prevention (student applying twice, duplicate drives, etc.).
  9. 9
    Explain the login flow (without looking at the code).
  10. 10
    Explain the logout flow.
  11. 11
    Explain the search functionality (frontend + backend) without looking at the code.
  12. 12
    Explain any route and its backend logic.
  13. 13
    Explain how the blacklist functionality works. Explain how backend data is sent to the frontend.
  14. 14
    Difference between: render_template() and redirect(). url_for() and redirect().
  15. 15
    Authentication vs Authorization.
  16. 16
    Cookies vs Sessions. Where are sessions stored?
  17. 17
    What is a stateless application? How does Flask maintain object/application state?
  18. 18
    What is a REST API? REST API vs HTTP Methods.
  19. 19
    Explain HTTP methods (GET, POST, PUT, DELETE). Difference between GET, POST, PUT and DELETE.
  20. 20
    What are Jinja templates? What is Template Inheritance?
  21. 21
    How have you used Template Inheritance? Cell Padding vs Cell Spacing.
  22. 22
    What is Scalability? Horizontal vs Vertical Scaling.
  23. 23
    Add an Age field to the registration page and reflect it in the database/admin.
  24. 24
    Add an Address field to the Company model and display it.
  25. 25
    Add an Openings field to the Drive model and update both backend and frontend.
  26. 26
    Make corresponding database, route, and template changes for newly added fields.
level1_145 MAD1 Level 1 Aug 3, 2026
  1. 1
    Explain the login route implementation.
  2. 2
    Explain HTTP methods. Types of HTTP requests. Difference between PUT and POST.
  3. 3
    What happens if methods are not specified in @app.route()?
  4. 4
    Difference between redirect() and url_for().
  5. 5
    What are Flask-WTF forms?
  6. 6
    What is a REST API? What are APIs? Have you used any APIs in your project?
  7. 7
    Explain One-to-One and One-to-Many relationships. What is Cascade and how is it used?
  8. 8
    What is OOP? What is Inheritance? What are Python decorators?
  9. 9
    What is Jinja2 and how is it used?
  10. 10
    What is Horizontal Scaling and Vertical Scaling?
  11. 11
    Frontend: Change the navbar color (e.g., green → yellow/red). Backend: Change the Flask application port from 5000 to 8000.
Level1_144 MAD1 Level 1 Aug 3, 2026
  1. 1
    Demonstrate the complete project. Run the application simultaneously in two browsers (e.g., Admin and User).
  2. 2
    Explain the relationship types used in your models. What is ORM, and what is its biggest advantage?
  3. 3
    How would you support multiple roles for a user (e.g., Admin + Manager)?
  4. 4
    If a parking lot has multiple floors, how would you design the database? New table vs adding a floor column.
  5. 5
    What happens if you try to delete a parking lot that still has occupied spots?
  6. 6
    Explain how total cost is calculated.
  7. 7
    How would you improve your project's folder structure?
  8. 8
    Identify shortcomings in your project and explain how you would improve or implement them (may require live coding).
  9. 9
    How do you round a number up using math.ceil() (e.g., parking time less than one hour rounds up to one hour)?
  10. 10
    Make a UI change by bolding a column in a table.
level1_142 MAD1 Level 1 Aug 3, 2026
  1. 1
    Show the ID card.Explain the core features of your application.
  2. 2
    Demonstrate key functionalities: Student registration. Blacklisting a student. Editing the company profile. Editing the student profile.
  3. 3
    Explain MVC architecture.
  4. 4
    What is a REST API? Which frameworks have you used in the project?
  5. 5
    How many database tables are there, and what are they?
  6. 6
    Display a green page if the user count is even, and a red page if the user count is odd.
level1_139 MAD1 Level 1 Aug 3, 2026
  1. 1
    Show ID card, GitHub collaborator, download/checksum, run the project.
  2. 2
    Explain your project, its purpose, core features, and demonstrate the application.
  3. 3
    Explain the overall project/code structure.
  4. 4
    Explain MVC (draw it using Paint if asked).
  5. 5
    Explain how Models, Routes (Controllers), and Templates (Views) interact.
  6. 6
    Explain how data flows from the database to the HTML.
  7. 7
    Explain any route (e.g., create_trek) and the Admin login/dashboard flow.
  8. 8
    Explain CRUD operations and show where they are implemented.
  9. 9
    Explain your database schema and models.py.
  10. 10
    Explain relationships between tables. One-to-One One-to-Many Where these relationships are defined.
  11. 11
    Explain: Primary Key Unique Key ORM lazy commit() get_or_404()
  12. 12
    Explain HTTP Methods and HTTP Status Codes. Difference between GET and POST.
  13. 13
    Why is GET used where it is (e.g., login page)?
  14. 14
    Explain Jinja2.Explain Template Inheritance and where you've used it. Explain your HTML templates.
  15. 15
    Explain CSS used in your project. CSS Priority (Inline > Internal > External).
  16. 16
    Which CSS approach is preferred for large projects?
  17. 17
    What is Scaling?Horizontal vs Vertical Scaling.
  18. 18
    Add frontend and backend validation. Add an Age field to the registration page. Validate that 18 ≤ Age < 100.
Level1_138 MAD1 Level 1 Aug 3, 2026
  1. 1
    Demonstrate the complete project and explain its functionalities. Explain the complete code flow.
  2. 2
    Explain the controller (CRUD routes) flow. Explain where CRUD operations are used in your project.
  3. 3
    Explain the database schema and relationships between models. Live Coding: Add a Phone Number field to the registration page and ensure it is stored in the database.
  4. 4
    Explain models.py.
  5. 5
    Explain Jinja2 functionality used in your templates.
  6. 6
    What are the benefits of Jinja2? What is Jinja2 template inheritance?
  7. 7
    What are Flask Blueprints?
  8. 8
    What is a REST API? Difference between API and Controller.
  9. 9
    Which RESTful methods have you used? Explain HTTP methods and their functionality.
  10. 10
    Why is POST used in the edit route instead of PUT? Difference between POST and PUT.
  11. 11
    Make a CSS change in the Admin Dashboard. Explain the CSS hierarchy and different types of CSS (Inline, Internal, External).
Created for educational purposes only. Questions are based on students' personal experiences and may not reflect actual exam content.