OOPS DBMS OS REACT
OOPS DBMS OS REACT
DBMS
1. ER Model and ER Diagrams
• Concept of entities, attributes, and relationships.
• Mapping cardinality (one-to-one, one-to-many, many-to-many).
• Converting ER diagrams into relational schemas.
2. Normalization
• Importance of normalization to reduce redundancy.
• Forms:
o 1NF: Eliminate repeating groups.
o 2NF: Remove partial dependencies.
o 3NF: Remove transitive dependencies.
o BCNF: Higher form of 3NF to ensure no non-trivial functional dependency exists.
3. SQL Queries
• CRUD operations: SELECT, INSERT, UPDATE, DELETE.
• Writing complex queries using multiple conditions and filters.
4. Joins
• Inner Join: Common values in both tables.
• Outer Joins: Includes unmatched rows:
o Left Join: All rows from the left table.
o Right Join: All rows from the right table.
o Full Outer Join: All rows from both tables.
• Self Join: Joining a table to itself.
5. Indexes
• Purpose of indexing to speed up query performance.
• Types:
o Single-column, Multi-column.
o Clustered vs Non-clustered indexes.
• When and how to use indexes effectively.
6. ACID Properties
• Atomicity, Consistency, Isolation, Durability: Ensures reliable transactions.
7. Transactions and Concurrency Control
• Concept of transactions and their states.
• Ensuring consistency using COMMIT and ROLLBACK.
• Concurrency issues: Dirty read, lost updates, uncommitted data, and phantom reads.
8. Locks
• Shared and Exclusive locks.
• Granularity of locks: Row-level, Table-level locks.
• Deadlocks and their prevention.
9. Triggers and Stored Procedures
• Triggers: Automatic actions triggered by events like INSERT, DELETE.
• Stored Procedures: Precompiled SQL code for reuse.
10. Views
• Virtual tables created using SQL queries.
• Use cases: Hiding complexity, security, and reusable queries.
11. Keys
• Types of keys in relational databases:
o Primary Key: Unique identifier for a table.
o Foreign Key: Reference to the primary key of another table.
o Candidate Key: Possible primary keys.
o Composite Key: Combination of attributes.
12. Aggregation Functions
• Common SQL functions: SUM, COUNT, AVG, MAX, MIN.
• Grouping results using GROUP BY.
13. Subqueries and Nested Queries
• Using queries within queries.
• Correlated subqueries for row-by-row evaluation.
14. Group By and Having Clauses
• Summarizing data using GROUP BY.
• Filtering grouped data using HAVING.
15. Database Relationships
• Understanding relationships:
o One-to-One: e.g., Person and Passport.
o One-to-Many: e.g., Customer and Orders.
o Many-to-Many: e.g., Students and Courses.
16. Schema Design
• Logical vs Physical schema.
• Designing normalized schemas for applications.
17. SQL vs NoSQL
• Key differences: Structured vs unstructured data, scalability, flexibility.
• Use cases for SQL (e.g., banking) and NoSQL (e.g., real-time applications).
18. CAP Theorem
• Understanding Consistency, Availability, and Partition Tolerance trade-offs in distributed
databases.
19. Indexes and Performance Optimization
• Using indexing to improve query performance.
• Situations where indexes can degrade performance (e.g., frequent inserts).
20. File Organization and Storage
• How data is stored in files:
o Heap files: Unordered.
o Hash files: Hash function for indexing.
o ISAM: Indexed Sequential Access Method.
21. Normalization vs Denormalization
• Trade-offs between reducing redundancy (normalization) and improving query speed
(denormalization).
22. Difference Between DBMS and RDBMS
• Key differences: Relationships, normalization, and multi-user access.
23. Data Integrity Constraints
• Ensuring correctness:
o Entity integrity (unique primary keys).
o Referential integrity (valid foreign keys).
24. Partitioning and Sharding
• Partitioning: Dividing tables into smaller pieces for performance.
• Sharding: Horizontal scaling by distributing data across multiple servers.
25. Basic MongoDB or NoSQL Queries
• CRUD operations in NoSQL databases.
• Difference between documents and collections (e.g., MongoDB).
OS
1. Operating System Basics
• What is an OS?
• Types of OS: Batch, Multitasking, Real-Time, Distributed.
2. Process Management
• Processes and Threads.
• Process States (New, Ready, Running, Waiting, Terminated).
• Process Control Block (PCB).
• Context Switching.
3. Threads
• Difference between Threads and Processes.
• Multithreading models (User-level, Kernel-level threads).
4. CPU Scheduling
• Scheduling Criteria (Throughput, Turnaround Time, Waiting Time, Response Time).
• Scheduling Algorithms:
o First-Come-First-Serve (FCFS).
o Shortest Job Next (SJN).
o Priority Scheduling.
o Round Robin (RR).
o Multilevel Queue Scheduling.
5. Inter-Process Communication (IPC)
• Shared Memory.
• Message Passing.
• Pipes, Sockets, and Signals.
6. Synchronization
• Race Conditions.
• Critical Section Problem.
• Synchronization Mechanisms:
o Semaphores (Binary and Counting).
o Mutex.
• Classical Problems of Synchronization:
o Producer-Consumer Problem.
o Readers-Writers Problem.
o Dining Philosophers Problem.
7. Deadlocks
• Necessary Conditions for Deadlock (Mutual Exclusion, Hold and Wait, No Preemption,
Circular Wait).
• Deadlock Prevention and Avoidance:
o Banker's Algorithm.
• Deadlock Detection and Recovery.
8. Memory Management
• Logical vs Physical Address Space.
• Paging and Segmentation.
• Virtual Memory:
o Page Replacement Algorithms:
▪ FIFO, LRU, Optimal, Clock.
o Thrashing.
9. Storage Management
• File Systems:
o File Operations (Create, Open, Close, Read, Write).
o File Allocation Methods (Contiguous, Linked, Indexed).
o Directory Structures (Single-level, Multi-level, Tree).
• Disk Scheduling Algorithms:
o FCFS, SSTF, SCAN, C-SCAN, LOOK, C-LOOK.
10. I/O Management
• I/O Devices and their interactions with OS.
• Buffering, Caching, Spooling.
11. System Calls
• Types of system calls: Process Control, File Management, Device Management, Information
Maintenance, Communication.
12. Security and Protection
• Access Control: Authentication and Authorization.
• Protection Mechanisms: Access Matrix, Capability List, Role-Based Access Control (RBAC).
13. Linux/Unix Concepts
• Common commands (ps, top, kill, chmod, grep, awk).
• Shell scripting basics.
• Process handling in Unix/Linux.
14. Virtualization and Cloud Concepts
• Basics of Hypervisors (Type 1 and Type 2).
• Virtual Machines and Containers (Docker).
15. Real-Time Systems
• Characteristics and examples of real-time systems.
• Hard vs Soft real-time systems.
16. Boot Process
• Steps involved in the booting process.
• BIOS/UEFI, Bootloader, Kernel initialization.
17. Distributed Systems Basics
• Concepts like Distributed File Systems (DFS), Remote Procedure Calls (RPCs).
• Challenges in distributed systems (Fault tolerance, Synchronization).
18. Performance Monitoring and Optimization
• Concepts of Bottlenecks.
• CPU, Memory, Disk usage monitoring tools.
19. Cache Management
• Importance of caching in the OS.
• Cache Replacement Policies: LRU, FIFO, Optimal.
20. Microkernel vs Monolithic Kernel
• Differences, advantages, and disadvantages.
JS
1. Basics of JavaScript
• Variables (var, let, const) and scope.
• Data types (Primitive: String, Number, Boolean, Null, Undefined, Symbol; Non-primitive:
Object).
• Type coercion and conversions.
• Template literals and string interpolation.
2. Functions
• Function declaration vs expression.
• Arrow functions.
• Callback functions.
• Higher-order functions.
• Immediately Invoked Function Expressions (IIFE).
6. ES6+ Features
• Destructuring and spread/rest operators.
• Default parameters.
• Modules: import and export.
• let and const vs var.
• for...of and for...in loops.
7. Object-Oriented JavaScript
• Objects and prototypes.
• this keyword and its context.
• Classes and inheritance (extends, super).
• Constructor functions.
• Object methods (Object.keys(), Object.values(), Object.entries()).
8. Error Handling
• try, catch, finally.
• Custom error messages.
REACT JS
1. React Basics
• What is React and why use it?
• JSX: Syntax and rules.
• Components: Functional and Class-based.
• Props: Passing data between components.
• State: Managing local component state.
3. React Hooks
• useState for state management.
• useEffect for side effects.
• useContext for context API.
• useReducer for state management with reducers.
• useMemo and useCallback for performance optimization.
• useRef for accessing DOM elements and persisting values.
• Custom hooks: Creating reusable logic.
5. React Routing
• React Router Basics: BrowserRouter, Route, Link, and NavLink.
• Dynamic routing with parameters.
• Nested routes.
• Redirects and programmatic navigation.
7. Context API
• Understanding React Context.
• Passing data without prop drilling.
• useContext for accessing context values.
8. State Management
• Local state using useState and useReducer.
• Global state management tools: Redux, Zustand, Recoil, or MobX.
• Redux Basics: Actions, Reducers, Store, Middleware (Thunk, Saga).
• Context API as a lightweight alternative to Redux.
18. Deployment
• Building and deploying a React app to platforms like Vercel, Netlify, or AWS.
• Best practices for production builds (npm run build).
3. Asynchronous Programming
• Callbacks and the callback hell.
• Promises: then, catch, and chaining.
• Async/Await syntax.
• EventEmitter class in Node.js.
4. File System
• Reading and writing files (fs.readFile, fs.writeFile, fs.appendFile).
• Creating and deleting files/folders.
• Using streams for reading/writing large files.
5. HTTP Module
• Creating a basic HTTP server.
• Handling requests and responses.
• Using query strings and URL parameters.
• Understanding HTTP methods (GET, POST, PUT, DELETE).
6. Middleware in Express.js
• Understanding middleware functions in Express.
• Built-in middleware (express.json, express.urlencoded, express.static).
• Third-party middleware (e.g., body-parser, cors).
• Writing custom middleware for logging, authentication, etc.
7. Routing in Express.js
• Defining routes with app.get, app.post, app.put, app.delete.
• Route parameters and query strings.
• Express Router for modular route handling.
• Handling 404 errors with middleware.
9. Templating Engines
• Using templating engines like EJS, Handlebars, or Pug.
• Rendering dynamic HTML pages with data.
18. Deployment
• Deploying Node.js apps on cloud platforms (Heroku, AWS, Vercel).
• Environment variables using dotenv.
• Setting up PM2 for process management and load balancing.
2. SQL
Basics
• SQL syntax: DDL, DML, DCL, TCL.
• Tables, rows, and columns.
• Constraints: Primary key, Foreign key, Unique, Not Null, Check.
SQL Queries
• SELECT statements with WHERE, ORDER BY, GROUP BY, and HAVING.
• Filtering with LIKE, IN, BETWEEN, NOT.
• Aggregate functions: COUNT, SUM, AVG, MIN, MAX.
Joins
• Types of joins:
o INNER JOIN.
o LEFT JOIN, RIGHT JOIN.
o FULL OUTER JOIN.
o CROSS JOIN, SELF JOIN.
• Real-world use cases of joins.
Subqueries
• Correlated and non-correlated subqueries.
• Subqueries in SELECT, WHERE, and FROM clauses.
Indexes
• Clustered vs Non-clustered indexes.
• Impact of indexes on query performance.
• Composite indexes.
Normalization and Denormalization
• Normal forms (1NF, 2NF, 3NF, BCNF).
• Benefits of normalization.
• When to denormalize for performance.
Transactions
• ACID properties (Atomicity, Consistency, Isolation, Durability).
• Savepoints in SQL.
• Locking mechanisms (Shared vs Exclusive).
Stored Procedures and Functions
• Writing basic stored procedures.
• Use of triggers in SQL.
• Difference between functions and procedures.
Views
• Creating and using views.
• Materialized views vs normal views.
• Use cases of views in SQL.
Performance Tuning
• Query optimization with EXPLAIN and ANALYZE.
• Avoiding full table scans.
• Indexing best practices.
• Understanding query execution plans.
SQL and Security
• SQL injection attacks and how to prevent them.
• Using prepared statements.
• Managing user permissions and roles.
Advanced Topics
• Recursive queries with Common Table Expressions (CTEs).
• Partitioning in SQL tables.
• Window functions: ROW_NUMBER, RANK, LEAD, LAG.
• Working with JSON data in modern SQL databases.
AWS
1. AWS S3 (Amazon Simple Storage Service)
Core Features and Concepts
• Basics of S3 buckets: creating, naming rules, and regions.
• Object storage: file upload/download, object keys, and metadata.
• Data consistency model: Strong consistency in S3.
• Storage classes: Standard, Intelligent-Tiering, One Zone-IA, Glacier, Glacier Deep Archive.
• Versioning: Enabling versioning and handling versioned objects.
• Lifecycle policies: Automating data transitions between storage classes.
• Cross-Origin Resource Sharing (CORS).
Security
• Bucket policies and access control lists (ACLs).
• IAM roles and permissions for S3.
• Server-side encryption (SSE): SSE-S3, SSE-KMS, and SSE-C.
• Client-side encryption.
• Block public access settings.
Advanced Topics
• S3 Transfer Acceleration.
• S3 Event Notifications (Triggering Lambda functions, SNS, SQS).
• S3 Object Lock and legal hold.
• S3 Multipart Uploads for large files.
• Static website hosting using S3.
• Cross-region replication (CRR) and Same-region replication (SRR).
2. AWS Transcribe
Core Features and Concepts
• Supported input/output formats (audio/video).
• Real-time vs batch transcription.
• Language support and identifying multiple speakers.
• Punctuation and formatting features.
• Custom vocabularies and vocabulary filtering.
• Transcription jobs: Creating, managing, and monitoring.
Integration
• Integrating Transcribe with other AWS services (e.g., S3, Lambda, DynamoDB).
• Streaming transcription via WebSocket API.
• Transcription with AWS SDKs and CLI.
Best Practices
• Optimizing audio quality for better transcription accuracy.
• Managing costs with resource optimization.
• Handling errors and retries in transcription jobs.
Interview-Ready Skills
1. Hands-On Practice
o Create an end-to-end workflow integrating S3 and AWS Transcribe (e.g., uploading
audio to S3 and triggering transcription using Lambda).
2. Cost Optimization
o Understand how to optimize costs for S3 (e.g., lifecycle rules) and Transcribe (batch
jobs, reducing idle time).
3. Common Questions
o How does S3 ensure data durability?
o Explain the lifecycle of an AWS Transcribe job.
o How would you integrate Transcribe with another AWS service to create a
transcription pipeline?