IDS

IDS Let’s create next-gen digital experiences! πŸ“±β˜οΈ

Transform Your Ideas into Reality! πŸš€ Build high-performance iOS & Android apps, seamless Flutter solutions, secure API development, and scalable cloud services to power your business.

 # # πŸš€ Monorepo Explained Like You're Building a Real ProductOne of the most common interview questions for Senior Softw...
23/07/2026

# # πŸš€ Monorepo Explained Like You're Building a Real Product

One of the most common interview questions for Senior Software Engineers and Technical Project Managers is:

> **"What is a Monorepo, and why do companies use it?"**

Most people answer:

> "A monorepo stores multiple projects in one repository."

That's correct…

…but it doesn't explain **why companies like Google, Meta, Microsoft, Uber, Airbnb, and many startups prefer it.**

Here's a practical example.

Imagine you're building an enterprise application with:

πŸ“± React Native Mobile App
🌐 React Web Portal
βš™οΈ Node.js Backend APIs
πŸ€– AI Services
πŸ“¦ Shared UI Components
πŸ” Shared Authentication Library

# # # Without a Monorepo

Every project lives in a separate Git repository.

```
mobile-app
web-app
backend-api
admin-panel
shared-ui
shared-utils
```

Now imagine changing the authentication flow.

You need to:

β€’ Update multiple repositories
β€’ Publish shared libraries
β€’ Wait for version updates
β€’ Handle dependency mismatches
β€’ Maintain multiple CI/CD pipelines

This becomes difficult as the company grows.

---

# # With a Monorepo

Everything lives in one repository.

```
company/

apps/
mobile/
web/
admin/

services/
auth/
payment/
notification/

packages/
ui/
utils/
api-client/
```

A shared component changes once...

…and every application immediately uses the latest version.

No publishing.

No version mismatch.

No duplicated code.

---

# # Advantages

βœ… Shared code

βœ… Easier refactoring

βœ… One CI/CD pipeline

βœ… Better developer experience

βœ… Atomic commits

βœ… Easier dependency management

βœ… Consistent coding standards

βœ… Faster onboarding

---

# # Disadvantages

❌ Larger repository

❌ Initial setup is more complex

❌ Requires build tools like Nx, Turborepo or Bazel

❌ CI/CD must be optimized

❌ Poor configuration can slow builds

---

# # When should you use it?

βœ” Enterprise products

βœ” Multiple frontend applications

βœ” Shared component libraries

βœ” Shared APIs

βœ” AI platforms

βœ” Microservice ecosystems

---

# # When should you NOT use it?

❌ Small applications

❌ MVPs

❌ Single mobile app

❌ Small teams (2–3 developers)

---

# # # Popular Monorepo Tools

β€’ Turborepo

β€’ Nx

β€’ Bazel

β€’ Rush

β€’ pnpm Workspaces

β€’ Yarn Workspaces

---

The best architecture isn't the one with the most buzzwords.

It's the one that reduces complexity for your team.

What do you prefer?

**Monorepo or Multiple Repositories?**

πŸš€ **A 10-second delay exposed a hidden performance bottleneck in our React Native app.**This week, I solved one of the m...
21/07/2026

πŸš€ **A 10-second delay exposed a hidden performance bottleneck in our React Native app.**

This week, I solved one of the most challenging production issues I've worked on recently.

The issue looked random:

πŸ“· Users captured images successfully, but after the 2nd, 4th, or 6th image, the app would suddenly exit the camera flow and navigate back to the previous screen.

The strange part?

* βœ… It happened only on certain Android devices.
* βœ… Gallery images worked perfectly.
* βœ… iOS worked flawlessly.
* βœ… No JavaScript exception was thrown.

After digging through logs, device behavior, and hundreds of production crash reports, I noticed something unexpected.

When I introduced a **10-second delay between image captures**, the issue disappeared.

That was the clue.

# # # The real root cause

The camera wasn't crashing.

The image compression process was still running in the background while users were capturing the next image.

Multiple compression jobs were competing for CPU, memory, and temporary cache files, eventually causing unstable behavior on some Android devices.

# # # The solution

Instead of relying on delays, I redesigned the image-processing pipeline:

βœ… Introduced a compression queue so only one image is processed at a time.

βœ… Eliminated repetitive image generation during compression.

βœ… Deferred Base64 generation until upload instead of generating it immediately after capture.

βœ… Normalized file paths for Android and iOS.

βœ… Cleaned up temporary image files after successful Salesforce uploads.

βœ… Reduced unnecessary cache usage and background processing.

# # # The result

⚑ Faster image capture experience

⚑ More stable camera workflow

⚑ Lower memory and cache usage

⚑ Improved upload reliability

⚑ Better overall app performance

One important lesson from this experience:

**The root cause isn't always where the crash appears.** Sometimes the real issue is a background task competing for system resources, and solving that can dramatically improve the entire application's performance.

Have you ever spent days debugging an issue that turned out to have a completely unexpected root cause? I'd love to hear your story in the comments.

Address

Mumbai
400056

Alerts

Be the first to know and let us send you an email when IDS posts news and promotions. Your email address will not be used for any other purpose, and you can unsubscribe at any time.

Contact The Business

Send a message to IDS:

Shortcuts

Share