Skip to main content

Ayuntamiento de Barcelona

Ayuntamiento
de Barcelona

Image
AytoBCN - Cabecera

Cross-Cutting Tools for Citizens

CustomerAyuntamiento de Barcelona
Developmentnazaríes intelligenia
CountrySpain

The Ayuntamiento de Barcelona offers a wide range of software products for both citizens and internal personnel. These tools have a direct impact on millions of people, making automation, digitization, and scalability of its systems a top priority.

As a large organization, the City Council manages numerous cross-cutting services and shared infrastructure policies. Consequently, every application deployed within its corporate ecosystem requires multiple integrations with common systems and must comply with predefined standards for security, architecture, infrastructure, and global data management.

The technological ecosystem at the Barcelona City Council incorporates cutting-edge trends such as Kubernetes, API First principles, a centralized API Manager for all products, continuous and automated integration and deployment pipelines, SPA frontends, and many other state-of-the-art practices.

Our Contribution

Since 2018, we have been collaborating on various projects with the Barcelona City Council. Our primary focus has been on developing new systems using technologies such as Python DRF and Angular in their latest versions. We have also worked closely with the technology architecture team to define automated deployment pipelines for these technologies.

We have contributed to several cross-cutting software products such as NASIA, IRIS, Fitxer d’Entitats, and eComunicacions. Additionally, we provide corrective and evolutionary maintenance for the City Council’s Python-based technologies and offer L1 and L2 technical support for these applications.

Image
Screen of the Ayuntamiento de Barcelona homepage displayed on a laptop

Key Technical Features

Image

Fast Search System with ElasticSearch

  • We utilize ElasticSearch in several processes to enable efficient complex searches. This involves indexing processes oriented toward two main areas: search and results. The primary goal of this approach is to perform complex searches without impacting the transactional database. By leveraging cache systems and ElasticSearch, the platform can handle a high volume of search requests, ensuring optimal resource management and computational efficiency.
Image

Background Processing

  • For designing user-friendly interfaces, agility is a key characteristic, avoiding slow-reacting interfaces. Any process that can run in the background or is computationally intensive is offloaded to a background computing system powered by Redis and Celery. This ensures fast front-end responses. Additionally, resilient background processing systems have been created to execute each process successfully and handle potential issues arising from temporary failures in external system connections
Image

Integrations with Other Systems

  • Applications within this organization must interact with numerous external systems to maintain data integrity and system coherence by respecting the sources of truth. A robust and traceable connection system has been developed to ensure clear tracking and resolution of potential issues.
Image

Payload Optimization with DynamicSerializers

  • Dynamic serializers have been employed in the APIs to adjust the response size of an endpoint based on front-end requirements at any given time. This approach minimizes the payload sent from the server to the front end, while also ensuring the system is highly maintainable and scalable.
Image

Code Autogeneration with YASAG

  • As part of these projects, we developed the YASAG library (https://www.npmjs.com/package/yasag), released as open-source. This library automates Angular code generation to create resilient automatic connectors between the front end and the API. Currently used in many projects beyond the City Council, YASAG streamlines the development of Angular + REST JSON API applications that export standard Open API 2.0 documentation.

our
powerups

PowerUp

ME

MVP Engineering

It is characterised by the formation of agile and cohesive teams, specialised in quick iteration and efficient decision-making for projects with short-term launch requirements but long-term sustainability. The synergy of working with teams that have prior experience ensures a smooth start that is often challenging to achieve with new teams.

PowerUp

GE

Growth Engineering

It enhances existing software products and focuses on their evolution and maintenance to ensure scalability and robustness. Our expert teams provide solutions ranging from integrations to globalisation, adapt to complexities and prepare products for market leadership. It is an ally for companies seeking to innovate and expand. It also ensures quality and ongoing relevance.

Description of Key Functionalities

NASIA: A cross-cutting system for managing city facilities and events. This platform centralizes all corporate information related to facilities and the events calendar in Barcelona, providing a centralized API. This API is utilized by over 800 different websites to deliver segmented information directly to citizens.

Image
Ayto. BCN
Image
Ayto BCN

eComunicacions:An electronic communications system for citizen engagement. This system centralizes all citizen subscription preferences for the City Council's various newsletters while also managing explicit GDPR consents. It includes features for newsletter editing, tracking, and analytics on delivery and open rates. The platform supports multichannel communication (email, SMS, Telegram, etc.) and is developed using Python and Angular.

Fitxer d’Entitats: A centralized repository for all information the City Council maintains about associations and interest groups. This system provides a single registry accessible by various public corporation departments, ensuring a reliable and accredited source of association information. It integrates with other City Council systems to automate processes and connects with the Electronic Portal to streamline new association registrations or modifications to existing ones.

Technical Support for Digital Channels: We provide technical support services for the Digital Channels department of the Barcelona City Council. This support office handles incident management and technical tasks, facilitating day-to-day operations for other tech companies integrating into the Digital Channels ecosystem. Services include domain creation, certificate management, hosting, best practices guidance, and support for approved Drupal or WordPress modules.