Tiago Lopes Ferreira

Tiago Lopes Ferreira

Mentor
Rising Codementor
US$20.00
For every 15 mins
ABOUT ME
Frontend and Javascript Engineer, Blockchain Enthusiast, Speaker
Frontend and Javascript Engineer, Blockchain Enthusiast, Speaker

I am an enthusiastic software engineer, passionate about ECMAScript and frontend technologies. My primary focus is to write and breathe clean code. I strongly believe that code is written primarily for humans and then machines. I am a big fan of rapid iteration and hypothesis testing. My skills are in product design, planning, development, and debugging.

I am also following my curiosity on blockchain. Trying to read everything I can about the subject. Expect me to be very inquiring and interested. My focus is on trying to understand why a business would use blockchain. And if so, where do tokens come in. I love the fact that we are just seeing the tip of the iceberg.

Portuguese, English
UTC (+00:00)
Joined February 2018
EXPERTISE
5 years experience
I have been using JavaScript for years. I first fell in love with JavaScript for its simplicity for newcomers. However, years have passed...
I have been using JavaScript for years. I first fell in love with JavaScript for its simplicity for newcomers. However, years have passed and I come to understand that JavaScript is one of the most tricky languages I have ever worked with (also one of the most amazing). With JavaScript's freedom comes a lot of responsibility, which can make our experience unbelievable or extremely painful. @getify does an amazing job on his “You Don’t Know JS” series on showing JavaScript as it is. While growing with JavaScript, my primary focus has been to empower its use. For that, I follow and explore each ECMAScript version by learning the introduced features and understanding why and how to use them within projects. Not forgetting about JavaScript beauty of functional programming. Because JavaScript is such a beautiful language I love to use a few tricks in order to save a few lines of code. But expect me to always keep in mind that code needs to be readable and maintainable.
5 years experience
AngularJS is one of the best frameworks when it comes to frontend development. I have been using AngularJS for years and find it amazing ...
AngularJS is one of the best frameworks when it comes to frontend development. I have been using AngularJS for years and find it amazing how easily we can create a project from scratch. My expertise with Angular is with its first version (the one that still uses vanilla JavaScript, not Typescript). The two-way data binding is something truly remarkable. However, something that can bring a huge downside when it comes to performance. Therefore, Angular needs to be taught and used following its best practices. My role as an Angular developer has been to explore its capabilities without compromising performance (or the lest possible). I have used Angular both in small and large projects. I have also wrote my own code snippets to evaluate the performance of an Angular’s application.
5 years experience
As a frontend developer, there is no way to skip HTML/CSS, especially when you love to “touch" what you do. I see HTML as the browser’s l...
As a frontend developer, there is no way to skip HTML/CSS, especially when you love to “touch" what you do. I see HTML as the browser’s language. The code must be read the same way we read a document with its head, body, and sections.  I have been working with HTML/CSS in a way that we can take the most of its capabilities while keeping it simple and readable. HTML, CSS, and JavaScript come together and my understanding on these can help you to overcome floppy bugs.
5 years experience
My passion for wild development starts before my passion for strong development. However, once I discovered the power of testing there is...
My passion for wild development starts before my passion for strong development. However, once I discovered the power of testing there is no other way to do it. I am a huge fan of testing. When it comes to quality assurance, maintenance and project success you must have a good suite of tests. My experience with testing goes from unit to functional testing. I have been using Karma with Jasmine for building unit tests and Protractor for functional testing. My view for testing follows the pyramid view, where unit tests are the base (with the highest number of units), followed by functional and integration tests.
1 year experience
I am quite new to blockchain. My curiosity started with Ethereum blockchain and goes on trying to read everything on the subject. I find ...
I am quite new to blockchain. My curiosity started with Ethereum blockchain and goes on trying to read everything on the subject. I find it amazing that we can achieve a distributed consensus on a rewarded network. My interest starts with Bitcoin network, mainly its transactions, blocks, and PoW. With the lightning network being tested I am very excited with the potential of having a second layer on top of the Bitcoin network. As for Ethereum I have been exploring solidity and some of the dApps being developed. I am loving right now all the different algorithms being used to reach consensus.

REVIEWS FROM CLIENTS

Tiago's profile has been carefully vetted and approved as a Codementor. Connect with Tiago now, and leave a review for them once you're done!
EMPLOYMENTS
Frontend Developer
Paddy Power Betfair
2015-01-01-Present
As a software engineer at Paddy Power Betfair I was involved in building the best experience for Betfair Mobile Exchange as a frontend de...
As a software engineer at Paddy Power Betfair I was involved in building the best experience for Betfair Mobile Exchange as a frontend developer. We have adopted AngularJS framework for the frontend and NodeJS for the backend. I was exposed to several challenges on achieving the best performance (either on requests handling, JavaScript compilation and HTML painting). I was a strong advocate on the adoption of ECMAScript new versions (mainly ES6 and ES7.)  And a promoter on the adoption of RxJS from Ben Lesh and the new paradigm of react programming. However, I do find RxJS challenging to debug and test. I was also lucky to be able to adopt the Redux Architecture into Betfair Mobile Exchange. Having a unique source of truth when it comes to betting is extremely important and powerful. As a software engineer, I shared the challenge of bringing something new into a legacy product. With good fortune, I was able to give some talks and keep my passion for written blog posts.
HTML/CSS
Node.js
Angular
View more
HTML/CSS
Node.js
Angular
Jasmine
Karma
Es6
JavaScript
RxJS
Redux
View more
Sofware Engineering
Microsoft
2013-09-01-2014-11-01
At Microsoft, I was a software engineering intern in the Dynamics NAV Infrastructure Team. The team worked using Agile and had a strong f...
At Microsoft, I was a software engineering intern in the Dynamics NAV Infrastructure Team. The team worked using Agile and had a strong focus on developing high-quality and low-maintenance software solutions to support developers. My responsibilities were around system maintenance and development. This included the development of Windows PowerShell modules, the definition and writing of testing cases, and the creation and maintenance of virtual machines. I was lucky to have the chance to empower developers work, especially on designing and developing the infrastructure for running developers’ code and tests.
C#
PowerShell
ASP.NET
View more
C#
PowerShell
ASP.NET
View more