

Technical Details
Staff Engineer / Mobile Tech Lead
8 developers (4 iOS, 4 Android)
Swift, SwiftUI, Combine
Kotlin, Jetpack Compose, Coroutines
MVVM, Clean Architecture
XCTest, JUnit, Espresso
Rebuilding NinjaOne's Mobile Apps for the Modern Era
Modernizing iOS and Android apps from legacy codebases.
NinjaOne has emerged as one of the fastest-growing companies in IT management, surpassing $500 million in annual recurring revenue in January 2026. The Austin-based company achieved a $5 billion valuation after raising $500 million in Series C extensions in February 2025, led by Iconiq Growth and CapitalG (Alphabet's venture capital arm). NinjaOne provides unified IT operations software that enables IT teams to manage, monitor, and support all their endpoints—from servers to laptops to mobile devices—through a single pane of glass.
About NinjaOne
Founded in 2013 by Sal Sferlazza and Chris Matarese, NinjaOne has grown to serve over 35,000 customers—a 60% increase year over year—including industry giants like Nvidia, Lyft, Porsche, HelloFresh, and Vimeo. Revenue grew nearly 70% year over year to reach the $500 million ARR milestone, a remarkable trajectory from just $16.7 million in 2021. Customers report a 50% reduction in endpoint management costs and a 20% boost in staff retention after adopting NinjaOne, with 75% of customers replacing four or more tools when they switch to the platform.
The company recently expanded its platform with MDM for MacOS and NinjaOne Remote, completed the acquisition of SaaS backup leader Dropsuite, and launched Patch Intelligence AI. NinjaOne expects another 60-70% revenue growth in 2026.
The Mobile Modernization Challenge
As NinjaOne's platform expanded and its customer base grew exponentially, the mobile applications became increasingly critical to the IT administrator workflow. Technicians needed reliable, fast mobile access to manage endpoints, respond to alerts, and resolve issues from anywhere.
However, the existing mobile applications were showing their age:
- iOS App: Built entirely in Objective-C, the app had accumulated years of technical debt and was becoming increasingly difficult to maintain and extend
- Android App: Written in Java with traditional XML layouts, the app struggled with modern Android development patterns and UI expectations
iOS: From Objective-C to Swift and SwiftUI
The iOS rebuild involved a complete architectural transformation:
Legacy State:
- Objective-C codebase with MVC architecture
- UIKit with programmatic layouts and some Storyboards
- Callback-based networking and state management
- Limited testability due to tight coupling
- Pure Swift with SwiftUI for all new UI components
- MVVM architecture with clear separation of concerns
- Combine framework for reactive data flow
- Swift Concurrency (async/await) for networking
- Comprehensive unit and UI test coverage
Android: From Java to Kotlin and Jetpack Compose
The Android transformation followed a similar modernization path:
Legacy State:
- Java codebase with traditional Android architecture
- XML layouts with View binding
- AsyncTask and callback patterns for async operations
- Fragment-heavy navigation
- 100% Kotlin with coroutines for async operations
- Jetpack Compose for declarative UI
- Single-Activity architecture with Compose Navigation
- Repository pattern with clean architecture layers
- Flow for reactive state management
- Hilt for dependency injection
Technical Highlights
Shared Architecture Patterns: Both platforms adopted similar architectural patterns to ensure consistency and enable knowledge sharing between iOS and Android teams:
- Repository pattern for data access abstraction
- Use case/interactor layer for business logic
- ViewModels for UI state management
- Dependency injection throughout
- Feature-based module organization
- 40% reduction in app launch time
- 60% improvement in screen transition smoothness
- Significantly reduced memory footprint
- Better battery efficiency through optimized background operations
- Hot reload / SwiftUI Previews for rapid iteration
- Comprehensive automated testing pipelines
- Feature flags for gradual rollouts
- Crash-free rate improved to 99.9%+
Impact and Results
The modernized mobile applications have become essential tools for NinjaOne's customers:
- Faster Feature Delivery: New features ship 3x faster with the modern architecture
- Improved Reliability: Crash rates dropped significantly across both platforms
- Better User Experience: Modern UI patterns and smoother interactions
- Reduced Maintenance Burden: Cleaner codebases with better documentation and test coverage
- Easier Onboarding: New developers can contribute faster with familiar modern patterns