Panel Sistemas is a leading technology solutions company specializing in software development, consulting, and IT services. Founded in Spain, it serves diverse industries with notable clients such as Telefónica, BBVA, Santander, Repsol, and El Corte Inglés.
Services Offered
- WebsitePanel Sistemas Website
- Contributions
At Panel Sistemas, I worked as a functional analyst on three projects. In addition, I performed tasks as a senior programmer in the post-decision-making phase. My responsibilities as a functional analyst included the following:
- Analysis of non-functional requirements and decision-making on the exact implementation of the solution (Redmine)
- Creation of sub-tasks with lower granularity to achieve objectives (Redmine)
- Time estimation (Redmine)
- Definition and implementation of the project structure in the specified technologies
- Definition of unit test coverage and quality (JUnit, Google Test, Valgrind)
- Implementation of CI/CD systems (Jenkins)
- Utilization of SCRUM as the development methodology
- Application of TDD and BDD in software development
- Delivery of training sessions on TDD, BDD, Neural Networks, Clean Code, and more
Project 1: Modernizing Maritime and Air Transport Messaging: Replacing IATA with XML/JSONThe first of the projects I worked on involved implementing a message exchange platform for maritime and air transport. This project successfully replaced the outdated IATA standard, which was based on plain text and prone to human errors due to its reliance on the position of the text string, with a more modern, readable, and error-resistant format based on XML/JSON.
To achieve this, I defined a parser that translated messages from the old format to either of the two modern standards through a Restful API that adhered to the Richardson Level 3 maturity model. This API not only provided an entry point for message translation but also facilitated intercommunication with other platforms worldwide and the storage of these communications to ensure the traceability of package transit globally. The project's goals required a high-availability structure and a replicated database system based on MongoDB, implemented through a cluster of servers with each shard replicated.
TechnologiesJavaSpring SecuritySpring MVCSpring DataSpring DocumentationJPAHibernateWildfly/JBossMongoDBRabbitMQJUnitJSFPrimefacesGWTAWSPhonegapHadoopSeleniumMavenGITJenkinsRedmineIntelliJ IDEADockerAnsibleProject ImagesProject 2: Iberdrola's Intelligent Terminal Management with SiemensThe second project was a joint project with Siemens to create Iberdrola's intelligent terminal management infrastructure. These terminals took information about the user's electricity consumption by sending a daily report to the server using the SNMP communication protocol, unless a more detailed monitoring was desired on a specific device or set of devices, in which case reports would be generated with a level of detail that would reach consumption per minute. These data were stored in a non-relational MongoDB database, which for obvious reasons were several clusters, with load balancing and replicated shards. The information of each point was stored in the cluster by geographical proximity, as long as the server was able to assume the volume of data that included the inclusion of said node. The information of each node was kept for one year with a level of detail of consumption per minute, after the year was compacted generating the maximum, minimum and average of each day and this information was kept at this level of detail for 5 years and past That time lapse the information from each node was compacted again. The system also gave the possibility to control and listen in real time to the device through the SNMP and JNLP protocol. This structure was created using microservices in C ++ with the remote procedure call framework gRPC and was implemented in a set of servers based on Red Hat Enterprise Linux.TechnologiesC++Google TestValgrindcLionBoostgRPCMicroservicesJavaRabbitMQJPAHibernateApache TomcatMongoDBJUnitJSFPrimefacesHadoopMavenGITJenkinsJiraIntelliJ IDEADockerAnsibleKubernetesJNLPSNMPSpring SecuritySpring MVCSpring DataSpring DocumentationSpring IOTProject ImagesProject 3: Monitoring and Care System for People with Disabilities or the Elderly for Securitas DirectThe third project, executed for Securitas Direct, involved creating a comprehensive monitoring and care system for people with disabilities or the elderly. The system identified the user's status based on various sensors distributed throughout their home, including presence sensors, door opening sensors, and personal fall sensors. This data was collected to provide detailed information about the user's activities, which was not only stored and accessible for consultation but also capable of generating alarms based on the individual's typical behavior patterns. The system analyzed these patterns and alerted if any sudden changes were detected, with customizable alarm settings.
Additionally, the application included a mobile component developed as a hybrid application. This mobile version utilized sensors to identify falls, track the GPS position of the individual, and more.
TechnologiesC++Google TestValgrindcLionBoostgRPCMicroservicesJavaAWSSpring SecuritySpring MVCSpring DataSpring DocumentationSpring IoCSpring BatchRabbitMQJPAHibernateApache TomcatOracle DBJUnitIonicTypescriptHadoopSeleniumJasmineMavenGITJenkinsJiraConfluenceIntelliJ IDEADockerAnsibleKubernetes