[Customer]Mobile Device Management System (In progress)

This system provides centralized remote management capabilities for smart devices.

#1. Introduction.

This project involves the development of a cloud-based service that enables centralized management and operation of iOS and Android devices used by enterprises and corporate clients.
Through a web browser, administrators can remotely enforce a wide range of controls on individuals and groups within the organization, such as:
Bulk collection of device information
Application of security policies
Device locking
Remote data deletion, and more
This is a sophisticated integrated device management solution that ensures secure device usage and efficient IT operations.

Key Features Include:

  • Device information retrieval
  • Device locking
  • Remote wipe
  • Password unlock
  • Location tracking
  • Device function restrictions (camera, Bluetooth, SD card, Wi-Fi, etc.)
  • Password policy configuration
  • Local wipe setup
  • Device certificate distribution
  • VPN connection settings (PPTP, L2TP, L2TP/IPsec PSK, L2TP/IPsec CRT)
  • Application launch restriction
  • Root detection
  • Call history retrieval (incoming/outgoing)
  • Call restriction
  • Wi-Fi connection target restriction
  • Detection of policy-violating devices
  • Optional integration with antivirus scanning
compass
months
0
+
virtual assistant
technologies
0
user heart
Engineers
0
+

Technologies used:

#2. Challenges.

Initially, the system was built as a monolithic service, with a large codebase and complex processing logic. This presented several challenges:

  • Difficulties in managing and maintaining the code, especially as the number of features grew
  • High risk of system-wide impact with every deployment
  • Decreased performance due to the lack of separation between functionalities

In addition, the tight coupling between the user interface and business logic made it challenging to:

  • Adapt or extend the UI/UX based on client requests
  • Leverage server-side rendering (SSR) effectively for improved performance and SEO

Moreover, the system lacked the flexibility needed to support multiple platforms (web, Android, iOS) efficiently, and it was not well-suited for future integration or scalability.

#3. Solution.

  • The system adopts a microservices architecture, enabling flexible scalability, ease of maintenance, and adaptability to technological changes. This architecture also enhances overall system stability, facilitates smooth integration with external systems, and supports automation in deployment and monitoring processes.
  • On the technical side, Ruby on Rails is used to build the backend APIs, while Nuxt.js is utilized for frontend development. Additionally, native applications for Android and iOS are developed in parallel to ensure cross-platform compatibility.

#4. Achievements.

  • Clearly separating the business logic (backend) from the presentation layer (frontend) not only streamlines the development process, but also improves the system’s scalability and maintainability.
  • The use of Nuxt.js with Server Side Rendering (SSR) further enhances page load performance and SEO effectiveness — an especially valuable advantage for management systems with complex web interfaces

Quick links

This is a large-scale system composed of multiple services, featuring complex logic and strict operational testing procedures. It requires engineers to possess strong technical expertise and sharp problem-solving skills.
Ho Anh Tuan
Programer