Enterprise Resource Planning System

A custom ERP solution to cover all important processes

Custom ERP System
YWS > Works > Custom ERP System > Intro > Content > First VectorYWS > Works > Custom ERP System > Intro > Content > Second Vector
Industry:

Company management

Type:

Web development

Time:

2019-2023

Platforms:

Web

Dashboards

All the necessary information is structured and visualized via informative dashboards.

Resource management

Managers can organize the workload of all employees so others can see who works on what.

Calendar

With all birthdays, work anniversaries, and national and professional holidays.

CRM

Clients, leads, projects, and all financial reporting are structured in one place for easier management.

Project Idea

Every year we are growing as a company and our processes become more complex. To manage employees, clients, and leads, we used several different services that sometimes were not synchronized. Searching for the correct information and updating all of them to the right status was time-consuming and required additional effort.



That is why we decided to create a custom ERP solution for our internal processes. It should include employee management, client database, and financial reporting and analytics.

Dream team

Project manager

Frontend engineer

Business analys

Backend engineer

Scrum master

Two QA engineers

UX/UI designer

DevOps engineer

Technology Stack

Here is the list of technologies and tools to bring our idea to life:

Custom ERP System

Features in detail

Our ERP has six main parts that are connected with each other and create a perfect working ecosystem.

Employees

Here, all employee-related data is securely saved and stored.

Profiles

Each employee has their own profile with the information necessary for smooth financial reporting.

Summary

All history of profiles tied to one employee.

Requests

A registry of all social benefits, whom they should be paid to, and reports for better analytics.

Custom ERP System
Custom ERP System Salary
Salary

Managers can see the salary history and additional payments.

Payroll

A dynamic table with salary payments and the ability to calculate the salary based on working hours.

Extra payments

Resource and project managers can request additional payments for their team like social benefits or extra working hours and finance specialists approve or decline them.

Reports Project reports and dashboards to facilitate management operations.

Projects

All projects we work on with costs, profit, and responsible project managers.

Dashboards

The main dashboards include Finance Overview, Effectiveness, and Salary Fund, where all managers can access relevant data.

ERP Directory
Directory

The storage of work-related data needed for stable ERP functioning.

Technologies

The list of technologies our engineers have expertise in.

Positions

All positions are indicated in one list with their belonging to delivery.

Calendar

It mentions employees’ birthdays, work anniversaries, and all relevant holidays.

Users

Allows admins to manage permissions and assign user roles.

Nominal wages

Helps the finance department with payroll payments and taxes.

Exchange rates

Managing various currencies and payments for employees all over the world.

CRM

Everything managers need to know about clients and leads.

Contracts

The list of all contracts we have with our clients.

Leads

All leads that come from contact form on our website are stored in one database.

Invoice registry

All invoices for all projects and clients are stored safely
in one place with relevant permissions.

Clients

Managers can access data about clients and relevant projects, create invoices, and manage work log.

crm

Resource management

Managers can see what specialists are occupied and bench specialists and allocate them to the projects. Also, the table indicates what projects exactly engineers spend their working hours on every day. The data can be filtered by each employee, tech stack, and position.

Challenges and Solutions

While creating our ERP system, we faced some development challenges that we were happy to resolve.

Legacy code

The project had plenty of legacy code with little to no documentation and duplicates. We needed to fix it and optimize the system.

We figured out that the reason for it was the fact that a lot of team members contributed to building the ERP and the code became too complicated. To solve it, we revised the architecture as a whole, fixed the duplicated code, and introduced unit testing. As a result, the system became more flexible and scalable. We still continue rigorous manual and automated testing (including regression tests) to make sure everything works like clockwork.

Invoicing logic

We needed to create a logic for creating multiple types of invoices that would analyze and structure data from Jira.

To create a new invoice, we build a whole system that includes registers of clients and contracts, project-related transactions, a modal for invoice making, document storage space, etc. We also added serialization which processed the hash and turned it into objects to facilitate the work.

Results

The ERP system is up and running.

The company’s processes are automated and sped up.

All employees have access to the relevant ERP data.

The ERP is integrated with our website, Google Analytics,
Jira, and payroll software.

Custom ERP System Results