Recently I spent quite some time studying the infrastructure blueprint of the European green certificate. I have to say that I am rather impressed by the whole solution and the way it has been designed, implemented and shipped to citizens. The overall quality looks to be good, sharp, solid and well thought.
All the components implemented, from backend systems to mobile applications, look to be very solid and well implemented.
I am not personally a lover of certain technologies choices and components being used such as MySQL, I think that other solutions would have performed better in a distributed scenario. At the same time, I can appreciate the huge availability of expertise on MySQL RDBMS that other solutions wouldn’t have.
I would be curious to see how a distributed ledger of a blockchain would have behaved in the required scenario. Probably the non-mutability nature of the ledger could have complicated a bit the logic behind the green certificate platform but I see quite a lot of benefits in the handling of information propagation among the 27 members countries and their corresponding social systems.
I liked the way the whole solution adheres to the OpenApi specification, the usage of REST interfaces in place of old SOAP models that oftentimes are still present in national systems, based on “old enterprise approaches to SOA”.
What I didn’t like about the whole architecture is the direct references to specific components, including closed source solutions. I can understand and I appreciate the specifications indicating the usage of Tomcat, MySQL, Java-Spring boot etc. but I don’t tolerate the direct mentioning of F5 as a load balancer. I personally never used F5 being a person using FOSS technologies, I think that it could have delivered as well a good result, without the need to provide indications for a specific vendor.