My Tekion SDE-1 (Backend) Interview Experience
Interviewing at Tekion for the SDE-1 (Backend) position was a memorable learning journey. The overall interview process gave me valuable insights into how Tekion evaluates candidates both technically and behaviorally.
In this blog, I will walk you through the entire interview process, including question types, coding problems, design discussions and key preparation tips for future candidates. Here, I have also included all the interview questions that were asked during my interviews.
Round 1: Online Assessment (Coding)
- Difficulty: Medium
- Duration: 60 minutes
- Mode: Remote
The process began with an online assessment consisting of three algorithmic problems designed to test problem-solving skills and data structure fundamentals.
Problem 1: Minimum Cost Path in a Grid
- Type: Dynamic Programming
Find the minimum cost to move from the top-left to the bottom-right corner of a grid, navigating around obstacles. You could only move right or down and each cell had an associated cost.
My Approach:
- I implemented a DP table to store the minimum cost at each cell, using the formula:
dp[i][j] = cost[i][j] + min(dp[i-1][j], dp[i][j-1])
- This ensured an optimal solution with O(n²) complexity.
Problem 2: Length of the Longest Arithmetic Progression
- Type: Dynamic Programming + Hash Map
Given an array, find the length of the longest arithmetic progression (AP) that can be formed from its elements.
My Approach:
- I sorted the array and used a hash map of differences to keep track of AP lengths dynamically.
- For every pair (i, j), I calculated the difference diff = arr[j] - arr[i] and updated dp[j][diff] = dp[i][diff] + 1.
Problem 3: Minimum Number of Stops to Reach Target
- Type: Greedy Algorithm
You are given a target distance and a list of fuel stations. Find the minimum number of stops required to reach the target, assuming you start with a certain amount of fuel.
My Approach:
- I used a max-heap to keep track of the best refueling options as I moved forward.
- While my solution worked, I felt there was room for space optimization.
Result: I managed to solve all three problems successfully, though I noted that my third solution could have been optimized further.
Round 2: DSA + Logical Thinking
- Difficulty: Medium
- Duration: 60 minutes
- Mode: Remote
This round was focused entirely on Data Structures and Algorithms. The interviewer tested my analytical reasoning and efficiency in solving classical DSA problems.
Problem 1: 8-Ball Weighing Puzzle
Out of 8 identical-looking balls, one is heavier. You can use a balance scale only 3 times to find the heavier ball.
My Approach:
- I applied a divide-and-conquer strategy, dividing the balls into three groups to minimize comparisons.
- After each weighing, I reduced the search space by one-third until the heavier ball was identified.
Problem 2: Product of Array Except Self
Given an array nums, return an array where each element is the product of all other elements except itself without using division.
My Approach:
-
I computed two auxiliary arrays:
-
Prefix product: product of all elements before the current index.
-
Suffix product: product of all elements after the current index.
-
-
Then combined them to get the final answer in O(n) time and O(1) extra space.
Result: The discussion went smoothly, the interviewer appreciated my step-by-step explanation and dry runs.
Round 3: Low-Level Design (LLD)
- Difficulty: Medium
- Duration: 60 minutes
- Mode: Remote
This round tested my object-oriented design skills, Java fundamentals and ability to design scalable systems.
Discussion Topics:
-
Past project architecture : design decisions, scalability and patterns used.
-
Java + Mockito: detailed discussion on mocking, dependency injection and unit testing using TDD.
Design Problem: Elevator System
Design an elevator system for a multi-floor building that efficiently handles multiple requests.
Key Considerations:
-
Elevator scheduling (up/down requests)
-
Prioritization logic
-
Handling multiple elevators
Modular class design for extensibility
I designed the system using OOP principles, defining classes like Elevator, Request and Scheduler. Focused on clean modular design, thread-safe request handling and optimized scheduling algorithms. The interviewer appreciated my detailed approach and design clarity.
Round 4: Hiring Manager (HM) Discussion
- Difficulty: Medium
- Duration: 60 minutes
- Mode: Remote
This round combined technical and behavioral evaluation. The hiring manager assessed not only my technical depth but also my problem-solving attitude and team communication style.
Technical Topics:
Java Concurrency: Discussion around threads, synchronization and common pitfalls like race conditions and deadlocks. I explained how I used synchronization blocks and thread-safe collections in past projects.
Behavioral Questions:
-
Tell me about a time when you disagreed with your team on a technical decision.
-
How do you manage tight deadlines while maintaining code quality?
-
What's your approach when handling production issues under pressure?
These questions aimed to evaluate my collaboration, communication and decision-making abilities in real-world situations.
Preparation Tips for Future Candidates
If you're preparing for Tekion's SDE-1 (Backend) interview or similar roles, here's what I'd recommend:
-
Master DSA fundamentals : Arrays, Linked Lists, Trees and Dynamic Programming.
-
Focus on Java concepts : Concurrency, Collections, OOP principles and Exception handling.
-
Practice System Design : Start with Elevator System, Cache Systems and Request Schedulers.
-
Work on communication : Clear explanation and structured thinking go a long way.
-
Mock interviews : Practice with peers or mentors to refine your articulation and timing.
