Work in NEU Energy

As a Developer Junior
Work Overview
For a year and a half I worked in NEU Energy as a part of the Tech team, where I had multiple projects, like the development of pages for the platform, the software for the tickets for Customer support in ZohoDesk CRM, the software for quotations for NEU Brasil, also in ZohoDesk, and the main project, the software of Notifications and Alerts for the platform and App.
Company Context
NEU is an energy marketing startup that is 100% intelligent and digital. We measure and bill the consumption of companies and we rely on cutting-edge technology so that users can visualize through a platform their consumption hour by hour, create labels, analyze their behavior and receive personalized notifications that allow them to take actions that generate significant savings in their energy bill. What does its acronym stand for? Next Efficiency Utility.
The main project in NEU was to develop a notifications software from scratch, replacing the old one that had a lot of bugs.
The software should have the complete process, from analyzing the data to notifying the user, and it was made with AWS Lambda, AWS, CloudWatch, JavaScript and PostgreSQL.
I was the person in charge for all this project, being responsible for the whole design of the software, the investigation for how and where to run it (which server and which code languages), and developing the software it self, making tests before launching it to the main platform so users could use it.
Also, I was part of the design of the User Interface for the notifications, the definition of the parameters for which data should be notified and the copies for those notifications.
Main Project
Notifications and Alerts Software
The first step was to study many ways that the program could have, searching for different tools, languages and servers.
AWS Lambda using JavaScript was the tool selected, using the same AWS server.
The software was divided in two, the notifications generator and the notifications handler.
The first part, the notifications generator, was in charge of running in a determinate scheduled time and analyzing a specific set of data that was selected with a SQL Query in the PostgreSQL database. Each notification had it’s own query. For example, if the notification showed the summary of the consumption of last month, the query selected the data necessary for that.
If the user data matched the requirements to benotified, the notification was sent with the second partof the software, the notifications handler.
The notifications handler was a AWS Lambda functiontriggered by a insertion in a table in the database.
It notified the user in 3 possible ways, depending onthe settings of the notification, it could be via the NEUApp, SMS of e-mail.
After being notified, the user could see that notification in the platform.
Process to develop the software