[go: up one dir, main page]

0% found this document useful (0 votes)
2 views11 pages

Prep Final

The document provides a comprehensive guide for interview preparation in Computer Science and Information Practices, covering general teaching questions, Python, Java, and SQL topics. It includes sample answers for questions related to teaching philosophy, programming concepts, and database management. Key areas discussed include teaching methods, programming language features, and database transaction properties.

Uploaded by

UtkrishtSharma
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views11 pages

Prep Final

The document provides a comprehensive guide for interview preparation in Computer Science and Information Practices, covering general teaching questions, Python, Java, and SQL topics. It includes sample answers for questions related to teaching philosophy, programming concepts, and database management. Key areas discussed include teaching methods, programming language features, and database transaction properties.

Uploaded by

UtkrishtSharma
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 11

# PGT COMPUTER SCIENCE & INFORMATION PRACTICES INTERVIEW PREPARATION

## GENERAL TEACHING QUESTIONS

### 1. Tell me about yourself and your teaching experience.


**Answer:** I am [Your Name], a post-graduate in Computer Science with a B.Ed.
degree. I have [X] years of experience teaching computer science at [previous
school/institution], focusing on Python, Java, and SQL. I'm passionate about making
technology engaging for students through hands-on projects and real-world
applications.

### 2. Why do you want to teach at The Mann School?


**Answer:** The Mann School's reputation for academic excellence and holistic
development resonates with my teaching philosophy. Its boarding school environment
offers unique opportunities to engage with students beyond the classroom, and my
skills in Python, Java, and co-curricular activities align with the school's needs.

### 3. How do you teach students with varying proficiency levels in computer
science?
**Answer:** I use differentiated instruction, assessing prior knowledge to tailor
lessons. Beginners get foundational exercises, while advanced students tackle
complex projects. Peer tutoring and group work foster collaboration across levels.

### 4. What teaching methods engage students in computer science?


**Answer:** I combine lectures, hands-on labs, project-based learning, and
discussions. Real-world examples, like coding a game, make concepts relatable,
while projects encourage creativity and problem-solving.

### 5. How do you assess students' progress in computer science?


**Answer:** I use formative assessments (quizzes, labs) and summative assessments
(projects, exams). Regular feedback and self-assessment help students track their
growth and identify areas for improvement.

## PYTHON

### 1. What are the key features of Python?


**Answer:** Python is a high-level, interpreted language with:
- Simplicity: Clean, readable syntax ideal for beginners
- Extensive Libraries: Supports web development, data science (e.g., Pandas), and
automation
- Multiple Paradigms: Supports procedural, object-oriented, and functional
programming
- Dynamic Typing: No need for explicit variable type declarations
- Cross-Platform: Runs on various operating systems
- Automatic Memory Management: Garbage collection handles memory
- Large Standard Library: Extensive tools for various applications

### 2. Explain the difference between list and tuple in Python.


**Answer:** Lists are mutable (can be changed), defined with square brackets, e.g.,
[1, 2, 3]. Tuples are immutable (fixed), defined with parentheses, e.g., (1, 2, 3).
Lists suit dynamic data; tuples are for fixed collections. Lists can be modified
after creation while tuples cannot.

### 3. What is a dictionary in Python?


**Answer:** A dictionary is an unordered, mutable collection of key-value pairs,
defined with curly braces, e.g., {"name": "Alice", "age": 20}. Keys are unique, and
values can be accessed via keys. Dictionaries are useful for fast lookups, like a
real-world dictionary where you look up definitions by words.
### 4. What is the difference between range and xrange in Python?
**Answer:** In Python 2, range creates a list in memory, while xrange generates an
iterator, saving memory for large sequences. In Python 3, range acts like xrange
(memory-efficient), and xrange is obsolete. This is important when teaching Python
3, the standard in CBSE.

### 5. Explain list comprehensions in Python.


**Answer:** List comprehensions create lists concisely, e.g., [x**2 for x in
range(10)] generates [0, 1, 4, ..., 81]. They're efficient for transforming or
filtering data in a single line, making code more readable and efficient.

### 6. How do you handle exceptions in Python?


**Answer:** Exceptions are handled using try-except blocks. Code that might raise
an error goes in the try block, and the except block handles the error, e.g.:
```python
try:
x = 1/0
except ZeroDivisionError:
print("Cannot divide by zero")
```
The finally block (optional) executes regardless of whether an exception occurred.

### 7. What are decorators in Python?


**Answer:** Decorators are functions that modify other functions' behavior without
changing their code. They use the @syntax and are useful for tasks like logging,
authentication, or performance monitoring. Example:
```python
def log_function(func):
def wrapper(*args, **kwargs):
print(f"Calling {func.__name__}")
return func(*args, **kwargs)
return wrapper

@log_function
def add(a, b):
return a + b
```

### 8. What are Python list comprehensions and how are they useful?
**Answer:** List comprehensions provide a concise way to create lists based on
existing lists. They combine a for loop and conditional logic in a single line.
Example: `[x*2 for x in range(10) if x % 2 == 0]` creates [0, 4, 8, 12, 16]. They
improve readability and performance compared to traditional loops.

### 9. Explain the difference between shallow copy and deep copy.
**Answer:** Shallow copy (list.copy() or copy.copy()) creates a new container but
references the same objects, so changes to nested objects affect both copies. Deep
copy (copy.deepcopy()) creates a completely independent copy, duplicating
everything recursively, ideal for nested structures where complete independence is
needed.

### 10. What are lambda functions? Provide an example.


**Answer:** Lambda functions are anonymous, single-expression functions defined
with the lambda keyword. They're useful for short functions passed as arguments.
Example: `multiply = lambda x, y: x * y` creates a function that returns the
product of two parameters. They're commonly used with map(), filter(), and sort().

### 11. How does Python's garbage collection work?


**Answer:** Python uses reference counting as its primary garbage collection
mechanism, tracking how many references point to each object. When the count
reaches zero, the object is deleted. For cyclic references, Python uses a cycle-
detecting garbage collector that periodically identifies and collects unreachable
groups of objects.

### 12. What is the difference between `is` and `==` in Python?
**Answer:** `==` checks if two objects have the same value (equality of contents),
while `is` checks if two references point to exactly the same object in memory
(identity). Example: `a = [1, 2, 3]; b = [1, 2, 3]` will make `a == b` True but `a
is b` False because they're equal in value but distinct objects.

### 13. What are Python generators and how do they work?
**Answer:** Generators are functions that return an iterator using the yield
statement instead of return. They generate values on-the-fly without storing the
entire sequence in memory, making them memory-efficient for large datasets.
Example:
```python
def count_up_to(n):
i = 0
while i < n:
yield i
i += 1
```

### 14. Explain the concept of scope (local/global) in Python.


**Answer:** Scope determines where variables are accessible. Local variables are
defined within functions and only accessible there. Global variables are defined at
the module level and accessible throughout the module. Python follows the LEGB rule
(Local, Enclosing, Global, Built-in) for variable resolution. To modify global
variables within functions, use the `global` keyword.

### 15. What are Python modules and packages?


**Answer:** Modules are single Python files containing reusable code. Packages are
directories containing multiple modules and a special `__init__.py` file. They
organize related code and avoid naming conflicts. Example: Import a function from a
module with `from math import sqrt`, or import an entire module with `import math`.

### 16. How does `with` statement work in file handling?


**Answer:** The `with` statement ensures proper resource management by
automatically closing files even if exceptions occur. It uses context managers to
set up and tear down resources. Example:
```python
with open('file.txt', 'r') as f:
data = f.read()
# File is automatically closed here
```
This prevents resource leaks and is more concise than try-finally blocks.

### 17. Explain the Global Interpreter Lock (GIL) in Python.


**Answer:** The GIL is a mutex that prevents multiple native threads from executing
Python bytecode simultaneously. This simplifies memory management but limits CPU-
bound parallel processing. For CPU-intensive tasks, developers use multiprocessing
instead of threading to bypass the GIL, or alternative implementations like Jython
(lacks GIL).

## JAVA

### 1. What is the difference between JDK, JRE, and JVM?


**Answer:**
- JDK (Java Development Kit): Tools for developing Java applications, including the
compiler (javac)
- JRE (Java Runtime Environment): Environment to run Java programs, including
libraries and JVM
- JVM (Java Virtual Machine): Executes Java bytecode, providing platform
independence

### 2. Explain inheritance in Java.


**Answer:** Inheritance lets a subclass inherit properties and methods from a
superclass using the extends keyword, e.g., `class Dog extends Animal`. It promotes
code reuse and establishes an "is-a" relationship. Java supports single inheritance
of classes but multiple inheritance of interfaces.

### 3. What are abstract classes and interfaces in Java?


**Answer:**
- Abstract Class: Cannot be instantiated, may contain abstract methods (without
implementation) and concrete methods. Used as a base for subclasses.
- Interface: Defines a contract of methods for classes to implement. Before Java 8,
interfaces contained only abstract methods; now they can have default and static
methods. Interfaces support multiple inheritance.

### 4. What is the difference between == and .equals() in Java?


**Answer:** `==` checks if two references point to the same object in memory
(reference equality), while `.equals()` checks if the values of objects are equal
(content equality). For example, with two String objects containing "hello", `==`
might return false, but `.equals()` would return true.

### 5. Explain multithreading in Java.


**Answer:** Multithreading runs multiple threads concurrently, improving
performance for tasks that can execute in parallel. Java implements it through the
Thread class or Runnable interface:
```java
class MyThread extends Thread {
public void run() {
System.out.println("Thread running");
}
}
// Or using Runnable
class MyRunnable implements Runnable {
public void run() {
System.out.println("Thread running");
}
}
```

### 6. How does exception handling work in Java?


**Answer:** Java uses try-catch-finally blocks for exception handling:
```java
try {
// Code that might throw an exception
int result = 10 / 0;
} catch (ArithmeticException e) {
// Handle the exception
System.out.println("Cannot divide by zero");
} finally {
// Code that always executes
System.out.println("Operation attempted");
}
```
Checked exceptions must be declared or caught; unchecked exceptions (runtime) don't
require explicit handling.

### 7. What is the difference between ArrayList and LinkedList in Java?


**Answer:** ArrayList uses an array, offering O(1) access but O(n)
insertions/deletions when resizing. LinkedList uses a doubly-linked list, providing
O(1) insertions/deletions at ends but O(n) access time. ArrayList is better for
random access; LinkedList excels at frequent modifications to the list structure.

### 8. What is the difference between method overloading and overriding?


**Answer:**
- Overloading: Multiple methods in the same class with the same name but different
parameters (different number, order, or type). Resolved at compile time (static
binding).
- Overriding: Subclass provides a specific implementation for a method already
defined in the superclass, using the same signature. Resolved at runtime (dynamic
binding).

### 9. What is the role of the `final` keyword in Java?


**Answer:** The `final` keyword has three uses:
- final variables cannot be reassigned after initialization
- final methods cannot be overridden by subclasses
- final classes cannot be subclassed/extended
It provides immutability, security, and performance optimization opportunities.

### 10. How does garbage collection work in Java?


**Answer:** Java's garbage collector automatically reclaims memory occupied by
objects with no references. It uses algorithms like Mark and Sweep to identify and
collect unreachable objects. The process includes marking live objects, sweeping
unreferenced objects, and compacting memory. Programmers can suggest collection via
`System.gc()` but cannot force it.

### 11. Explain the `this` and `super` keywords.


**Answer:**
- `this` refers to the current object instance, useful for disambiguating instance
variables from parameters or invoking current class constructors.
- `super` refers to the parent class, used to call parent class methods or
constructors, especially when they've been overridden in the subclass.

### 12. What is the difference between static and non-static methods?
**Answer:** Static methods belong to the class rather than instances, accessed via
the class name (e.g., `Math.sqrt()`). They cannot access instance variables or
methods directly, cannot use `this` or `super`, and are resolved at compile time.
Non-static methods belong to instances, can access all class members, and are
resolved at runtime.

### 13. Explain the concept of polymorphism with an example.


**Answer:** Polymorphism allows objects of different types to be treated through a
common interface. In Java, it's implemented through method overriding and
interfaces:
```java
interface Animal {
void makeSound();
}
class Dog implements Animal {
public void makeSound() { System.out.println("Bark"); }
}
class Cat implements Animal {
public void makeSound() { System.out.println("Meow"); }
}
// Usage with polymorphism
Animal myPet = new Dog(); // or new Cat()
myPet.makeSound(); // Calls the appropriate method based on actual object type
```

### 14. What are Java collections and how is `HashMap` used?
**Answer:** Java Collections Framework provides interfaces and classes for storing
and manipulating groups of objects. HashMap is a collection that stores key-value
pairs, allowing fast lookups without ordering guarantees:
```java
HashMap<String, Integer> studentScores = new HashMap<>();
studentScores.put("Alice", 95);
studentScores.put("Bob", 87);
int score = studentScores.get("Alice"); // Returns 95
```
It provides O(1) average time complexity for get/put operations.

### 15. What is the purpose of the `transient` keyword?


**Answer:** The `transient` keyword marks fields that should not be serialized when
the object is converted to a byte stream. It's useful for security-sensitive data
like passwords or temporary runtime variables that don't need persistence. During
deserialization, transient fields receive their default values (null, 0, false).

## SQL

### 1. What is a primary key?


**Answer:** A primary key uniquely identifies each record in a table, cannot
contain NULL values, and must be unique. Example: Student ID in a students table.
It maintains data integrity by ensuring no duplicate records exist and provides a
reference point for relationships with other tables.

### 2. Explain the difference between INNER JOIN and LEFT JOIN.
**Answer:**
- INNER JOIN: Returns only rows with matching values in both tables. Example:
`SELECT * FROM Students INNER JOIN Courses ON Students.CourseID = Courses.ID`
- LEFT JOIN: Returns all rows from the left table and matching rows from the right
table (with NULL for non-matches). Example: `SELECT * FROM Students LEFT JOIN
Courses ON Students.CourseID = Courses.ID`

### 3. What is normalization and why is it important?


**Answer:** Normalization organizes data into related tables to reduce redundancy
and ensure integrity. It prevents anomalies during insertions, updates, and
deletions. For example, separating student data and course data into different
tables instead of having one large table with repeated course information for each
student.

### 4. What is a foreign key?


**Answer:** A foreign key is a column (or columns) that references the primary key
of another table, creating relationships between tables. For example, a CourseID
column in a Students table that references the ID column in a Courses table.
Foreign keys enforce referential integrity, preventing orphaned records.

### 5. Explain ACID properties in database transactions.


**Answer:** ACID ensures reliable transactions:
- Atomicity: A transaction is all or nothing; either all operations complete or
none do
- Consistency: Transactions bring the database from one valid state to another
- Isolation: Concurrent transactions don't interfere with each other
- Durability: Once committed, changes persist even during system failures
Example: A bank transfer must either complete fully or not at all.

### 6. What is a stored procedure?


**Answer:** A stored procedure is a precompiled SQL code block stored in the
database, which can be executed with parameters. Example:
```sql
CREATE PROCEDURE GetStudentGrade(IN studentID INT)
BEGIN
SELECT grade FROM Grades WHERE student_id = studentID;
END;
```
Benefits include improved performance, reduced network traffic, and enhanced
security.

### 7. What is the difference between `WHERE` and `HAVING` clause?


**Answer:** WHERE filters individual rows before aggregation, while HAVING filters
groups after aggregation. Example:
```sql
SELECT department, AVG(salary) FROM employees
WHERE hire_date > '2020-01-01' -- Filters individual employees
GROUP BY department
HAVING AVG(salary) > 50000; -- Filters departments after averaging
```
WHERE cannot use aggregate functions, but HAVING can.

### 8. What are indexes and how do they affect performance?


**Answer:** Indexes are database structures that improve query performance by
allowing faster data retrieval. They work like a book index, providing direct
pointers to data locations. Example: `CREATE INDEX idx_student_name ON
Students(last_name);` improves queries filtering by last name. Indexes speed up
SELECT queries but slow down INSERT/UPDATE operations.

### 9. How do you implement a many-to-many relationship in SQL?


**Answer:** Many-to-many relationships require a junction table (also called bridge
or associative table) containing foreign keys from both related tables. Example:
Students and Courses have many-to-many relationship implemented through a
StudentCourses table with student_id and course_id columns, both being foreign keys
to their respective tables.

### 10. What is the difference between `DELETE`, `TRUNCATE`, and `DROP`?
**Answer:**
- DELETE: Removes specific rows based on a condition; can be rolled back; preserves
table structure
- TRUNCATE: Removes all rows; cannot be rolled back; preserves table structure but
resets auto-increment
- DROP: Removes the entire table including structure; cannot be rolled back
Example: DELETE is like erasing entries in a notebook, TRUNCATE is tearing out all
pages but keeping the notebook, DROP is throwing away the notebook completely.

### 11. Explain SQL constraints (PRIMARY KEY, FOREIGN KEY, UNIQUE, CHECK).
**Answer:**
- PRIMARY KEY: Uniquely identifies each record
- FOREIGN KEY: Enforces relationships between tables
- UNIQUE: Ensures all values in a column are different
- CHECK: Ensures values meet a condition
Example: `CREATE TABLE Students (ID INT PRIMARY KEY, Email VARCHAR(100) UNIQUE, Age
INT CHECK (Age > 10))`
### 12. What are aggregate functions in SQL?
**Answer:** Aggregate functions perform calculations on multiple rows and return a
single value. Common functions include:
- COUNT(): Counts rows
- SUM(): Adds values
- AVG(): Calculates average
- MIN()/MAX(): Finds minimum/maximum values
Example: `SELECT AVG(score) FROM Exams WHERE subject = 'Computer Science'`

### 13. What are views and how are they used?
**Answer:** Views are virtual tables based on SQL statements' results, useful for
simplifying complex queries, restricting data access, and presenting data
differently. Example:
```sql
CREATE VIEW StudentGrades AS
SELECT s.name, c.title, g.grade
FROM Students s
JOIN Grades g ON s.id = g.student_id
JOIN Courses c ON g.course_id = c.id;
```
Unlike actual tables, views don't store data physically.

### 14. How does `GROUP BY` work? Provide an example.


**Answer:** GROUP BY aggregates rows with the same values into summary rows, used
with aggregate functions. Example:
```sql
SELECT department, COUNT(*) as employee_count, AVG(salary) as avg_salary
FROM employees
GROUP BY department;
```
This returns one row per department with counts and average salaries, rather than
individual employee rows.

### 15. What is a transaction? How do you start and end one?
**Answer:** A transaction is a sequence of operations performed as a single logical
unit of work. Start with BEGIN TRANSACTION or START TRANSACTION (syntax varies by
database); end with COMMIT to save changes or ROLLBACK to undo them. Example:
```sql
BEGIN TRANSACTION;
UPDATE Accounts SET balance = balance - 100 WHERE id = 1;
UPDATE Accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;
```

### 16. What is the difference between clustered and non-clustered indexes?
**Answer:**
- Clustered index: Determines the physical order of data in a table; only one per
table
- Non-clustered index: Creates a separate structure with pointers to the actual
data; multiple allowed per table
Example: A clustered index on StudentID orders the student table physically by ID,
while a non-clustered index on LastName creates a separate sorted structure
pointing to the actual records.

## NETWORKING

### 1. What is the OSI model?


**Answer:** The OSI (Open Systems Interconnection) model has seven layers that
standardize network functions:
1. Physical: Physical media, cables, electrical signals
2. Data Link: Node-to-node connectivity, MAC addressing
3. Network: Logical addressing (IP), routing
4. Transport: End-to-end connections, reliability (TCP/UDP)
5. Session: Session establishment, management
6. Presentation: Data translation, encryption
7. Application: User interfaces, services (HTTP, FTP)
This layered approach simplifies network troubleshooting and design.

### 2. Explain the difference between TCP and UDP.


**Answer:**
- TCP (Transmission Control Protocol): Connection-oriented, reliable, with error
checking, flow control, and sequencing. Used for web browsing, email, file
transfers where accuracy is critical.
- UDP (User Datagram Protocol): Connectionless, faster but less reliable, no
guaranteed delivery or order. Used for streaming, online gaming, DNS where speed
matters more than perfect reliability.

### 3. What is an IP address?


**Answer:** An IP address is a unique numerical identifier assigned to each device
on a network, functioning like a home address for data delivery. IPv4 addresses use
a 32-bit format (e.g., 192.168.1.1), while IPv6 addresses use 128 bits (e.g.,
2001:0db8:85a3:0000:0000:8a2e:0370:7334) to accommodate more devices.

### 4. What is a subnet mask?


**Answer:** A subnet mask (e.g., 255.255.255.0 or /24) divides an IP address into
network and host portions, enabling efficient routing. The '1' bits in the mask
identify the network portion, while '0' bits identify the host portion. With
255.255.255.0, the first three octets represent the network, and the last octet
identifies unique hosts.

### 5. Explain the concept of DNS.


**Answer:** DNS (Domain Name System) translates human-readable domain names (e.g.,
google.com) into IP addresses (e.g., 142.250.190.78). It works hierarchically, with
root servers, TLD servers, authoritative servers, and resolvers. When you enter a
URL, your device queries DNS servers to find the corresponding IP address, like
looking up a phone number in a directory.

### 6. What is DHCP and how does it work?


**Answer:** DHCP (Dynamic Host Configuration Protocol) automatically assigns IP
addresses to network devices. The process follows four steps:
1. DISCOVER: Client broadcasts request for configuration
2. OFFER: DHCP server offers an IP address
3. REQUEST: Client requests the offered IP
4. ACKNOWLEDGE: Server confirms and provides additional information (subnet mask,
gateway, DNS)
This eliminates the need for manual IP configuration.

### 7. Explain the difference between a hub, switch, and router.


**Answer:**
- Hub: Layer 1 device that broadcasts data to all connected devices regardless of
destination
- Switch: Layer 2 device that forwards data to specific devices based on MAC
addresses, more efficient than hubs
- Router: Layer 3 device that connects different networks and forwards data between
them based on IP addresses
Example: In a school network, switches connect computers within a lab, while
routers connect different labs together and to the internet.
### 8. What is the difference between IPv4 and IPv6?
**Answer:** IPv4 uses 32-bit addresses (4.3 billion addresses), while IPv6 uses
128-bit addresses (virtually unlimited). IPv6 offers improved security, simplified
headers, no need for NAT, and better multicast support. IPv4 uses dotted decimal
notation (192.168.1.1), while IPv6 uses hexadecimal notation separated by colons
(2001:0db8::1).

### 9. Explain MAC address vs IP address.


**Answer:** MAC (Media Access Control) addresses are physical, hard-coded into
network interfaces, unchangeable, and work at Layer 2. They use a 48-bit
hexadecimal format (e.g., 00:1A:2B:3C:4D:5E). IP addresses are logical, assigned by
networks, changeable, and work at Layer 3. MAC addresses identify devices on a
local network, while IP addresses enable global routing.

### 10. What are firewalls and how do they protect a network?
**Answer:** Firewalls monitor and control incoming/outgoing network traffic based
on security rules. They function as barriers between trusted internal networks and
untrusted external networks. Types include:
- Packet filtering: Examines individual packets
- Stateful inspection: Tracks connection states
- Application-level gateways: Inspect application-layer data
Firewalls block unauthorized access, prevent malware entry, and control what
services can be accessed from outside the network.

### 11. What is NAT (Network Address Translation)?


**Answer:** NAT translates private IP addresses to public IP addresses, allowing
multiple devices to share a single public IP. This conserves IPv4 addresses and
adds security by hiding internal network structures. Example: A home router assigns
private IPs (192.168.x.x) to devices and translates them to the single public IP
provided by the ISP when communicating with external servers.

### 12. Explain HTTPS and how it ensures secure communication.


**Answer:** HTTPS (HTTP Secure) encrypts web communications using SSL/TLS
protocols. It works by:
1. Establishing a secure connection via handshake
2. Authenticating the server with digital certificates
3. Encrypting data with session keys
This protects against eavesdropping, tampering, and impersonation. Browsers
indicate HTTPS connections with a padlock icon in the address bar.

### 13. What is a VPN and why is it used?


**Answer:** A VPN (Virtual Private Network) creates an encrypted tunnel for secure
communication over public networks. It's used for:
- Security: Encrypting data on public WiFi
- Privacy: Hiding browsing activity from ISPs
- Access: Bypassing geo-restrictions
- Remote work: Securely accessing company resources
VPNs work by encrypting data before transmission and routing it through servers in
different locations.

### 14. How do switches differ from routers?


**Answer:** Switches operate at OSI Layer 2, using MAC addresses to forward frames
within a single network. Routers operate at Layer 3, using IP addresses to direct
packets between different networks. Switches are faster for local communication but
can't route between networks; routers are slightly slower but enable internet
connectivity and WAN communication.

### 15. What is bandwidth and latency?


**Answer:**
- Bandwidth: Maximum data transfer rate of a network connection, measured in bits
per second (bps). Like the width of a highway.
- Latency: Delay between sending and receiving data, measured in milliseconds (ms).
Like the time to travel the highway.
High bandwidth is important for transferring large files, while low latency is
crucial for real-time applications like video calls or online gaming.

### 16. Explain the concept of packet switching vs circuit switching.


**Answer:**
- Packet switching: Data is divided into packets that can take different routes to
the destination. Used by the internet, it's efficient for bursty traffic and
network sharing.
- Circuit switching: A dedicated physical connection is established for the entire
communication session. Used by traditional telephone systems, it guarantees
consistent quality but is less efficient with resources.
Packet switching is like taking different roads based on traffic, while circuit
switching is like having a private road reserved for the entire journey.

## SCHOOL-SPECIFIC QUESTIONS

### 1. Do you have experience in a boarding school environment?


**Answer:** [If yes, describe experience; if not]: I'm eager to adapt to the
boarding school setup, leveraging my skills to engage students holistically. I
understand boarding schools require deeper involvement with students beyond
academics, and I'm prepared to contribute to their overall development through
evening study halls, weekend activities, and mentoring.

### 2. What co-curricular activities can you lead?


**Answer:** I can lead coding clubs where students develop real-world applications,
robotics competitions to promote teamwork and problem-solving, and technology
workshops focused on emerging fields like AI or cybersecurity. These activities
complement classroom learning while developing students' creativity and
collaboration skills.

### 3. How do you balance academic and extracurricular responsibilities?


**Answer:** I prioritize lesson planning and academics while scheduling
extracurriculars strategically. Efficient time management, advance preparation, and
collaboration with colleagues help maintain balance. I create systems to track both
academic progress and extracurricular participation, ensuring neither aspect is
neglected.

## GENERAL IT

### 1. How can you use computers in your classroom?


**Answer:** I integrate computers through coding labs for hands-on practice,
simulation software to visualize abstract concepts, collaborative platforms for
group projects, and assessment tools for immediate feedback. Technology enhances
engagement and allows students to apply theoretical knowledge practically while
developing digital literacy.

### 2. What are current trends in computer science for students?


**Answer:** Current trends include artificial intelligence and machine learning
fundamentals, cybersecurity awareness and ethical hacking, data science and
visualization, mobile app development, and cloud computing. I introduce these
through age-appropriate projects like creating simple chatbots, analyzing datasets,
or developing basic web applications with cloud storage.

You might also like