Walmart || Software Engineer III || Rejected
Summary
I interviewed for a Software Engineer III role at Walmart, which consisted of two rounds: a coding round and an LLD/Java technical round. Although I performed well in the coding questions, I received a rejection, likely due to my performance in the second round where many specific Java and system-level questions were asked instead of LLD.
Full Experience
I recently appeared for the Software Engineer III role at Walmart. I have over 3 years of experience at a product-based MNC. The interview process involved two one-hour rounds.
Coding Round: This round began with introductions and project discussions. The interviewer then asked three easy LeetCode coding questions:
- Maximum Average Subarray I
- Odd Even Linked List
- Binary Tree Right Side View I was able to provide an optimized solution for all of them, starting with a brute-force approach. This round went quite well.
LLD and Java Round: This round also started with introductions and a discussion about my projects. Following that, I was asked one coding question:
- 3Sum I managed to write an optimized solution for this as well, after presenting a brute-force one. After the coding question, the interviewer delved into several Java and technical questions:
- Kafka Pros & Cons and Packet Size: What are the advantages and disadvantages of Kafka? What is the Kafka packet size limit?
- JDBC vs. Hibernate: Compare JDBC and Hibernate. I couldn't elaborate much here as I've primarily used JPA or Hibernate in my projects, not JDBC directly.
- Checked vs. Unchecked Exceptions: Explain the difference between checked and unchecked exceptions in Java.
- Sending Large Data to Client (Non-SFTP): Apart from SFTP, what are other methods to send large data to a client?
- Detecting File Corruption During Transfer: If a few bits get corrupted while sending a file to a client, how can you identify them? I suggested using a file checksum.
- Java Version Improvements (8 to 11 to 17): Discuss the key improvements and features introduced from Java 8 to Java 11, and then to Java 17.
- Internal Working of HashMap: Explain the internal working mechanism of a HashMap in Java.
- JVM Memory Model: Explain the Java Virtual Machine (JVM) memory model.
- Garbage Collection & Object Eligibility: Describe Java's Garbage Collection process and the ways to make an object eligible for garbage collection.
- Garbage Collection Types & Use Cases: What are the different types of Garbage Collectors in Java, and what are their respective use cases?
- Major and Minor GCs in G1 Garbage Collector: Explain the concepts of major and minor garbage collections within the G1 Garbage Collector. I knew G1 GC and its use cases but was not aware of major and minor in G1 GC. I feel that's quite a minor detail unless one needs to know these specifics.
- Project Deadlock Scenario: Describe any situation where you faced a deadlock in a project. I couldn't recall any such scenario at the moment.
Interestingly, there were no Low-Level Design (LLD) questions, which I had prepared for. I managed to answer about 80% of the questions. The remaining 20% felt like very minor details or scenario-based questions, such as the Kafka packet size limit, major/minor G1 GC, or specific deadlock situations I'd encountered.
I received a rejection email at the end of the day. I requested feedback, and the recruiter mentioned she would share detailed feedback in a couple of days, but it never arrived. My guess is that my performance in the second round wasn't satisfactory for them.
Interview Questions (16)
Given the head of a singly linked list, group all the nodes with odd indices together followed by the nodes with even indices, and return the reordered list. The first node is considered odd, and the second node is even, and so on. Note that the relative order inside both the odd and even groups should remain as it was in the input.
What are the advantages and disadvantages of Kafka? What is the Kafka packet size limit?
Compare JDBC and Hibernate.
Explain the difference between checked and unchecked exceptions in Java.
Apart from SFTP, what are other methods to send large data to a client?
If a few bits get corrupted while sending a file to a client, how can you identify them?
Discuss the key improvements and features introduced from Java 8 to Java 11, and then to Java 17.
Explain the internal working mechanism of a HashMap in Java.
Explain the Java Virtual Machine (JVM) memory model.
Describe Java's Garbage Collection process and the ways to make an object eligible for garbage collection.
What are the different types of Garbage Collectors in Java, and what are their respective use cases?
Explain the concepts of major and minor garbage collections within the G1 Garbage Collector.
Describe any situation where you faced a deadlock in a project.