In the present business landscape, staying competitive requires, among other things, efficient and streamlined operations. Many companies embrace custom ERP development to leverage bespoke software with tailor-made functionalities to unite all underlying processes and departments into a comprehensive system.
Experts from ResearchAndMarkets forecast the ERP software market to hit $294.34 billion in 2027 at a CAGR of 11.9%. This steady growth potential is a sign of increasing recognition among businesses needing to integrate and optimize their operations through ERP development.
Our company decided not to stand aside and undertook a transformative decision - to develop a custom ERP solution from scratch. Creating this ERP system is not another software development project for Geomotiv. Instead, it's a strategic move toward process optimization, integration, and efficient resource allocation.
This article explores how Geomotiv developed its ERP system to address critical challenges, optimize workflows, and enhance its business processes.
Explore the full details of our project dedicated to in-house ERP development.
Introduction: The Need for Change
Geomotiv deals with the everyday complexities of modern businesses using a hybrid staffing model. Our company works with employees, direct contractors, and third-party vendors to provide outstaffing services, operate dedicated developers, and deliver entire projects for different clients.
Meanwhile, the number of projects, partners, and employees has grown. Manual, non-automated workflows involving spreadsheets, paper invoices, and external commercial software for time tracking and project management require replacement as they affect productivity and strain internal resources.
Problems such as data silos, disintegrated data sources, excessive manual work, and operational inefficiency have been bothering us for quite a while. The described situation affects productivity, decision-making, and growth opportunities. Here’s how.
Processing invoices, overseeing project budgets, and maintaining a record of corporate assets requires substantial time. The accounting department is drowning with an end-of-month/quarter workload, dedicating approximately two-thirds of each month to these labor-intensive tasks.
Other departments require a single source of truth to keep track of every activity, report accurate data, and automate routine tasks. They also have to rely on paid tools to cover parts of disparate business processes, which could be more efficient with a unified interface.
The company started recognizing the need for an integrated ERP system to optimize business processes, reduce manual labor, and ensure accurate financial reporting. We focused on critical areas, including:
- time tracking;
- project management;
- HR management;
- accounting operations;
- financial reporting.
Identifying the most pressing operational aspects was a ground for eventual project initiation.
Project Phases and Methodology
The journey began with a comprehensive market analysis and an in-depth exploration of our company processes.
- Options we considered and why we opted for a custom solution.
When assessing our options, Geomotiv explored ready-made ERP solutions presented on the market. However, we found that they either fell short of automating all our processes or came with heavy price tags, such as those from SAP or Oracle.
- Cost considerations.
The licensing costs associated with boxed ERP offerings, such as those provided by SAP or Oracle, represent a sizable financial commitment. For instance, the entry-level Oracle Cloud ERP service has a monthly fee of $625 per user, leading to an annual expenditure of $7,500. In the case of a team comprising 100 users, as in our case, the initial yearly investment would hit $750,000. However, the cost considerations don't end at this point. Oracle's standard 3-year contract agreement further intensifies the financial commitment. With this in mind, the total cost over three years propels to $2,250,000.
For proper implementation, off-the-shelf solutions like Oracle's ERP would require additional customization and business analysis efforts. Moreover, incorporating other services and tools contributes to the overall cost.
When contrasted with Geomotiv’s needs, it's evident that such a solution wouldn't fully meet our expectations. The Oracle ERP's pricing structure and contractual obligations may outstrip the value it provides for our specific business processes.
Budget-friendly time tracking and invoicing options need to be improved in automating our business processes. Opting for such solutions would make us adapt our operations to the pre-built functionality of boxed software, potentially leading to compromises in our established workflows.
These solutions are better suited for smaller companies with uncomplicated business rules. However, for a company like ours, which has many intricate processes and specific requirements, the limitations of these solutions become evident. Instead of gaining the advantage of customized efficiency, we'd need to improve our ability to leverage our unique operational differentiators.
The pursuit of such boxed software would not only require significant adjustments to our established methodologies but could also hinder our ability to leverage our unique operational advantages. Instead of benefiting from tailored efficiency, we'd be constrained by the predefined functionalities of these solutions. As a result of exploring alternatives, we favored in-house ERP software development. This option presents a more economically viable and customizable approach that aligns with our strategic goals. It would allow us to design, modify, and scale software according to specific requirements.
“What is ERP development?” is a no-brainer question for our company. Our internal specialists don’t need an explanation of the processes, methodologies, and technical stack behind from-scratch product development.
Business analysis took the floor during the second phase of the ERP development process. Our internal experts elicited high-level requirements and developed comprehensive documentation. This phase unfolded through discussions with significant stakeholders, heads of internal departments, and other team members.
The primary task was to collect insights across departments, analyze and interpret raw data, and document business processes. Then, it was necessary to transform these business requirements into wireframes and go through a transparent approval process.
Our business analysts developed detailed project documentation to present specific and overall tasks as understandable for the development team. This phase culminated in the creation of a complex prototype. It summarized the essence of the product-to-be and represented the ERP’s functionality, look and feel, and overall user experience.
- Technological foundation: what is ERP development language and infrastructure components?
The project's chosen technological stack combines robust back- and front-end technologies to ensure scalability, flexibility, interoperability, and user-friendliness.
Our ERP development experts utilize Java 17, Spring Boot 3, and Postgres 14 for the back end and ReactJS and TypeScript for the front end. We manage infrastructure and CI/CD processes through GCP, Kubernetes, Helm, Jenkins, Argo CD, and Grafana.
Next, we moved on to breathing life into prototypes and integrating envisioned functionalities into one system. The phase started with microservices architecture design. Such an approach to system composition empowers us to scale it according to changing needs. Besides, microservices architecture incorporates updates without causing interruptions to the software system's functioning.
Geomotiv opted for Google Cloud Platform (GCP) to set up the ERP’s cloud infrastructure. The platform offers affordable on-demand services, which turned out to be in line with our objectives and strategy. Another factor affecting our choice was the GCP’s capacity to scale up and down according to our needs.
Establishing the ERP on top of Google Cloud was instrumental for our company. It allowed us to launch a custom solution without delays and become a Google Cloud partner. By the way, we’ve recently announced some exciting news about this collaboration in our blog.
Our company orchestrated the development process using the Agile ERP development methodology - Scrum framework. According to this technique, our team used an iterative approach to ERP development. We conducted detailed planning sessions only before upcoming sprints, engaged in backlog grooming, and demonstrated shippable increments regularly.
This framework equipped us to accommodate changes in business processes arising from the dynamic nature of product requirements. The Agile approach ensures that our development remains responsive and aligned with evolving needs.
After successfully releasing the initial scope of custom ERP application development, we’ve transitioned into the beta testing phase, which is still in progress. During this critical stage of the ERP systems development process, our team actively engages with actual end-users. The primary task is gathering their valuable feedback and rigorously testing the system's capabilities through real-life scenarios.
This user-centric approach generated insightful findings that helped expand the system's functionality and enhance the user experience. As a result, our ERP solution has evolved beyond its initial limitations. It is gradually becoming a dynamic and adaptable tool that resonates efficiently with the company's and its employees' joint needs.
Achieving Success with Initial Product Scope
The initial product scope encompasses several functional modules to address our specific pain points. These building blocks enhance efficiency, automation, and accuracy across various departments. Let's explore the details of each developed module.
Time Tracking Module
Work time logging: Employees can log their work hours, enabling accurate project- and task-based time tracking.
Absence tracking: Management of employee leaves, vacations, and other absence types through a centralized system.
Approval flow: Implementation of a two-step approval process for benefits requests.
Clients and Projects Module
Client and project profiles - storing detailed information about clients and associated projects, including banking details.
Contract management - tracking different contract types for client and tenant companies.
Employee assignment - assigning employees to specific projects and tracking rates, benefits, and conditions changes.
Rate management - storing and managing employee, client, and vendor rate changes.
Rate card feature - managing rates, benefits, and relations between employees and the company's vendors.
Asymmetrical benefits - enabling varying benefits and conditions for clients and vendors.
Employee creation - quickly creating new employee profiles within the ERP system.
Role assignment: Assigning roles to employees and defining their permissions and access levels.
User permissions control: Managing what users can view and edit within the ERP system.
Time and attendance reports: Generating comprehensive reports for time and attendance, aiding payroll and resource allocation.
Financial statements: Automatic generation of financial statements for a selected period.
Legal entity tracking - keeping track of legal entities associated with the tenant company's projects.
Employee and client association - associating employees and clients with corresponding legal entities.
Role Management Module
Custom user roles - creating and configuring new users, provision of flexible permission management.
Data Migration Module
Historical data migration - seamless data migration from various sources into the ERP.
Upload functionality - enabling users to upload timesheets, attendance records, and other relevant data files.
With these modules in place, Geomotiv will reduce the workload on the accounting department and cost savings by discontinuing third-party tools. This step towards internal optimization is just the beginning, as the company envisions expanding the system's capabilities in subsequent releases.
Results and Future Prospects
The beta-testing phase has already demonstrated the system's value, paving the way for future development plans. The modules developed within the initial product scope serve as the building blocks for Geomotiv's ERP system, transforming it into a centralized hub for managing diverse business processes. As the company continues to iterate and improve, we expect the ERP system to reshape how Geomotiv and other IT companies manage their operations, drive growth, and stay competitive.
With functionalities like P&L statement generation and equipment purchasing automation on the horizon, Geomotiv's ERP system will become the single source of truth for all internal departments.
The ERP system will drive cost savings by eliminating the need for paid projects and time-tracking tools. Furthermore, the partnership with Google Cloud positions Geomotiv to continue driving digital transformation projects, enhancing its expertise in ERP development.
By embracing a strategic blend of technological advancements and meticulous planning, our company initiated an exciting journey to ERP implementation. With a well-defined vision for streamlined processes and future growth, Geomotiv is set to reap the benefits of our strategic decisions.
We've picked out a selection of excellent cloud storage services for businesses by...
Enterprise software development in the cloud helps accelerate digital transformation ...
The popularity of Go/Golang started to grow rather quickly, which can be explained...
Over the years of work as a custom software development company, we have...
Agile is an absolutely “change-friendly” methodology that helps companies to reac...
The Agile software development principle focuses on building collaboration between cr...