Tripjack SDE-1 Interview Experience
Summary
I interviewed for an SDE-1 role at Tripjack, completing three technical rounds covering machine coding, DSA, and a technical interview with various system design and concept questions.
Full Experience
Tripjack SDE-1 Interview Experience
Company: Tripjack Role: SDE-1 Location: Barakhamba, Delhi Experience: 1 Year Interview Mode: In-person Compensation: 15lpa - 25lpa
Technical Round 1 – Machine Coding
Duration: 50 Minutes
- LeetCode 45 – Jump Game II
- LeetCode 6 – Zigzag Conversion
Technical Round 2 – DSA
Duration: 30 Minutes
- LeetCode 200 – Number of Islands
Technical Round 3 – Technical Interview
Duration: 1 Hour
- Introduce yourself.
- Explain JWT.
- Explain Java 8 features.
- What is indexing?
- What is a clustered index and a non-clustered index?
- What is the
synchronizedkeyword and why is it used? - What is HTTP/2?
- Implement a Singleton class.
- Optimize the Singleton implementation using synchronized and lazy loading.
- Further optimize it using inner/block-level synchronization.
- Explain the Bill Pugh Singleton method.
- Why is Kafka used?
- How can you make sure that the same keys go to the same Kafka partition?
- Explain multithreading concepts.
- Explain the TCP three-way handshake.
- Explain the working of ConcurrentHashMap.
- What are the types of locks?
- What is the difference between optimistic and pessimistic locking?
- What is GraphQL?
- Explain your project architecture, particularly the payment gateway project.
- Explain the working of APIs.
- Explain design patterns.
Interview Questions (25)
Jump Game II
LeetCode problem 45: Given an array of non‑negative integers where each element represents your maximum jump length at that position, determine the minimum number of jumps required to reach the last index.
Zigzag Conversion
LeetCode problem 6: Convert a given string to a zigzag pattern on a given number of rows and then read line by line.
Number of Islands
LeetCode problem 200: Given a 2D grid of '1's (land) and '0's (water), count the number of distinct islands where an island is formed by horizontally or vertically adjacent lands.
Introduce yourself
Tell the interviewer about your background, experience and key strengths.
Explain JWT
Provide an explanation of JSON Web Token, its structure, usage, and typical workflow.
Explain Java 8 features
Discuss major features introduced in Java 8 such as lambda expressions, streams, default methods, and Optional.
What is indexing
Explain the concept of indexing in databases and its purpose for speeding up data retrieval.
Clustered vs non‑clustered index
Define clustered and non‑clustered indexes, their differences, and when each should be used.
What is the synchronized keyword
Describe the purpose of the synchronized keyword in Java and how it provides mutual exclusion.
What is HTTP/2
Explain the main improvements of HTTP/2 over HTTP/1.1, such as multiplexing, header compression, and server push.
Implement a Singleton class
Write a Java class that follows the Singleton design pattern, ensuring only one instance can be created.
Optimize Singleton with synchronized and lazy loading
Improve the Singleton implementation by adding synchronized lazy initialization to ensure thread‑safety.
Further optimize Singleton with inner/block‑level synchronization
Refactor the Singleton using inner static holder class or double‑checked locking for better performance.
Explain Bill Pugh Singleton method
Describe the Bill Pugh approach for implementing a Singleton using a static inner helper class.
Why is Kafka used
Explain the reasons for using Apache Kafka such as high throughput, fault tolerance, and pub‑sub messaging.
Ensuring same keys go to same Kafka partition
Describe how Kafka’s partitioner uses the message key's hash to route records with the same key to the same partition.
Explain multithreading concepts
Cover basics of multithreading in Java including thread lifecycle, runnable vs callable, and thread pools.
Explain TCP three‑way handshake
Detail the SYN, SYN‑ACK, ACK sequence used to establish a TCP connection.
Explain ConcurrentHashMap working
Discuss the internal structure of Java’s ConcurrentHashMap, segment locking and lock‑striping mechanisms.
Types of locks
List and briefly describe different lock types such as optimistic, pessimistic, read/write, and reentrant locks.
Optimistic vs pessimistic locking
Compare optimistic and pessimistic locking strategies, their use‑cases and trade‑offs.
What is GraphQL
Provide an overview of GraphQL, its query language, type system, and advantages over REST.
Explain project architecture (payment gateway)
Describe the overall architecture of my payment gateway project, including services, databases, and communication patterns.
Explain working of APIs
Explain how APIs function, covering request/response flow, status codes, authentication, and versioning.
Explain design patterns
Discuss common software design patterns such as Singleton, Factory, Observer, and Strategy, and their typical use‑cases.