Project image


How to streamline complex ‘legacy’ software in a big company, while also introducing ‘best practices’ and improving quality control.

FCC is a global leader in environmental services, water management and infrastructure construction & management. A subsidiary called FCC Environment is one of the largest environmental services companies in the world operating since 1911. It provides urban sanitation services to the whole of Spain and a wide number of countries in Europe, Africa and America.

The company operates in over 5,000 municipalities across the world. It offers services as diverse as: waste collection, treatment, recycling, energy recovery and disposal of solid urban waste, street cleaning, sewer network maintenance, ground maintenance and preservation of green spaces, polluted soils recovery and comprehensive management of industrial waste.

It was for this subsidiary that Agilogy was asked to help out the product development team, taking lead of design and implementation of the new Rest API so that it could be implemented according to FCC’s standards and in its existing structure to ensure the future viability of the product.

The new API is implemented in Scala but coexists with complicated and long-running business ‘legacy’ software implemented in Java and Python, as well as interfacing with an existing Frontend developed in Javascript (AngularJS). We even share certain code.

A major area where Agilogy brings value to the client’s IT team, lies in our "full-stack" and "multi-stack" expertise, serving as a bridge between developers of Frontend and Backend or between engineers of different areas of the Backend of the system. (for example, integration between Scala and Jython). The stack we chose to use was Scalatra on Jetty, PostgreSQL and Beanstalkd to execute the asynchronous processes. For instance for the integration with certain external services processes (whose performance we did not want to have interfere with our main system performance)

On this elaborate project we’ve also made substantial improvements both in terms of streamlining the software development process as well as modernizing certain programming practices. We’re leading the implementation of best practices and better methods that allow for more frequent and reliable deliveries of software, while also offering support to the automation of testing and quality control.

We’re proud to be a partner that FCC’s product development team can count on to streamline and improve their business results.

Ready To Get Started With A New Project?