Hi! I am Rafael! 👋

I build solid, scalable, accessible and responsive digital experiences for the web

Rafael Fernandes photo

About

I am a Senior Software Engineer

Experience

With more than 20 years of experience in the software development field, I bring a wealth of practical knowledge to every project.

Collaboration and Communication

I don't just write code: I excel in teamwork and communication. I've worked closely with designers, product managers, and fellow engineers, understanding the value of clear communication and collaboration.

Problem-Solving Skills

I thrive on tackling complex technical challenges. I have a strong analytical mind and a deep understanding of algorithms, data structures and different technologies, allowing me to solve problems efficiently and find innovative solutions.

Continuous Learning and Adaptability

The tech industry is ever-evolving, and I embrace this by staying current with the latest trends, tools, and best practices. My mindset drives me to continuously learn new technologies and adapt my skills.

React.js logoReact native logoNext.js logoNode.js logoFlutter logoTypescript logoJavascript logoSass logoPython logoDjango logoMongoDB logoPostgreSQL logoFirebase logoGoogle Cloud Platform logoAWS logo

...and more!

Experience

Senior Software Engineer · Fullstack Labs (2022 - Present)

As a Senior Software Engineer at Fullstack Labs, I am contributing to the development of high-quality web and mobile software products for renowned clients, such as Fueled and Encyclopaedia Britannica.

React.js
Next.js
Node.js
Javascript
Typescript
Jest
Sass
Bootstrap
Python
AWS Lambda
Serverless
PostgreSQL
CTO & Lead Developer · ImaginaKIDS (2017 - 2022)

ImaginaKIDS is an EdTech startup which provides tools for students to create their own books. Those stories can be distributed as ebooks or can be printed. Our startup has improved the reading and writing skills of 7k+ students and 100+ teachers. More than 150k pages were created using our platform.

React.js
React Native
Node.js
Javascript
Typescript
Jest
Express
Firebase
Swift
Redis
Socket.IO
Python
Django
GCP
Professor, Researcher and Tech Lead · Federal University of Maranhão (UFMA) & Federal Institute of Technology of Maranhão (IFMA) (2006 - 2022)

At UFMA and IFMA I have contributed to the formation of hundreds of students, teaching in undergraduate and post-graduate Computer Science courses, teaching in both basic courses, such as "Algorithms and Data Structures" and "Object Oriented Programming", and also in technical courses, such as "Development of Mobile Applications" and "Distributed Systems". Additionally, I have acted as manager, supervisor, consultant and tech lead on several Research, Development & Innovation software projects, using different technologies.

React.js
Node.js
Express
Javascript
Typescript
Firebase
MySQL
Socket.IO
RabbitMQ
gRPC
Web Developer · Federal University of Maranhão (UFMA) (2004 - 2006)

I have worked at the UFMA's Information Technology Center as a Systems Analyst and Web Developer, supporting the university's website and other web systems

PHP
J2EE
JSP
JSF
JPA
Web Developer · Foundation of Research Support of the State of Maranhao - Fapema (2003 - 2005)

I have worked as a web developer, implementing and maintaining the Fapema's website and a web information management information system

PHP
MySQL
View Full Résumé (PDF format)

Some Projects

ImaginaKIDS

About

ImaginaKIDS is an iOS application, designed specifically for iPads, used by students to create their own digital books. The stories created using the app can be printed, transforming them to real books. The application allows the students to create multiple books, to set their titles, to include customized characters, scenarios, balloons and text boxes.

Technologies

React Native, Firebase, Native modules (Swift)

ImaginaWeb

About

With the advent of the pandemic, many schools had to stop their activities, making it impossible, for the students, to use the school iPads. A web version of the platform was developed, allowing students to use their personal computers to build their stories. The web version offered the same features as the app version, but with an increased product scalability.

Technologies

React.js, Firebase (Authentication, Database, Storage), Redux, Bootstrap

ImaginaShopping

About

ImaginaShopping is a responsive e-commerce web platform that can be used by students' parents to buy different book packs, apply discount codes and make payments with credit card and Pix (a Brazilian automatic payment method). Books purchased through ImaginaShopping are processed and transferred to partner graphical services for printing and shipping.

Technologies

React.js, Firebase (Authentication, Database, Storage), Cloud Functions, Redux, Bootstrap

SHELDON

About

In order to simplify the process of generating books and sending them to partner graphic services, SHELDON (Sistema de Hospedagem e Exportação de Livros Digitais ONline - Online Digital Books Export and Hosting System) was developed. This is an internal system, used by the ImaginaKIDS operational team, to generate PDF files of the stories and export them to a file server.

Technologies

React.js, Bootstrap, Firebase, Node.js, Express, Socket.IO, BullMQ, Redis

LEONARD

About

After generating the book files in PDF format, the next step involves sending them for printing. To streamline this process, it's essential to export metadata containing comprehensive details about the books. This includes information such as the book titles slated for printing, the desired print quantity, format, paper type, as well as delivery and billing info. LEONARD (Logística Eletrônica para Organização, Navegação, Aprovação, Remessa e Distribuição de livros - Electronic Logistics for Organization, Navigation, Approval, Shipping and Distribution of books) is an internal ImaginaKIDS platform that integrates data coming from some external services (in CSV format) and the book files generated by SHELDON. Following this, LEONARD facilitates the creation of the books metadata in JSON format, organizing and renaming all files before uploading them to the graphical service. So, LEONARD is the perfect company for SHELDON! 😁

Technologies

Python, Django, SQLite, JQuery, Bootstrap

GiTrend

About

GiTrend is a web application that allows to search for trending repositories and users in GitHub. Through this application it is possible to search for trending repositories by text (title, description or readme), and by programming language. It is possible to tag some of the repositories as favorites, or filter only the favorites. A list of trending users is also shown.

Technologies

React.js, Styled Components, Redux, GitHub API

Source code

Modos

About

Modos is an m-learning platform for building and sharing microlearning tracks. Modos is a mobile application that allows teachers to share different types of media with the students (such as images, videos, audios, and text), composing a learning path to be followed by them.

Technologies

Flutter, Firebase

Node.js Express Auth API

About

An open source authentication API that implements a refresh token rotation scheme (based on JWT tokens) and token reuse detection using Node.js, Express, Passport and Typescript. This project has the following functionalities: user registration, sign in/sign out, refresh access tokens, retrieve and update user profiles, admin features (create new accounts, retrieve complete user lists, retrieve and update individual users, delete users), protected routes, and retrieve sample data with pagination. It can be used as an starting point for studying about the authentication process by both frontend and backend developers. All data is stored in a MongoDB database and the token invalidation uses Redis database. Important: the live preview API is hosted on Render, a platform that enforces a 15-minute service interruption. Consequently, accessing the live preview service might involve some waiting time as the service needs to restart during these interruptions.

Technologies

Node.js, Express, Express Validator, Passport, Swagger, MongoDB, Redis, Docker

Source code

Documentation

Web3 Contract Vulnerability Detector API (POC)

About

A simple POC (Proof of Concept) API that uses CLI tools for inspecting and detecting security issues on Web3 Smart Contracts written in Solidity. The API receives a Solidity source code as input and, after running some tools on the received code (currently the Slither and Mythril are used), the API returns the vulnerabilities found by the tools. Since it is just a POC, only two vulnerabilities are supported: Unchecked Call Return Value (SWC-104), and Unprotected SELFDESTRUCT Instruction (SWC-106). This API also includes a suggestions API, that uses OpenAI ChatGPT API to try to find suggestions for improving the security of the input Solidity source codes.

Technologies

Node.js, Express, Swagger, OpenAI ChatGPT API, Docker

Source code

Get in touch

Github logo
LinkedIn logo
Twitter logo
Email logo

Developed with 💜 by Rafael Fernandes Lopes. © Copyright 2023, All Rights Reserved.