Zilingo Interview Experience – July 2019, Bangalore

Zilingo is a fast-growing startup. They have operations in South East Asian Countries like Singapore, Thailand, Indonesia, etc and their Tech office is in Bangalore. I had applied on their careers page.

 

First Round – pen paper-based coding 1+ hour

I was given a question paper with 5 coding problems on it. I had to write the solution with code on paper. 

 



Questions: [I did first 4 out of 5]

  1. Write a program that reverses order of the words in a string. For example your function should transform the string “Do or do not, there is no try.” to the string “try. no is there not, do or Do”

Complexity: O(1) space and O(n) time

      2)  Print all the nodes at k distance from the target node in a binary tree 

Complexity: O(1) space and O(n) time 

Or 

Print the path common to the two paths from the root to the two given nodes.

      3) How would you design a stack which, in addition to  push and pop, also has a 

Function min which returns the minimum element? Push, pop and min should 



all operate in O(1) time.

      4) Write a method that returns all subsets of a set.

Or

Given an input string, find all combinations of numbers that can be formed using 

digits in the same order.

Input: 123

Output: [1  2  3], [1   23], [ 12    3], [ 123]

      5)  Write a thread-safe implementation of Singleton

Second – Round – Discussion over previous pen-paper coding 40 Minutes

In this round interviewer simply discussed with me the solution I have written on the paper, and asked me to walk through all the solutions and code that I have written.



 

Third – Round – HR Talk – 20 Minutes

This round was supposed to happen at last but as the interviewer was busy taking other interviews this round happened first. In this round interviewer simply told me about the vision of the company and work culture of the company and asked why do I want to leave my present organization.

 

Fourth – Round  – Technical Round with VP Engineering – 100+ Minutes

In this round the interviewer asked me a lot and a lot of questions, most of them were related to concepts they teach you in college, and the interview went very long.

 

Questions / Discussions – 

  • Kind of work I am doing in present company.
  • Do we store events in memory or in database when working with kafka
  • How does a message queues work in general / what is the use case of kafka
  • How is a number (let’s say -5) stored in a computer, How does computer operate with basic operations like subtraction/addition with its notation of storing numbers. Hint – 2’s complement
  • Have you worked on socket programming?  
  • Why is static keyword used? What are meanings of public, static, void while calling the main function in java? Can we remove static keyword infront of main()

Difference b/w static function and non static function.

When we run a Java program who calls the main method and how is it called?



  • Threads and Processes
  • When a process is created using fork() how does computer differentiate if it’s parent process or child process while running . Difference b/w kill and kill -9
  • Do you remember scheduling algorithms you had studied in college? Which

Algorithms allow pre-emption, Which scheduling algorithm provides maximum throughput?

  • Is it possible to change IP from the request object in an HTTP Request?

Is it possible to change the user agent from the request object in an HTTP Request?

Discussion like how HTTP Request goes over a network.

  • How does routing happen in a network?
  • What are Class A, Class B, and Class C IP? What is broadcasting IP for a network? What will be the range of the IPs for a subnet?
  • What is event loop in javascript? What are closure in javascript
  • What does setTimeout() and setInterval() return in javascript? 
  • Write a class in javascript using setInterval() and setTimeout(), such that you will be given three things an initial Delay, a Time Interval and a function(myFunction ), Your class should have two functions startTask() and stopTask(). If you invoke startTask() then after an initial Delay your myFunction() function should start executing and myFunction function should execute after every Time Interval (provided).

Stop() function should stop this process of execution.

Discussion over this keyword in JavaScript. Closure in JavaScript.

 

Write your Interview Experience or mail it to contribute@geeksforgeeks.org

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.