
Daniel Pereira
Verified Expert in Engineering
Software Developer
Stockholm, Sweden
Toptal member since October 25, 2017
Daniel is a software engineer with 11+ years of experience in the industry, having worked with micro-services, AWS, SaaS, Spring, and Hibernate, among other frameworks and technologies. He has worked with many teams from various sizes and cultures; from a couple of engineers in a startup to a group of 50 professionals in a big corporation. Daniel is passionate about software development, and he always looks for exciting challenges to work on.
Portfolio
Experience
- Java - 12 years
- SQL - 11 years
- Java 8 - 9 years
- JavaScript - 9 years
- Hibernate - 7 years
- Linux - 4 years
- Angular - 4 years
- Docker - 4 years
Availability
Preferred Environment
Angular, Java, IntelliJ IDEA, Git, Linux
The most amazing...
...project I've worked on was building a micro-services architecture to allow the company’s developers to create new products on top of it.
Work Experience
Software Architect
Senior Sistemas
- Created the new company's platform. It is cloud-based, and it also can be deployed as an on-premises application. It supports millions of transactions per month, achieving an availability of 99.94% during 2018.
- Designed and wrote the authorization service from scratch, decoupling it to be an autonomous part. The new service increased performance by 50%. It has backward-compatibility with the legacy one, allowing other services to migrate at their own pace.
- Migrated services from Oracle Java 8 to OpenJDK 11, due to changes in Java licensing.
- Designated by management as a tech lead on a team of seven people. I mentored juniors programmers and newcomers Software Architects.
- Contributed to the redesign of our services front ends, formerly written in AngularJS. We developed all new front ends using Angular 2+. We got a more intuitive interface, which a more modern design on top of it.
Software Engineer
Performitiv (via Toptal)
- Migrated the entire client's environment from Heroku to AWS, designing the Amazon infrastructure from scratch.
- Implemented the client's CI infrastructure, allowing developers to deploy their code when making commits on the Git repository.
- Enabled clients to share essential files by creating an SFTP server that synchronizes with an S3 bucket.
- Configured Elastic Stack, allowing developers to keep track of actions happening inside the application.
Frontend Software Engineer
(confidential)
- Implemented the frontend redesign. After testing the current version with clients, designers decided to change the application flow to enable clients to register under 15 minutes. After finishing the changes, we achieved the expected goal.
- I fixed several bugs that were blocking the client to launch the application on the projected date.
Software Engineer
SPINS
- Migrated our infrastructure to use CircleCI 2.0 as our CI tool, allowing developers to deploy changes by pushing code to the Git repository.
- Worked on performance issues when generating reports reducing the execution time from four minutes to three seconds.
- Created BI reports giving our clients better insights on the data they have on the product. We developed the frontend using Angular 2+ and used High Charts to display the graphics.
- Developed the new API to be used by the mobile team. The API goal was to replace the old API, which had many performance issues. We were able to deliver a faster and reliable product using the new API and new mobile apps.
Software Architect
Senior Sistemas
- Created a social network used by companies to improve internal communication and increase employee engagement.
- Allowed customers to optimize their application usage by providing a mechanism to customize any endpoint on the application.
- Created an authentication service where users could login into the system using their Facebook/Google/Linkedin profiles.
- Enhanced the companies security process by creating a mechanism that allows requests to the application only on whitelisted IPs.
- Created a frontend for several essential services we developed, including scheduler and customization services. With those frontends, clients could perform tasks in visual mode. The previous version forced them to execute commands using a terminal, which was not intuitive and error-prone.
Applied Researcher
Senior Sistemas
- Endorsed the application's security by making a penetration test, where vulnerabilities were found and reported.
- Created a project to monitor the volume of a silo. I built this project from scratch, and it ended up receiving the Outstanding Watson Internet of Things Solution awards on the IBM Beacon Award 2017.
- Helped the agribusiness to have better insights on whether they should stock grains, buy it or sell it. The product made was connected to the stock market and consumed information in real-time.
- Reduced support requests from clients by developing a chatbot to answer questions about the application.
- Allowed employees to enter the company using their smartphone by integrating the access system using NFC and QR Code.
System Architect
Senior Sistemas
- Allowed developers to reuse their code by making a REST layer on the company's proprietary framework.
- Enhanced the client's productivity by delivering seven workflows to the client, where they automated processes that used paper before.
Programmer
Senior Sistemas
- Migrated Ext JS from version 2 to version 3. This migration removed some coupling we had on our side of the code.
- Created a language to allow users to make an advanced search on our entities. The search had functions very similar to the ones Outlook provides to search email.
- Contributed to memory and performance improvements on a system that was migrated from Delphi to Java. Since both platforms are very different, we had to dive deep into the JVM to make improvements.
Programmer
Tron Informática
- Created a report generator to allow clients to generate their own reports. It was easier to use than iReports, and it was focused on the business entities rather than the database tables.
Experience
Micro-services Architecture
We can deploy the platform in both cloud and on-premises environments, and it doesn't have vendor lock-in with any cloud provider. Developers deploy new versions using the pipeline provided by the CI Server, using Docker and Kubernetes.
This platform generated hundreds of new services inside the company, and it is allowing all legacy systems to be available in the cloud.
Enterprise Social Network
The social network's primary focus was to share relevant news across the company. Different from an intranet portal, it gives employees the power to interact with the publication. It also allowed them to create the content themselves, which increased engagement by a wide margin.
Early stats collected from the service revealed that engagement increased by more than 200% compared to legacy solutions.
Silo Monitoring Solution
One of our clients sells rice, and they have a very automated environment that could run with very few people working, which means they could benefit from this incentive. To make it happen, they need their silos to be empty by Friday afternoon, so the rice could be processed and store during the weekend. Since verifying the silos were empty was a manual process, it was often not completed by Friday afternoon. On these occasions, they would not be able to produce during the weekend, which did not allow them to take advantage of the lower energy rates.
I made a solution that verified the silo level in real-time and would warn if the silo needed to be emptied by Friday afternoon. We had sensors to measure the percentage of the silo that was filled, and we had a dashboard to keep track of this information. This project saved the client a considerable amount of money since they could produce on the weekends, reducing their energy costs.
Performance and Memory Improvements on Product
This project helped me understand how the JVM works under the hood for subjects like Garbage Collection. It also gave me a lot of experience with tools that analyze the program memory and performance, such as Memory Analyzer and JVisualVM. After the project was finished, the memory and performance were vastly improved, allowing the Java version to replace the Delphi version in production.
This project enabled the company to remove Delphi from their stack, which was a goal they had from a long time.
Education
Specialization in Distributed Software Architecture
PUC - Pontifícia Universidade Católica - Minas Gerais, Brazil
Bachelor's Degree in Computer Science
FURB - Universidade Regional de Blumenau - Blumenau, Brazil
Skills
Libraries/APIs
Node.js, jQuery, WebGL, JasperReports
Tools
Eclipse IDE, Flyway, CircleCI, IntelliJ IDEA, Git, Postman, Kibana, Gulp, NPM, JavaCC, IBM Watson, Jenkins
Languages
HTML, SQL, Java, Java 8, JavaScript, Sass, CSS, TypeScript, Python
Frameworks
Hibernate, Angular, Jersey, JUnit, Spring, AngularJS, Swing, Hapi.js
Paradigms
Agile, Microservices
Platforms
Docker, Amazon Web Services (AWS), Android, Windows, Linux, Kubernetes, New Relic, Oracle, Raspberry Pi
Storage
PostgreSQL, MongoDB, MySQL, Elasticsearch
Other
Data Structures, WSO2, WSO2 API Manager, Internet of Things (IoT)
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring