detect technologies logo

Detect Technologies Interviews

2 experiences70 reads14 questions50% success rate
Detect technologies | Software Engineer | Chennai | Sept 2024 | Offer
detect technologies logo
Detect Technologies
sde-2chennai1.16 yearsOffer
September 12, 202436 reads

Summary

I recently interviewed at Detect Technologies for an SDE-2 role, where I successfully navigated three rounds focusing on DSA, Flutter deep dive, and High-Level System Design for Google Photos. I received and initially accepted the offer, though I later resigned after two weeks.

Full Experience

I recently had an interview experience at Detect Technologies for an SDE-2 position. The entire process consisted of three rounds.

Round 1: DSA + Project Discussion

The first round focused on data structures and algorithms. The interviewer asked me to solve the Merge Intervals problem. I explained my approach and implemented an efficient solution. Following that, I was given another problem: to write code to flatten a list. After the coding part, the interviewer asked basic questions about the projects listed on my resume. I walked them through the key highlights of my recent work, discussing the technologies I used and the challenges I faced.

Round 2: Flutter Deep Dive + Work Experience

This round was more focused on my work experience and an in-depth exploration of my Flutter knowledge. The questions revolved around several specific topics:

  • What is lazy loading, and how have you used it in your projects?
  • How do you use the null-check operator in Flutter?
  • Can you explain the widget lifecycle in Flutter?
  • How does the widget tree work, and how do you optimize it?
  • What is the Flutter inspector, and how do you use it?
  • What state management techniques do you use, and why did you choose BLoC?
  • Can you explain tree shaking and how it benefits a Flutter app?

The interviewer also touched on various best practices for Flutter development and cross-examined my understanding with multiple follow-up questions.

Round 3: High-Level Design (HLD)

In the final round, I was asked to design the High-Level Architecture of Google Photos. Key points of discussion included:

  • How I would design the high-level architecture of Google Photos.
  • How I would handle the upload mechanism for photos.
  • What I would do if there was a network issue during the upload, and how I would ensure the upload resumes rather than starting over.
  • How I would track the upload status (e.g., uploaded, in-progress, failed).
  • How I would keep all devices updated when a photo is uploaded on one device.
  • How I would ensure cross-device consistency for photo updates.

There were several follow-up questions around scalability, fault tolerance, and ensuring a smooth user experience, all of which I handled by breaking down the system into smaller components and explaining them in detail.

Conclusion:

I successfully received an SDE-2 offer, which I gladly accepted. However, I later received an offer from Myntra, and after working at Detect for two weeks, I made the difficult decision to resign. Unfortunately, I faced some consequences for that decision.

Interview Questions (10)

Q1
Merge Intervals
Data Structures & AlgorithmsMedium

Given a collection of intervals, merge all overlapping intervals.

Q2
Flatten a List
Data Structures & Algorithms

Write a code to flatten a list (e.g., convert a nested list like [1, [2, 3], [4, [5]]] into a flat list [1, 2, 3, 4, 5]).

Q3
Lazy Loading in Flutter
Other

What is lazy loading, and how have you used it in your projects?

Q4
Null-Check Operator in Flutter
Other

How do you use the null-check operator in Flutter?

Q5
Flutter Widget Lifecycle
Other

Can you explain the widget lifecycle in Flutter?

Q6
Flutter Widget Tree Optimization
Other

How does the widget tree work, and how do you optimize it?

Q7
Flutter Inspector Usage
Other

What is the Flutter inspector, and how do you use it?

Q8
Flutter State Management (BLoC)
Other

What state management techniques do you use, and why did you choose BLoC?

Q9
Tree Shaking in Flutter
Other

Can you explain tree shaking and how it benefits a Flutter app?

Q10
High-Level Design: Google Photos
System DesignHard
  • How would you design the high-level architecture of Google Photos?
  • How would you handle the upload mechanism for photos?
  • What would you do if there is a network issue during the upload? How would you ensure the upload resumes rather than starts over?
  • How would you track the upload status (e.g., uploaded, in-progress, failed)?
  • How would you keep all devices updated when a photo is uploaded on one device?
  • How would you ensure cross-device consistency for photo updates?

The discussion also included several follow-up questions around scalability, fault tolerance, and ensuring a smooth user experience.

Detect Technologies
detect technologies logo
Detect Technologies
September 3, 202434 reads

Summary

I recently interviewed with Detect Technologies across three rounds, covering technical discussions, advanced Flutter concepts, and system design. The experience involved solving a LeetCode problem and designing a system similar to Google Photos.

Full Experience

I went through a three-round interview process at Detect Technologies.

The first round was a technical discussion, starting with a brief introduction and then moving into an in-depth discussion about my projects. Following that, the interviewer presented a data structures and algorithms problem to solve.

The second round primarily focused on my previous projects. The interviewer also tested my knowledge of advanced Flutter concepts, including tree shaking, lazy loading, state management, widget life cycle, widget inspector, keys, builders, routes, streams, and futures. This round was highly interactive, with a lot of back-and-forth on how I applied these concepts in real-world scenarios.

The final round was a High-Level Design (HLD) discussion where I was asked to design a system similar to Google Photos. This round really tested my ability to think critically and design scalable systems.

Interview Questions (4)

Q1
Merge Intervals
Data Structures & Algorithms

I was given the Merge Intervals problem to solve during the technical discussion round.

Q2
Google Photos HLD: Photo State Management
System Design

As part of the Google Photos HLD, I was asked: How would you manage the state of a photo (e.g., whether it’s being uploaded or fully uploaded)?

Q3
Google Photos HLD: Large File Uploads with Resumption
System Design

During the HLD discussion, the interviewer asked: How would you handle large file uploads, ensuring that if a failure occurs, the upload can resume from where it left off?

Q4
Google Photos HLD: Cross-Device Data Synchronization
System Design

Another question posed in the HLD round was: How would you sync the same data across all devices where the user’s Gmail ID is logged in?

Have a Detect Technologies Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Detect Technologies.