-
1
GitHub check, ID verification, download/checksum/smoke test.
-
2
Demonstrate the complete application and explain the project flow.
-
3
Explain the project architecture and folder structure. Explain edge cases in your project.
-
4
Explain models.py and the database schema.
-
5
Explain relationships between models. One-to-One / One-to-Many. backref vs back_populates.
-
6
What is ORM?
-
7
Where is the blacklisted field stored? Explain database migration (if asked).
-
8
Explain duplicate prevention (student applying twice, duplicate drives, etc.).
-
9
Explain the login flow (without looking at the code).
-
10
Explain the logout flow.
-
11
Explain the search functionality (frontend + backend) without looking at the code.
-
12
Explain any route and its backend logic.
-
13
Explain how the blacklist functionality works. Explain how backend data is sent to the frontend.
-
14
Difference between: render_template() and redirect(). url_for() and redirect().
-
15
Authentication vs Authorization.
-
16
Cookies vs Sessions. Where are sessions stored?
-
17
What is a stateless application? How does Flask maintain object/application state?
-
18
What is a REST API? REST API vs HTTP Methods.
-
19
Explain HTTP methods (GET, POST, PUT, DELETE). Difference between GET, POST, PUT and DELETE.
-
20
What are Jinja templates? What is Template Inheritance?
-
21
How have you used Template Inheritance? Cell Padding vs Cell Spacing.
-
22
What is Scalability? Horizontal vs Vertical Scaling.
-
23
Add an Age field to the registration page and reflect it in the database/admin.
-
24
Add an Address field to the Company model and display it.
-
25
Add an Openings field to the Drive model and update both backend and frontend.
-
26
Make corresponding database, route, and template changes for newly added fields.