ERP and CRM System Development for Dealership Holding

Technologies:

Agile (12)
JavaScript / TypeScript (9)
PostgreSQL (27)
Django (23)
Linux (23)
Vue.js / Nuxt.js (12)

Domains:

Business Solutions (12)
Customer and Sales (10)

Project Goals

The ERP and CRM System Development project aimed to create an integrated information system to support and automate the internal processes of a large dealership holding in Russia. The software was designed to streamline operations across multiple roles within the enterprise, including call center employees, workshop masters, and other service personnel, ultimately improving the efficiency and transparency of business activities.

Functional Capabilities

  • Activity Planning: Implemented tools for planning employees' activities using shared calendars, allowing the effective allocation of available resources.
  • Employee Schedule Management: Developed features for managing individual schedules and calendars of employees across different departments.
  • Service Procedure Management: The system supports the scheduling and management of service appointments. It includes:
    • Creating and rescheduling meetings.
    • Assigning specialists with specific expertise to particular procedures.
    • Allocating specialized premises and tools required for tasks.
    • Managing preliminary work before the main procedures.
  • Internal Asset Management: Integrated features for managing enterprise resources, including:
    • Automated resource planning for enterprise assets.
    • Switching between manual and automated management modes for flexibility.
    • Long-term resource planning to optimize asset allocation.

Solution Concept

The system's architecture was based on a microservices approach to facilitate scalability and modularity. It featured separate services for different functions, such as employee scheduling, resource management, and service procedure handling. Each service operated independently, allowing seamless deployment and maintenance without impacting the overall system.

The software was deployed across multiple roles:

  • Call Center Employees: Enabled efficient scheduling of customer repairs by automatically or manually assigning tasks based on the availability of specialists, their expertise, and calendar information.
  • Workshop Masters: Provided visibility into the schedules of their teams, allowing better control over ongoing repairs. Masters could allocate bonuses based on the efficiency data gathered from the system and distribute tasks accordingly.

The system also provided dashboards for visualizing metrics related to employee performance, resource utilization, and service efficiency. The aim was to provide a transparent and centralized platform that enhanced communication and coordination among different departments.

Results

  • Increased Employee Efficiency: The system significantly streamlined the workload of company employees, optimizing their activities and improving the overall efficiency of operations.
  • Transparent Scheduling: Employee time management became more transparent and efficient, reducing administrative overhead.
  • Profit Growth: The enterprise saw a profit increase due to enhanced operational efficiency and reduced costs.
  • Reduction in Scheduling Conflicts: The system effectively eliminated overlaps in employee calendars, leading to better coordination.
  • Higher Employee Satisfaction: Improved work planning and bonus allocation led to increased satisfaction and productivity among service staff.
  • Enhanced Enterprise Efficiency: Effective management and automated control of enterprise resources boosted the overall efficiency of the holding.

Technologies and Architecture

The solution utilized a modern technology stack to ensure performance, scalability, and maintainability:

  • Linux: The operating system for servers hosting the system, providing stability and flexibility.
  • Go and Node.js: Backend services were developed using Go and Node.js to support the microservices architecture, offering high performance and concurrency.
  • TypeScript and Vue.js: The frontend was implemented using TypeScript and Vue.js, providing a responsive and user-friendly interface.
  • REST: A RESTful API was used for communication between the backend services and the frontend, ensuring clear and structured data exchange.
  • PostgreSQL: The database layer was built using PostgreSQL, enabling reliable data storage and complex querying capabilities.
  • Scrum: The development process followed Scrum methodology, allowing for iterative progress and effective team collaboration.

User Cases

  • Call Center Employees: The system allowed call center agents to efficiently manage appointments for vehicle repairs, automatically assigning tasks based on available slots and required expertise.
  • Workshop Masters: Masters had real-time access to staff schedules, enabling them to oversee repair operations, manage workflow, and allocate bonuses based on individual performance.
  • Service Specialists: Service personnel could access their schedules and receive updates about upcoming tasks, ensuring they were well-prepared and effectively managed their time.

Integration and Development Process

  • Integration: The system was built with integration capabilities to connect with external systems, such as customer management platforms and inventory management solutions. The modular microservices architecture allowed new functionalities to be added without disrupting existing workflows.
  • Development Methodology: Scrum was used to manage the development process, with the team delivering features incrementally. This approach ensured rapid response to changes and continuous delivery of functional components.
  • Testing: The system underwent unit and integration testing to validate its reliability and performance under typical use conditions. Performance tests were also conducted to ensure scalability as the system expanded to support new roles and departments.

Client Benefits

  • Optimized Internal Processes: Automated planning and scheduling tools allowed the client to streamline internal processes, reducing manual workload.
  • Scalability and Flexibility: The microservices architecture ensured that the system could scale easily as the company expanded or as new requirements emerged.
  • Enhanced Transparency and Control: The centralized information system provided real-time data, enabling better decision-making, reduced scheduling conflicts, and improved employee management.
  • Improved Employee Productivity: Transparent scheduling, automated resource management, and the allocation of bonuses led to higher motivation and productivity among service staff.