VMWare Interview Experience for Senior MTS
I got a chance to give the VMWare interview during Oct 2020. It was a totally different and mind-boggling experience. It was a Senior Developer Profile for which I had applied. I had applied through the Company’s website, career portal. Everything was very smooth. Recruiters were very friendly. I was informed that it would be a 3-hour back to back interviews,1 hour each on a different area of expertise. My interview lasted for about 3 hours 45 minutes.
Following is the list of questions I was asked, each round had a different interviewer :
I was given a Hackerrank login and a screen was shared for checking my coding skills.
First Round (More on Core Java):
- Given a list of words, arrange it in a way as if they are present in the dictionary in an alphabetic fashion and provide me the last second word present in the dictionary from these words. cat, bat, rat, king, queen, wise, long, zoom, VMware
- Design a parking lot for an IT park. What APIs will you expose? What design patterns will you use?
- Given a list of strings in a class. Define a getter in such a way that the clients of the class can’t modify the array, but you can modify it within the class. If we change it to an array of Strings then how would you do it?
- Which sorting algorithm will you apply in the above question and why? How will you iterate it compare without using API sort methods?
- What is a deep copy and what is a shallow copy? When and where is it used?
- What are microservices and why do we need them? What is the use case for a Microservice? What are the pros and cons of using them? When would you scale vertically and when would you scale horizontally?
- What is scalability and why is it required? What is the difference between High Availability and scalability?
- If a service, say a microservice, is deployed in 3 different nodes of a cluster, will they communicate with each other? If yes then how? Will it be a good design that they communicate, as it is the same service? Will, the DB copy be made/how many instances of DB will be there..
- What is concurrency ? What is the Use case? How do threads communicate? What are their different modes of running?
- What is synchronization? How is it achieved, with examples..
- How do we create a Thread…extends Thread, implements Runnable? Which is better and why?
- What is a Blocking Queue? How does it block a thread if full/empty?
- What are the concurrent collections? How do they achieve concurrency?
- Internal Working of Concurrent Hash Map? What is a Concurrent Modification Exception?
- What is the Streams API? What is it used for?
- Given a list of employees. I need to search them according to their first name/last name/age etc. But my search should be contained. Which data structures should be used? And how will I search?
- Reverse a Linked List
- Design a lock where there are two functions acquire() and release() and two threads have to use it. How will you write code for it?
- Design a URL shortening algorithm. I/P is a long URL with parameters of a User and you have to provide a short URL to the user in his email. When the short Url is clicked, it opens up the long URL with the respective parameters. How will you design this?
- What is Dependency Injection?
- What is Liskov Substitution Principle?
- What is MVC pattern? Why do we need it ?
Overall, it was a great experience.
My Personal Notes arrow_drop_up
Please Login to comment...