Dantas, Lee, Brock e Camargo AdvogadosSenior Lead Developer
Aug. 2013 - May. 2015São Paulo Area, BrazilI acted as lead developer and architect to rebuild a system known as Legalbox. My role in this project was to define the architecture, define the roadmap goals, and maintain high quality of code, both from the point of view of technology, as of maintainability.
The project is focused on the legal market. It was developed to support that the same process is executed in different ways according to teams, clients, or other special needs. Because of this, it was created using BPM to control all workflows in the system. As there were assumptions as scalability and high availability, the system was built in a stateless manner with identifiers based on twitter snowflake in order to avoid collisions in an environment with multiple databases.
The project was constructed in monolithic form for simplicity, however each project module is self-contained on separate APIs, in order to simplify the migration to a micro-services architecture in the future.
The system was built using Spring 4, RabbitMQ, Hibernate ORM, Hibernate Search (Lucene), memchached (Amazon ElastiCache in the production environment) among others. For the front-end it was used angularjs with SASS as CSS pre-processor, and other technologies used in nodejs. Communication between client and server is done following the premises of rest.