From MVP to Enterprise Software Solution: How an Augmented Team Helped Amalgam Land Bigger Clients

Hiring a software agency to work on your MVP development can be a stressful process. Having to do it twice is just a bad joke—as Amalgam could tell you. 

Sharing is caring!

by Matias Emiliano Alvarez Duran

08/04/2022

Back in 2021, Amalgam was working with a software agency that got acquired and needed to leave the project. Later that year, NaNLABS came in to take over, meeting with Ben Coleman, Amalgam’s founder, several times before working together on refactoring his enterprise software solution (ESS). 

Amalgam needed a smooth transition from the previous provider, to stabilize their product that had too many bugs, incorporate Agile processes into their lifecycle, and launch version two of their software solution. Here’s how we did it.

Ready to build your own custom software with a team that cares about you and your processes? We’re not code monkeys, we care about you.

Table of contents

Amalgam, meet NaNLABS: Taking an MVP to an enterprise software solution with an augmented team

Amalgam’s former software development agency built them an MVP. Since they needed to hit the market fast, in order to do so they decided to cut some corners that weren’t necessarily affecting user experience but were making developers' jobs harder.

The NaNLABS augmented team was remotely working from Argentina with Amalgam stakeholders based in New York—the beauty of software development is that it can happen anywhere.

The client: A financial and accounting startup

Amalgam, originally a part of Calculate, is a fast-growing financial and accounting startup based in New York. It’s a software platform that allows tech-savvy individuals to build complex automated processes using their day-to-day tools. 

As is common in small companies, everyone was wearing too many hats to fulfill business needs. Ben Coleman, the company's founder, was in charge of sales, project management, and development tasks—and was also the product owner. Like him, Ben’s partners also juggled multiple responsibilities.

The brief: Turning Amalgam into an enterprise software solution and making them Agile

Amalgam needed support on three main buckets:

  1. Offboard the previous agency and onboard the NaNLABS team in a month.

  2. Improve the quality of their MVP and take it to an enterprise-level solution.

  3. Organize the development process in an Agile way, and incorporate project management tools.

The challenges: Changing software development partners in a short time frame

When we started working with Amalgam, we faced five main challenges:

1. Knowledge transfer.  NaNLABS needed to get all the information from the former provider in just one month. The main developers were leaving the project, and there would be no one left to ask in case of questions. The NaNLABS team had to get onboarded while working on the project at the same time.

"
“One of the main challenges we had to face was to take over a project developed by another company,” shared Gianluca Nativo, Senior Backend Developer at NaNLABS. “In a short timeframe, we had to learn as much information as possible about the project’s structure.” 

2. High technical debt. The software had many technical issues. Bugs, inconsistencies in defined dependencies, code that wasn’t well modularized, and a high technical debt.

"
“Understanding the product as a whole was a challenge too. Both on the business side,  grasping industry new concepts and workflows, as well as the technical aspect, given the lack of tests in the codebase and documentation.” explained Margarita Peluffo, Project Manager at NaNLABS. 

3. Agile team workflow. Amalgam was lacking Agile processes and a standardized workflow which caused the work to be unplanned and convoluted.

"
“Our sprints were arbitrary two-week periods. We just rolled stuff forward if something wasn’t done during that time. We never had a process associated with that,” said Ben. “We also wanted to streamline the process and plan ahead more effectively. We had a bunch of bugs and errors that were popping up in the product that we weren’t doing a great job of reducing.”

4. Lack of project management. Since the previous development team didn’t have a project manager, they were missing team organization. Ben was also too involved in the process, leaving him less time to work on other business needs. 

"
“The challenge here was to establish coordination with the client so he would have more time to dedicate to other roles,” said Peluffo. “Knowing that the project would be delivered on time without him having to provide as much supervision as he’s used to.”

5. Aiming at enterprise-level clients. The Amalgam team needed to work on their product scalability to enter the enterprise market. They needed to have a more solid architecture, support additional 3rd party connectors, handle larger volumes of data, and increase security and privacy practices in order to close deals with bigger companies.

Why did Amalgam choose NaNLABS over other providers?

Amalgam’s previous software development provider built them what they needed at the time: a working MVP. The problem is that with time, the product was full of bugs and wasn't scalable, modular, or cohesive. 

Amalgam needed someone to improve the software and implement an Agile software development lifecycle. We met with Ben a few times, until he decided to choose NaNLABS to help create an Agile augmented team

Amalgam needed four things:

  • A team who could start fast

  • An experienced and strong development team

  • A self/organizing Agile team

  • Someone who could give the project direction

They needed to hear the words “project manager” and “Agile methodology”.

Ready to build your own custom software with a team that cares about you and your processes? We’re not code monkeys, we care about you.

What did NaNLABS do?

The NaNLABS team worked alongside Amalgam stakeholders to successfully transfer knowledge, stabilize the software, refactor and improve code functionality, and turn their MVP into an enterprise software solution.

Knowledge transfer

During the first month, NaNLABS put together a team of three engineers, a project manager, and a principal engineer to gather all the information and experience from the previous software provider. 

To do so, NaNLABS

"
“planned a series of meetings to discuss matters like local setup, development workflow, deployments, and overall software architecture,” said Adan Mauri Ungaro, Principal Engineer at NaNLABS. “The goal of those touch points was to get rid of doubts or problems that could occur in the future.” 

Debug and refactor code

When you work with a pressing deadline, it’s common to shortcut your way to delivery. In those cases, you get user-facing working code, but it comes with a sea of issues that the technical team will need to deal with later. 

In this case,

"
“NaNLABS did an analysis and presented the issues to the client. Amalgam wanted to scale the application, so we presented what needed to be improved in order to do so,” explained Margarita Peluffo. “Next, we established priorities with the client and implemented changes over the next months.” 

During that analysis, we discovered that we needed to: 

  • Improve code standards by enforcing code rules

  • Start including tests on core modules

  • Refactor codebase progressively 

  • Enhance front-end components to make them reusable

  • Reduce manual and time-consuming tasks by setting up automation processes

"
“The second technical challenge was to set up a deployment mechanism that didn’t rely on manual work like logging into the remote environment and executing actions by hand,”  said Adan Mauri Ungaro. 

"
“We moved all manual operations to GitHub actions. The process is almost identical, but it’s now performed by a script executed on demand via an interface in GitHub’s repository automatically.”

Make business processes Agile

Once the NaNLABS team took over, we began implementing Agile processes to establish a workflow and improve the quality of the code. The NaNLABS team also restructured the way we approached software development by implementing project management tools. Due to Agile pods being self-organizing teams, once the workload was properly defined, every team member was able to start working towards their goals without any hassle. 

Implement Agile practices

We started planning sprints, had retrospective meetings, as well as demo meetings. The NaNLABS team worked alongside the client to redefine the software requirements for Amalgam's new phase and make them explicit to everyone on the project. 

Architectural improvements

The architecture needed to have solid foundations to support changes and be highly scalable. So, our engineers redesigned it with those two things in mind. We also applied security enhancements to support more complex and granular requirements from enterprise clients.

Front-end rebrand

Amalgam used to be an internal tool of Calculate, a financial and strategy consulting firm. The brand separation required Amalgam’s front-end to represent it as well. 

We restructured the front-end code and applied the new branding. This allowed the NaNLABS team to create reusable front-end components that had a good separation of concerns and ensured a cohesive user experience across the entire product.

All those efforts made version two of the product clean, modular, easy to maintain, and scalable. 

The results: From MVP to enterprise application software (EAS)

The NaNLABS-Amalgam relationship is ongoing. Here are some of the key results we’ve achieved so far:

  • Smooth transition from the previous provider. In one month alone, the NaNLABS team managed to compile all the crucial documentation and knowledge needed from former developers.

  • Stabilized the product. The NaNLABS team reduced bug fixing time by almost 80% and increased monthly deployments by 2x.

  • Implemented an Agile workflow. We plan the work in sprints, have retrospectives as part of Agile continuous improvement, use Scrum dashboards, and follow technical practices to become more efficient.

  • Successfully updated the front-end to match new branding requirements. We modified the look and feel of the application.

  • Help them grow their business. Amalgam grew from an internal tool to a standalone SaaS product that helps enterprise-level businesses. That led to the NaNLABS team growing to 5 developers and a management layer.

  • Increased the number of seamless integrations. We connected Amalgam to several new finance tools like QuickBooks and customer relationship management (CRM) tools like Salesforce.

  • Process automation. We automated tasks like deployments and improved communication between the team and the client. This gave Ben his time back to focus on the business aspect of Amalgam.

  • Built a great relationship with the client. Streamlining the communication process, understanding their priorities, and giving each other feedback is what helped us build a great relationship with Amalgam. 

Version two of Amalgam is ready to be used by enterprise-level clients. At the NaNLABS team, we’ll keep working on making the back-end as clean as possible.

Is hiring a software agency worth it?

Yes, hiring a software agency can be the answer to all your startup or small business development needs. But don’t just hire anyone. Hire a team that follows Agile principles to develop your MVP and turn it into a high-quality enterprise software solution. 

Working with Amalgam was quite an experience, and really put NaNLABS’ Agile skills to the test.But our software development consultancy background helped us spot many of the team’s issues and make improvements. 

In a few months, NaNLABS were able to revamp Amalgam’s software, implement Agile processes, and increase the quality of the final product. And we’re ready to do the same for your business.

Ready to build your own custom software with a team that cares about you and your processes? We’re not code monkeys, we care about you

Frequently asked questions about enterprise software solutions

What’s an enterprise software solution? 

An enterprise software solution or enterprise application software (EAS) is a software product that’s meant for organization use rather than individuals. It’s designed to be scalable and optimizeworkflows. 

What are examples of EAS? 

The most common examples of enterprise application software are: 

  • Customer relationship management (CRM)

  • Marketing automation solutions

  • Internal communication apps

  • Task management systems

  • Enterprise resource planning (ERP systems)

  • Business intelligence tools

  • Supply chain management systems

  • Customer support software

  • Human resources software for payroll and career planning

More articles to read

Previous blog post

Agile

08/16/2022

Agile Code Refactoring Explained: Why You Need It and How to Do It

Read the complete article

Next blog post

Client Stories

07/29/2022

Migrating to a Microservices Architecture: How We Helped HyreCar Get it Done

Read the complete article