- https://www.spoj.com/problems/BYTESM2/ – (Variant of this problem with blocked grid and path was from bottom left to top right).
1. https://leetcode.com/problems/trapping-rain-water/ (Trapping the rainwater).
2. A variant of Knapsack (0-1 )- https://www.geeksforgeeks.org/0-1-knapsack-problem-dp-10/ (She wanted the DP solution only. She was not accepting the recursive solution)
Telephonic Round -(45 mins)
1. As I was using NodeJS he asked different questions about – Event loop, Execution stack, Promises, Closure, How request is handled in NodeJs
2. Difference between ArrayList and Array, Difference between hashMap and TreeMap which to use when
3. Question on application scalability, availability, and consistency.
. Telephonic Round -(60 mins)
- Explain ACID properties with example.
2. Some join queries on employee and company table:-
2.1. Find the sum of salary given by each company
2.2. Avg salary for each company. few more such queries.
3. How will you make a class thread-safe? There are two functions read and update and all call for update function updates the value then call to read function to display the value that is updated and how will you put the lock in this scenario. Explain it and assume these functions are present inside your application.
4. How will you make a function(program) which search word in a file of large size (in GBs)? Hint- Chunk the file and run the search on each chunk on different cores of CPU <— this was the answer he was looking for and was satisfied with this answer.
5. As I have used AWS technologies he asked me a few questions related to that in a causal way.
Question-related to my project:-
1. Explain file upload microservice? Advantage and disadvantage of microservice (horizontal Scaling disadvantage)?
2. What change do you want to make in your microservice(file upload)?
3. Design autocorrect feature of google keyboard? – (Trie + Ranking service)
4. Given an N sided dice determine the number of throws required to get at least each face once?
5. How to perform error handling in your application?
6. Draw a design of an application which can handle up to million requests?
1. Given a 2 tree find they are mirror images of each other?
2. Given a LinkedList 1->2->3->4->5->6->7 . ….. transform it to 3->2->1->6->5->4->7 . so every third get to the first place and every if the size of the last triplet is less than 3 don’t do anything. (Write recursive and iterative code).
- Giving an array which represents the path if the value is 0 means water if 1 that means it is a leaf(or stone) eg:- [1, 0, 0, 1, 0, 1, 1, 1, 0, 0] and given a jump array which represents the length of jump which frog can make eg – [1, 3, 4] find the min number jump required to reach opposite side of river if not possible print -1.
- Stock problem with different variants with 1 buy, 2 buys, ultimate buy, with a cooling period?- https://kennyzhuang.gitbooks.io/algorithms-collection/content/buy_and_sell_stock_with_cooldown.html
- Design a basic stock exchange (with BUY/SELL, Stop loss, limit loss feature on both BUY and SELL order)?
- This was related to my work – Explain interprocess communication? Explain locking on Redis cluster (Redlock algorithm) is there any other alternative? Explain how cron job run internally in Unix system?
1. How do you test your code in current company frameworks that you use?
2. How to test a high traffic load on a system? (Sosta Testing and SonarQube).
3. Given an export feature in your web application which converts given pdf to word and word to pdf etc how will you write route controller service model layer for this feature? and the dimension on which you will test this feature. (eg: if data is corrupt, time is taken to convert the file, security, etc).
4. Design a sudoku validator which is the most optimized way. – https://www.geeksforgeeks.org/check-if-given-sudoku-board-configuration-is-valid-or-not/
- Explain the deployment process on EBS/EBC? Difference between AWS Lambda and AWS EC2?
- Given an array of string and with string present in sorted order but can have any number of empty string between eg- [“abc”, “”, “”, “cdf”, “”, ”dfh”, “”, “”, “”, “”, ] find if a given string is present in the array or not. O(log(n))
Assume that blank strings are few in number in comparison to non-empty strings?
- Difference between TreeMap and HashMap?(This time told him I’m NodeJS developer then he skipped this question).
- Why Goldman Sachs? Do you know what does Goldman Sachs does as a firm?
- Why should we hire you? Your weakness and strength etc……