Joao Vital, Developer in Salvador - State of Bahia, Brazil

Joao Vital

iOS Developer

Salvador - State of Bahia, Brazil
Toptal Member Since
August 24, 2017

Joao is a seasoned software engineer with a passion for user experience. He began his journey as a Java developer, but eventually, he transitioned to iOS development because it allowed him to put his focus on user experience at the forefront. With a keen interest in software architecture and good instincts to avoid overly complex solutions, Joao thrives in team environments making him a valuable asset to any project.

Joao is available for hire
Hire Joao


Freelance Clients
Sketch, GPUImage, Objective-C, iOS, Swift, User Experience (UX), Swift 4, Xcode...
TestFlight, Ant, Apache Maven, Git, Swing, Java, Objective-C, iOS...
GNOME, GTK+, Java, Linux


Salvador - State of Bahia, Brazil



Preferred Environment

Linux, MacOS, Eclipse, Xcode

The most amazing...

...piece of software I've created is a framework of components for building Java apps using the Observer pattern and many new ideas at the time.

Work Experience

2012 - PRESENT

Software Developer

Freelance Clients
  • Developed a portfolio of iOS multimedia and entertainment apps using Swift and Objective-C. Leveraged advanced libraries like AVFoundation, GPUImage, Hero Transitions, and Core Image to bring ideas to life.
  • Learned what it takes to build exceptional mobile user experiences and developed a keen eye for design, using tools such as Sketch and Figma.
  • Improved my knowledge about marketing apps through marketing networks.
Technologies: Sketch, GPUImage, Objective-C, iOS, Swift, User Experience (UX), Swift 4, Xcode, Cocoa Touch
2005 - 2021

Software Developer

  • Worked on the first mobile apps created for the Brazilian IRS. Faced challenges such as defining the initial project architecture, integrating different platforms and codebases, and refactoring legacy code while mentoring a team of four developers.
  • Used the observer pattern and automatic data binding to build a framework of reusable components that made developing apps faster and easier and wrote a paper about it.
  • Contributed to the development of multiple government solutions, including the tax declaration software used by 30 million taxpayers.
  • Mentored teams in different parts of the country, attending to their project's demands and helping them figure out the best way to handle them.
  • Developed a solution for replacing JavaHelp with PDF files integrated with the app while keeping changes to the original codebase at a minimum. This new solution positively impacted the project's budget and productivity.
  • Wrote unit tests and integration tests in Swift and Java.
  • Built a custom-made solution that provides auto-update for Java Desktop apps.
  • Maintained an internal website with best practices for my team's projects.
  • Installed and customized TWiki to be used as a documentation tool at the company.
Technologies: TestFlight, Ant, Apache Maven, Git, Swing, Java, Objective-C, iOS, Desktop App Development, Desktop, Software Design, Leadership, Model View Viewmodel (MVVM), Model View Presenter (MVP), Alamofire, Core Data, J2ObjC, XCTest, User Experience (UX), Swift 4, Xcode, Cocoa Touch
2005 - 2007

Open-source Developer

  • Contributed with code to the GNU Classpath project.
  • Contributed to the Java-Gnome project and wrote documentation for it.
  • Managed the improvement of the Java-Gnome website and developed a Linux distro based on Knoppix.
  • Presented at Free Software events about the Java-Gnome and Autopackage projects.
Technologies: GNOME, GTK+, Java, Linux


IRPF Application

Worked on the IRS Tax Declaration app for the Brazilian government, used by 30 million people. I was the developer responsible for implementing the project's initial architecture and subsequent improvements. Throughout this project, I faced exciting challenges, such as handling different codebases and platforms, like iOS, Android, Web, and Desktop. Additionally, I mentored a small team of developers, helping them grow and succeed.

Tinge | Retro Filters
Tinge is an app for filtering photos and videos with color. The entire app and all its filters were created by myself, inspired by old-school design and fashion aesthetics.

Apple has listed Tinge as an artistic app inside the App Store's photo and video page.

Soundgramr was an exciting idea I tried to develop. It was a camera app that recorded the environment's sounds as users snapped pictures. Later, users could listen to the images and tell a story through these "soundgrams."

The app ended up being the object of study for a doctoral thesis titled Escuta, Gravação, Plataforma Web: Fazer Mapa Sonoro Como Conjunto de Práticas de Mídia, Aragão, 2018, UNISINOS.

More about the app:

Reverse Music Player

A fully featured backward player. Record or play songs from the music library backward to find hidden messages or just have fun. I implemented the backward functionality from scratch by manipulating the song file with AVFoundation.

Sweet Photo Booth
A photo booth app for iPhone. I created a fun and playful camera application with a joyful aesthetic to be used with friends. I built the app from the ground up, focusing on design and user experience.

Rearrange | Photo Collage
Rearrange was built upon iOS aesthetics to deliver a unique idea: a collage app with only one screen. Rearrange lets users intuitively create and modify photo collages using gestures and motion effects.

When I started developing Rearrange, there was no such app as Layouts for making photo collages, so this was an exciting new idea at the time.



Objective-C, Java, Swift, Swift 4, SQL, C


Swing, Cocoa Touch, UIKit, Core Data, XCTest, MapKit


iOS, Linux, Eclipse, MacOS, Firebase


User Experience (UX), Usability, Software Design, Architecture, Ant, AVFoundation, Component Libraries, iPad, Leadership, Shell Scripting, Computer Science


GPUImage, Proguard, JasperReports, Firebase iOS SDK, Flurry, REST APIs, Core Image, Alamofire


Xcode, Eclipse IDE, GTK+, GNOME, Apache Maven, Git, HSQLDB, Postman, Apache Ant, Sketch, TestFlight, J2ObjC


Desktop App Development, Model View Viewmodel (MVVM), Model View Presenter (MVP), Agile Software Development


Microsoft SQL Server, MySQL


2000 - 2004

Bachelor's Degree in Computer Science

Universidade Salvador (UNIFACS) - Salvador, State of Bahia, Brazil