Tally Solutions Previous Year Coding Questions and Hiring Process
Tally Solutions is a Bangalore headquartered Indian software product company, best known as the maker of TallyPrime and Tally.ERP accounting and business management software. It hires freshers for Trainee Software Engineer and Software Engineer roles, and its interviews lean heavily on core C and C++ fundamentals, reflecting the company's roots in a long lived desktop accounting engine.
If you are preparing for Tally Solutions, understanding the online coding round, the C and C++ heavy technical interviews, and the puzzle style questions that show up alongside them will help you prepare efficiently. This guide covers the complete Tally Solutions hiring process along with previous year coding questions asked in its online assessments and interviews.
Tally Solutions Hiring Process
Here is the typical flow for Tally Solutions fresher hiring through campus and off campus drives. Selection funnels are steep, past drives have narrowed 150 or more applicants down to single digit offers.
| Stage | What Happens | What They Are Looking For |
|---|---|---|
| A coding round, historically on Cocubes, HackerEarth, or HackerRank, usually 3 DSA problems in 45 to 75 minutes, ranging from easy to medium difficulty. Some drives add MCQs on aptitude, OOPs, DBMS, and computer networks alongside the coding problems. | Breadth across DSA fundamentals under time pressure. |
| Interviewers are consistently described as friendly and hint driven, focusing on your approach as much as the final answer. Expect deep questions on C and C++, OOP concepts, linked lists, and DBMS, along with logic puzzles. | Strong fundamentals and clear reasoning under guidance. |
| A conversation about your strengths, weaknesses, and resume projects, sometimes combined with a final technical check to confirm you genuinely built what is listed on your resume. | Genuine ownership of your projects and cultural fit. |
Older drives, around 2018, also included a Group Discussion round with no eliminations, one reported topic was "Do Brand Rules Our Life?" This does not appear in more recent drives based on available reports. Tally also runs a distinct hackathon style hiring program called Tally CodeBrewers for some off campus SDE openings, where teams build and demo a project over several days to mentors before qualifying for standard interviews. Unlike the core C and C++ heavy fresher track, the CodeBrewers technical round has also touched on the Spring framework and its features, along with general networking concepts like multitasking and broadcasting, suggesting some teams behind this track work outside the classic desktop accounting engine.
Assessment Pattern
Format: A proctored online coding test, historically on Cocubes, HackerEarth, or HackerRank depending on the drive.
Sections typically included:
- Coding Round: Typically 3 DSA problems covering arrays, linked lists, trees, hashing, and number theory, in 45 to 75 minutes.
- MCQ Section (some drives): Aptitude, OOPs, DBMS, and computer networks basics, including HTTP status codes.
- Tally CodeBrewers Track (select drives): MCQ plus coding round on DSA, OOPs, logical reasoning, math, and DBMS, followed by a multi day project build and demo to mentors.
Tally Solutions Coding Round: What to Expect
The coding round at Tally Solutions blends standard DSA problems with number theory and linked list heavy questions. Frequently reported topics include:
- Array and hashing problems, including divisibility and digit counting problems
- Linked list problems, including reversal, cycle detection, and arithmetic on linked list represented numbers
- Tree problems, including lowest common ancestor in a binary search tree
- Binary search and greedy problems, including maximizing minimum distance between chosen points
- Matrix and dynamic programming problems on some drives
For hands on practice, use:
SQL and DBMS Focus Areas
Real questions reported by candidates across technical rounds:
- Write the full syntax of a SELECT query.
- Explain the difference between GROUP BY and ORDER BY, and between GROUP BY and HAVING.
- Explain joins in DBMS, with examples.
- Explain ACID properties of a transaction.
- Explain different types of databases and DDL commands, with real life examples.
- Explain indexing, with real life examples of where it helps.
C, C++, and OOP Focus Areas
Real questions reported by candidates, and the area Tally Solutions probes most consistently:
- Swap two numbers without using a third variable.
- Print all prime numbers less than 50.
- Explain polymorphism and inheritance, and implement them in C++.
- Explain the virtual keyword, abstraction, and how to implement an abstract class.
- Explain constructors and destructors in C++ with examples.
- Explain the difference between stack and heap memory allocation.
- Explain runtime polymorphism with an example.
- Explain the difference between malloc and calloc.
- Explain the difference between an array and a linked list.
- Write the definition of the strcpy function from scratch.
- State the range of int, unsigned int, and byte data types.
- Explain the difference between function overloading and function overriding.
- Explain the life cycle of a C++ program, from source to execution.
- Explain the four pillars of OOP with real examples.
- Why does declaring an array like
arr[n]work in C when n is a runtime input rather than a compile time constant. - If whitespace is added inside a string, will
cinstill read it correctly, and why or why not.
Technical Interview: DSA and Systems
Additional real questions reported by candidates beyond the detailed problems below:
- Find the sum of squares of numbers from 1 to n.
- Check whether the sum of digits of a number is prime.
- Solve an "is subsequence" style problem, checking if one string's characters appear in order within another.
- Find the cube root of a number without using a built in function.
- Add 1 to a number represented as a linked list.
- Check whether a string has balanced parentheses.
- Detect a loop in a linked list, and if one exists, find the node where the loop begins.
- Reverse a string, then reverse it again without using an extra variable.
- Print all nodes of a binary tree without using recursion.
- Parse a string like
abc;55,1z,23$4and print only the integer values it contains, for example55, 1, 23, 4. - Print the kth node from the end of a linked list in a single pass.
- Find the first non-repeating character in a string in a single pass using hashing.
- Check if a number is a power of 2 in constant time using bit manipulation.
- Insert a new node between two given nodes in a linked list.
- Build a linked list that stays sorted as elements are inserted.
- Discuss segment trees if mentioned on your resume.
- Convert a number from one base to another.
- Find the last digit of 25 raised to the power 102.
- Explain what happens, step by step, when you type a URL into a browser.
- Explain the difference between TCP and UDP.
- Explain how a server can detect that a client has stopped sending data.
- Define what a data structure is and discuss its real world applications.
- Reverse a singly linked list in a single pass.
- Which data structure or structures would you use for searching, and why.
- Find the middle element of an array of positive numbers.
- Given a binary array, find the maximum size subarray where exactly half the elements are 0 and half are 1.
- Given a tree and a distance k, find all pairs of leaf nodes whose distance from each other is at most k.
The last three items above are reported consistently across multiple candidate review sites but could not be independently verified against a single primary source, treat them as a signal of likely topics rather than confirmed exact wording.
Puzzles
Tally Solutions interviews frequently include logic puzzles alongside technical questions. Reported puzzles include:
- Given 16 football teams in a knockout format, find the second weakest team using the minimum number of matches.
- Measure exactly 4 liters of water using only a 3 liter and a 5 liter bottle.
- A probability puzzle involving selecting colored balls from a bag.
- Given 8 identical looking balls and a balance scale, find the one heavier ball in the fewest weighings.
- Using each digit of 3388 exactly once, form the number 24 using arithmetic operations.
- A pattern based puzzle: given x and y, produce z where even inputs are summed, odd inputs are summed minus one, with a special case for 0 and 1.
- Determine whether two cuboids, or more generally two n dimensional surfaces, intersect.
- A rod breaking probability puzzle, find the probability that the resulting pieces can form a triangle.
- Find integers a, b, and c such that a factorial times b factorial equals a factorial plus b factorial plus c factorial.
- Compute the average salary across a group of people while keeping each individual's salary private.
- Cut a cake into 8 equal parts using only 3 straight cuts.
- Quick fire numeric proximity questions, for example given 4, 6, and 10, which is nearest to 6.
- Odd one out style reasoning questions.
- Simple comparative reasoning questions, for example if Ram is older than Shyam, who is older.
Tally Solutions Previous Year Coding Questions
Below is a list of Tally Solutions previous year coding questions commonly reported by candidates in the online assessment and technical interviews. Each question includes a problem statement, input and output format, and a sample explanation.
1. Count Occurrences of Digit 3 From 1 to N
Problem Statement: Given an integer n, count how many times the digit 3 appears in all numbers from 1 to n.
Input Format:
- An integer
n
Output Format:
- The total count of the digit 3 across all numbers from 1 to n
Example:
Input: n = 33
Output: 13
2. Triplets and Pairs Divisible by 3
Problem Statement: Given an array of positive integers, count the number of pairs and triplets whose sum is divisible by 3. A brute force approach is too slow, use hashing on remainders modulo 3.
Input Format:
- An integer array
arr
Output Format:
- The count of pairs and the count of triplets whose sum is divisible by 3
Example:
Input: arr = [3, 6, 7, 2, 9]
Output: Pairs: 4, Triplets: 3
3. Lowest Common Ancestor in a Binary Search Tree
Problem Statement: Given a binary search tree and two node values, find their lowest common ancestor.
Input Format:
- A binary search tree
root - Two node values
pandq
Output Format:
- The value of the lowest common ancestor node
Example:
Input: root = [6,2,8,0,4,7,9], p = 2, q = 8
Output: 6
4. Maximize the Minimum Distance Between Chosen Points
Problem Statement: Given an array of point positions on a line and an integer k, choose k of the points so that the minimum distance between any two chosen points is as large as possible. Return that maximum possible minimum distance.
Input Format:
- An integer array
positions - An integer
k
Output Format:
- The largest possible minimum distance between the k chosen points
Example:
Input: positions = [1, 2, 4, 8, 9], k = 3
Output: 3
5. Perfect Chain Check Using Sum of Divisors
Problem Statement: Given a number n, compute x as the sum of all divisors of n, then compute the sum of all divisors of x. Check whether this second sum equals the original number n.
Input Format:
- An integer
n
Output Format:
"Yes"if the chain returns to n, otherwise"No"
Example:
Input: n = 6
Output: Yes
Explanation: Divisors of 6 are 1, 2, 3, 6, summing to 12. Divisors of 12 are 1, 2, 3, 4, 6, 12, summing to 28, which does not equal 6, so in this case the answer is No. Candidates are expected to trace through the chain carefully rather than assume a shortcut.
6. Maximum Element At Least K Times Every Other Element
Problem Statement: Given an array and an integer k, check whether the maximum element of the array is at least k times greater than or equal to every other element in the array.
Input Format:
- An integer array
arr - An integer
k
Output Format:
"Yes"or"No"
Example:
Input: arr = [2, 4, 8, 3], k = 2
Output: Yes
7. Remove Minimum and Adjacent Elements Repeatedly
Problem Statement: Given an array, repeatedly find the minimum element, remove it along with its adjacent elements, and add the value of the removed minimum to a running total. Continue until the array is empty, then return the running total.
Input Format:
- An integer array
arr
Output Format:
- The final running total after the array is fully emptied
Example:
Input: arr = [5, 3, 8, 1, 9]
Output: 4
Explanation: One valid trace removes 1 with its neighbors 8 and 9, adding 1, then removes 3 with its neighbor 5, adding 3, for a total of 4.
8. Minimum Starting Score in a Matrix Path
Problem Statement: Given an n by m matrix of integers, starting at the top left cell and moving only right or down to reach the bottom right cell, find the minimum positive starting score needed so that the running sum never drops to zero or below at any point along the path.
Input Format:
- A 2D integer array
grid
Output Format:
- The minimum starting score required
Example:
Input: grid = [[-2,-3,3],[-5,-10,1],[10,30,-5]]
Output: 7
9. Reverse a Linked List in Blocks of K
Problem Statement: Given a linked list and an integer k, reverse the nodes of the list k at a time. If the number of remaining nodes is less than k, leave that final group as it is.
Input Format:
- A linked list
head - An integer
k
Output Format:
- The head of the modified linked list
Example:
Input: head = [1,2,3,4,5], k = 2
Output: [2,1,4,3,5]
10. Multiply Two Numbers Represented as Linked Lists
Problem Statement: Given two linked lists where each node represents a digit of a number, most significant digit first, compute the product of the two numbers and return it as a linked list in the same format.
Input Format:
- Two linked lists
l1andl2, each representing a non-negative integer
Output Format:
- A linked list representing the product
Example:
Input: l1 = [1,2] (12), l2 = [3] (3)
Output: [3,6] (36)
At Last
Tally Solutions interviews reward strong C and C++ fundamentals more than almost any other company on this list, so make sure you can write and reason about pointers, memory allocation, and OOP concepts fluently, not just recite definitions. Layer in linked list and array practice, brush up on basic DBMS and SQL, and be ready for a logic puzzle or two in nearly every round. Available reports do not show product or accounting domain questions such as GST or ledgers being asked in software engineering interviews, so focus your prep on core computer science rather than Tally the product itself.
Join the Telegram group for more resources and discussions.
HR Interview Tips
The HR round, sometimes combined with a final technical check, verifies communication, motivation, and genuine ownership of your projects. Common questions include:
- What is your greatest strength.
- What are two of your weaknesses, and what are you doing to improve them.
- Discuss your technical strengths and weaknesses.
- What is your biggest regret.
- Tell me about a time you had to learn a new skill quickly.
- Expect a deep dive into your resume projects, including questions designed to check whether you genuinely built what you claim rather than copied it.
- Design a data structure for a typical word processor, reported by more than one candidate as an unexpected design question inside the HR round rather than the technical rounds.
- Did you make any mistakes on the written test, and what were they, a reflective question some interviewers ask to see how self aware you are about your own coding round performance.
- For experienced or off campus hires, expect screening questions on your current tech stack, current compensation, and notice period.
Complete HR Interview Questions