The most organized, comprehensive, open-source TCS IPA preparation repository available.
IPA (Incentive Pay for Associates) is a performance-based exam conducted by TCS for its associates. It consists of multiple sections that test both technical and professional skills:
| Section | Marks | Topics |
|---|---|---|
| Java Coding — 35 Marks | 35 | OOP class design, static methods, array of objects |
| Java Coding — 15 Marks | 15 | String/number manipulation programs |
| Java MCQ | varies | Core Java concepts, output prediction |
| SQL / PL-SQL | varies | Queries, joins, subqueries, cursors |
| Unix / Linux | varies | Shell commands, file permissions, processes |
| UI (HTML, CSS, JS) | varies | Web fundamentals, DOM, events |
| KYT (Know Your TCS) | varies | TCS history, values, Business 4.0, MFDM |
| BizSkills | varies | Communication, workplace ethics, 7 C's |
The 35-mark Java question is always an OOP problem. Cracking the universal skeleton for it is the single highest-leverage thing you can do.
TCS-IPA-PREPARATION/
│
├── 📂 01-KYT-Know-Your-TCS/ # TCS history, values, Business 4.0, MFDM
├── 📂 02-BizSkills/ # Communication, 7 C's, email etiquette
├── 📂 03-Unix-Linux/ # Shell commands, chmod, processes
├── 📂 04-SQL-PLSQL/ # SQL queries, PL/SQL, stored procedures
├── 📂 05-UI-HTML-CSS-JS/ # HTML, CSS, JavaScript fundamentals
│
├── 📂 06-Java-Coding/ # Core Java study material
│ ├── JAVA-35-MARKS-COMPLETE-GUIDE.md
│ ├── JAVA-15-MARKS-COMPLETE-GUIDE.md
│ └── 📂 Java-Foundations/ # ✨ Topic-wise merged programs
│ ├── 01-Basics-and-IO.java
│ ├── 02-Operators-and-Number-Systems.java
│ ├── 03-Loops-and-Functions.java
│ ├── 04-Arrays-and-Matrix.java
│ ├── 05-Strings-Deep-Dive.java
│ ├── 06-OOP-Classes-and-Objects.java
│ ├── 07-String-Problem-Patterns.java
│ ├── 08-Number-Problem-Patterns.java
│ ├── 09-Prime-Fibonacci-and-Math.java
│ └── 10-Advanced-String-Techniques.java
│
├── 📂 07-Java-MCQ/ # Java MCQ questions with explanations
│
├── 📂 IPA-Questions/ # All real TCS IPA problems in one place
│ ├── IPA1/ … IPA55/ # Each: problem .txt + solution .java
│ ├── 2nd_Lowest_Salary/
│ └── Company_Employee/
│
├── 📂 Java-Practice/ # 60+ standalone Java programs
│
├── 📂 Day 1/ – Day 29/ # Day-wise lecture practice + IPA walkthroughs
│
├── 📄 README.md
├── 📄 LICENSE
└── 📄 CONTRIBUTING.md
Each of the numbered folders contains a full, in-depth study guide written specifically for the IPA exam — not generic textbook content.
| Folder | Guide | Key Topics |
|---|---|---|
01-KYT-Know-Your-TCS |
kyt_study_guide.md |
TCS history, LIREL values, Business 4.0, MFDM, Big Data |
02-BizSkills |
bizskills_notes.md |
7 C's, communication types, email etiquette, Tuckman's model |
03-Unix-Linux |
unix_commands.md |
File commands, chmod, grep, ps, redirection, shell scripting |
04-SQL-PLSQL |
SQL-COMPLETE-GUIDE.md |
SELECT, JOINs, subqueries, GROUP BY, PL/SQL blocks, cursors |
05-UI-HTML-CSS-JS |
ui_notes_prep.md |
HTML tags, CSS selectors, JS DOM, events, ES6 |
06-Java-Coding |
Two complete guides | 35-mark OOP skeleton + 15-mark string/number patterns |
07-Java-MCQ |
TCS_IPA_JAVA_MCQ_GUIDE.md |
50+ MCQs with plain-English explanations |
<<<<<<< HEAD
The 06-Java-Coding/Java-Foundations/ folder organizes all foundational Java programs by concept. Each file groups 3–5 related programs together for focused study.
| File | What You'll Learn |
|---|---|
01-Basics-and-IO.java |
Hello World, Scanner, print/println, data types |
02-Operators-and-Number-Systems.java |
Arithmetic, binary↔decimal conversion, bit manipulation |
03-Loops-and-Functions.java |
for/while/do-while, static methods, factorial, word count |
04-Arrays-and-Matrix.java |
1D arrays, 2D matrix input/output, element search |
05-Strings-Deep-Dive.java |
String vs StringBuilder, built-in methods, reverse |
06-OOP-Classes-and-Objects.java |
Classes, objects, inheritance, constructors, this |
07-String-Problem-Patterns.java |
Armstrong numbers, Calculator, Consecutive vowels, Compression |
08-Number-Problem-Patterns.java |
Smallest char, Sum of digits, Sum of odd, Consonants at odd positions |
09-Prime-Fibonacci-and-Math.java |
Prime digit count, Vowel/consonant/digit count, Fibonacci series |
10-Advanced-String-Techniques.java |
First letter of each word, Longest unique substring, First non-repeated char, Set intersection |
=======
dec21b65b56405b2fe77a44981e0de0d76b1366c
🎯 IPA Question Bank — IPA-Questions/
All real TCS IPA exam problems are consolidated in one folder — no more hunting through the root.
Every sub-folder contains:
.txt— the original problem statement exactly as it appears in the exam.java— a clean, working solution
| Range | Topics Covered |
|---|---|
| IPA1 – IPA10 | Course/Employee class design, sorting, filtering, second highest |
| IPA11 – IPA20 | Book, Player, Product, Footwear class problems |
| IPA21 – IPA30 | Travel, Hotel, Medicine, Vehicle problems |
| IPA31 – IPA40 | Mixed OOP problems with string + number methods |
| IPA41 – IPA55 | Advanced scenarios, combined logic, edge cases |
| 2nd_Lowest_Salary | SQL-style second highest salary via Java |
| Company_Employee | Employee filtering + sorting patterns |
💡 Tip: Before looking at the solution, try coding it yourself. The
.txtfile has the full problem statement and sample I/O.
The Day X folders mirror a real 29-day structured study plan. Each day folder contains:
- Concept Java programs practiced that day
- IPA questions attempted that day (sub-folders like
IPA 2,IPA 5, etc.)
This gives you a roadmap of how to pace your preparation if you're starting fresh.
| Day | Focus |
|---|---|
| Day 1–3 | Java basics: I/O, conditions, loops, functions |
| Day 4–5 | OOP: classes, objects, inheritance |
| Day 6–10 | String manipulation patterns (most common IPA topic) |
| Day 11–15 | Number/math problems, prime, fibonacci |
| Day 16–20 | Advanced strings: HashMap, sliding window, sets |
| Day 21–25 | IPA practice: attempt 35-mark questions from scratch |
| Day 26–27 | SQL + Unix crash course |
| Day 28 | KYT + BizSkills + UI revision |
| Day 29 | Full mock: 2-hour timed practice session |
- The class structure is always the same — learn the skeleton once
- Always write getters, setters, AND constructor even if not explicitly asked
- Method 1 usually filters/counts; Method 2 usually sorts or finds an extreme value
- Output messages must match exactly (copy from the problem statement)
- Focus on: reverse, palindrome, vowel count, prime check, fibonacci, Armstrong
- Keep a
isVowel()helper method ready — it's reused in many problems
- Know
GROUP BY+HAVINGcold — appears in nearly every paper - Practice correlated subqueries and
NOT IN/NOT EXISTSpatterns
chmodnumeric scheme (r=4, w=2, x=1) — always tested- Know
ps aux,grep -i,kill -9, and pipe|usage
- MCQ traps: "Teamwork" is NOT a TCS core value; "Confident" is NOT one of the 7 C's
- If you don't know an answer in a client meeting → acknowledge + follow up (never bluff)
Contributions are welcome! See CONTRIBUTING.md for guidelines on how to add solutions, fix bugs, or improve notes.
This project is licensed under the MIT License — see the LICENSE file for details.
Free to use, share, and modify. If this repo helped you crack IPA, consider giving it a ⭐!
Made with ❤️ by Apoorv Jain
Good luck with your IPA! You've got this. 💪