S&PGlobal || Senior Software Engineer| | Interview Experience

s&pglobal logo
s&pglobal
Senior Software Engineer
May 28, 20253 reads

Summary

I interviewed for a Senior Software Engineer position at S&PGlobal and was rejected after answering a mix of coding, Java features, and system design questions.

Full Experience

  1. Coding Question-https://leetcode.com/problems/merge-k-sorted-lists/description/
  2. Java 8 new features
  3. Stream API - Difference between toList() and collect(Collectors.toList())
  4. Fail Fast and Fail Safe Iterator
  5. usual code based question on iterator- what happens if we try to use list.add and list.remove in for each loop. how to avoid it.
  6. Colletios.sort() - which sorting algoriothm is used here
  7. Concurrent HashMap - how it works
  8. Executor Framweork - which threadpool have you used- how many threads will you create for 1000 tasks in fixed threadpool.
  9. Completable Future
  10. Spring security - how to invalidate JWT token
  11. Builder Pattern
  12. Observer Pattern - comparison to kafka
  13. In memory Cache

Rejected.

Interview Questions (13)

Q1
Merge k Sorted Lists
Data Structures & AlgorithmsHard

Merge k sorted linked lists into one sorted list.

Q2
Java 8 New Features
Other

Discuss new features introduced in Java 8.

Q3
Stream API: toList() vs collect(Collectors.toList())
Other

Explain the difference between Stream.toList() and Stream.collect(Collectors.toList()) in Java's Stream API.

Q4
Fail Fast vs. Fail Safe Iterators
Other

Explain the concepts of Fail Fast and Fail Safe Iterators in Java.

Q5
Iterator Modification in For-Each Loop
Data Structures & Algorithms

Discuss what happens when list.add() or list.remove() are used inside a Java for-each loop and how to avoid such issues.

Q6
Collections.sort() Algorithm
Other

Identify which sorting algorithm is used internally by Collections.sort() in Java.

Q7
Concurrent HashMap Internals
Other

Explain the internal working mechanism of ConcurrentHashMap.

Q8
Executor Framework & Thread Pool Sizing
System Design

Discuss experience with the Java Executor Framework, specific thread pools used, and how to determine the number of threads for 1000 tasks in a fixed thread pool.

Q9
Completable Future
Other

Discuss CompletableFuture in Java for asynchronous programming.

Q10
Spring Security: JWT Token Invalidation
System Design

How to invalidate a JWT token using Spring Security.

Q11
Builder Pattern
Other

Explain the Builder Design Pattern.

Q12
Observer Pattern vs. Kafka
System Design

Explain the Observer Design Pattern and compare its principles to how Kafka works.

Q13
In-Memory Cache
System Design

Discuss concepts and implementation of an In-Memory Cache.

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!