Zoho | Off-Campus | August 3rd, 2024 | On-Site | 2024 Batch

zoho corporation logo
zoho corporation
freshertenkasi, tamil nadu, indRejected
August 16, 20245 reads

Summary

I interviewed at Zoho for a fresher role in Tenkasi, which involved multiple challenging rounds including MCQs, coding, and a machine coding assignment. Despite implementing significant parts, I was ultimately rejected after the machine coding round due to an error in the tax calculation logic.

Full Experience

I recently interviewed at Zoho for a fresher position in Tenkasi, Tamil Nadu, India. The application form was circulated among college students, and the eligibility included batches from 2020 to 2024, which meant a diverse group of applicants, including many experienced professionals from service-based companies, leading to tough competition.

Over 2000 people appeared for the interview, waiting in the parking lot. I learned from security that the passing mark for the first round was based on the overall scores of all applicants, specifically 10.5 marks and above.

Round 1: MCQs

This round, lasting 75 minutes, consisted of 10 Aptitude questions and 10 C Program Output questions. The aptitude section ranged from medium to difficult, with only one easy question. There was a slight issue with timing, as the timer started for the people in front, causing those at the back to receive papers 5-10 minutes late. Fortunately, the test was conducted in batches, with around 300 people per floor, across two floors and three batches (9:00 AM, 12:30 PM, 3:30 PM).

After a good and tasty lunch, which was only provided for those who passed the first round, we proceeded to Round 2.

Round 2: Coding

This round, conducted in batches, had different questions for each batch: either two medium questions or four easy questions. The official time allocated was 1 hour, though some people received extra time. This round started around 4 PM and ended by 6 PM, leaving me mentally drained.

Batch 1 Questions:

  • Question 1: Write a program to find the second largest element in an array.
  • Question 2: (Details from image unclear, but part of the batch).

Batch 2 Questions:

  • Question 1: Best Time to Buy and Sell Stock
  • Question 2: Write a program to find the union of two sorted arrays.
  • Question 3: Find the sum of all elements in an array.
  • Question 4: Write a program to check if a string is a palindrome.

To qualify for the next round, candidates needed to complete more than one question in Batch 1 or all questions in Batch 2. By the time this round finished, it was dark, and many parents were waiting for their children. It was disheartening to see the failed students and their parents comforting them.

Round 3 (Renamed L2 Advanced): Coding

This round was held the next day and was about 2+ hours long. It involved two challenging problems:

  • Sudoku: I was given an N x N grid and all necessary values to solve a Sudoku puzzle. Feeding the input for a 9x9 test case alone could take hours.
  • MaximumFinder: Given an integer list and an integer N, I had to find N elements in the list that yielded the maximum sum, with specific constraints:
    • If an even element (other than 2) was included in the sum, the immediate next element also had to be included.
    • If a prime number (other than 1) was included, the immediate next element had to be skipped.
    • The combination forming the maximum sum had to be printed while maintaining insertion order.

Completing either one of these problems would qualify me for the next round. Invigilators were serious; they checked code implementation, and performed undo operations to verify against plagiarism. Getting caught cheating meant being blacklisted for life. They tested my code rigorously with 10+ test cases.

Actual Round 3 (Renamed L3): Machine Coding - Tax Calculator Console App

By this stage, there were only 2-3 other freshers and 4-5 experienced candidates left. I spoke with some of the veterans who had attended many Zoho interviews, even in other states, aiming to transition from service-based to product-based companies.

This round was difficult. Initially, the invigilators were unclear on tax calculation rules, which caused some confusion. After some time, they clarified the requirements and extended the round, which lasted from 2:15 PM to 5:30 PM. Part 1 involved implementing an Admin dashboard, a Tax Payer dashboard, and storing tax slabs for different income brackets. The required functionalities included:

  • Admin functionalities
  • Tax Payer functionalities
  • A Main Menu
  • Registering new users/admins
  • Creating/updating existing tax slabs
  • Checking tax calculation for users
  • All details (credentials, tax slabs) had to be stored in non-volatile storage to persist between program runs.

The system was tested rigorously with various invalid inputs (e.g., string instead of income amount), which all needed to be handled gracefully. They didn't check for programming practices or design patterns, only for correct output.

I implemented major features like password encryption using the hashcode of the TaxPayer object and a singleton pattern for Tax Slabs to maintain a single instance for both tax payer and admin. However, I got nervous and messed up the tax calculation part with unwanted calculations. An invigilator reviewed my code, pointed out the missing tax calculation, and asked me to leave.

I later learned that there were two more parts to implement, possibly involving insurance-related features.

Rounds 4 & 5: Technical and HR

I did not proceed to these rounds and do not have information about them.

I would suggest that there should be an even playground, by calling anyone batch. It seems they were hiring for Zoho Books product, and rounds will be very tough based on the teams. And finally came to know that they selected 1 person, don't know who is that "Chosen One". Many parents were waiting for their children to come with good news, but it was hard to see their face filled with regrets. They should have at least filtered people based on Online Assessment, which they won't because they hate to use third party products.

That's all I can remember. It took me two weeks to recover from the depression. I hope this helps others. I will definitely give it another try; I am not even close to giving up. The quote that helped me get back to normal life is: "People’s lives don’t end when they die, it ends when they lose faith."

Interview Questions (8)

Q1
Find Second Largest Element in Array
Data Structures & AlgorithmsEasy

Write a program to find the second largest element in a given array.

Q2
Best Time to Buy and Sell Stock
Data Structures & AlgorithmsEasy

You are given an array prices where prices[i] is the price of a given stock on the ith day. You want to maximize your profit by choosing a single day to buy one stock and choosing a different day in the future to sell that stock. Return the maximum profit you can achieve from this transaction. If you cannot achieve any profit, return 0.

Q3
Find Union of Two Sorted Arrays
Data Structures & AlgorithmsEasy

Write a program to find the union of two sorted arrays.

Q4
Sum of All Elements in an Array
Data Structures & AlgorithmsEasy

Find the sum of all elements in a given array.

Q5
Check if String is Palindrome
Data Structures & AlgorithmsEasy

Write a program to check if a given string is a palindrome.

Q6
Sudoku Solver
Data Structures & AlgorithmsHard

Implement a program to solve an N x N Sudoku puzzle. The program will be provided with the size N and all necessary initial values for the grid.

Q7
Maximum Sum with Custom Constraints
Data Structures & AlgorithmsMedium

Given an integer list input and an integer N, find N elements in the list that make the maximum sum, with the following constraints:

  • If you consider an even element in the sum (other than 2), you should include the immediate next element in the sum.
  • If you consider a prime number (other than 1), you should skip the next element.
  • You should print the combination that makes the maximum sum while maintaining insertion order.

Q8
Tax Calculator Console Application
System DesignHard

Implement a console application with an Admin dashboard and a Tax Payer dashboard. Functionalities required include: Admin (register new user/admin, create/update tax slabs), Tax Payer (check tax calculation for user), Main Menu. All details (credentials, tax slabs) must be stored in non-volatile storage to persist between program runs. The application should handle various invalid inputs robustly. Part 1 involved implementing the Admin dashboard, Tax Payer dashboard, and tax slab storage.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!