About

My name is Raphael, and I am software artisan.

Previously, I worked at companies like Viaplay, Spotify, GoDaddy, and Globo.com. I have been a speaker at a few conferences. I am an enthusiast about compilers, WebAssembly, and Rust.

I was responsible for Viaplay’s adoption of the Rust language. I built the starter infrastructure, released the first service for production, and actively worked on developing a Rust culture, which led to the language’s adoption in the upcoming years, along with many other feats. See when it all started.

Currently, I am having fun building a terminal application written in Rust, called Rio.

I also like to create music. If you want to listen, check out Apple Music or Spotify.

Books

Aug 2023
Desmitificando WebAssembly (English title: Demystifying WebAssembly)

Employment

Jan 2021 – Present
Viaplay, Senior Software Engineer
Stockholm, Sweden
Currently working on creating tooling and infrastructure ready for Rust in Viaplay, teaching the language in internal workshops and creating the first Rust microservices in the company.
Aug 2020 – Dec 2020
Spotify, Software Engineer III
Stockholm, Sweden
Core developer of an editor for music publishers and internal content editors.
Feb 2018 – May 2020
GoDaddy, Software Development Engineer III
USA - Remote
Core developer of GoCentral Website Builder.
Jul 2016 – Feb 2018
Globo.com, Software Developer
Rio de Janeiro, Brazil
Globo.com is the web portal of the Brazil-based Globo Organization, the largest media group in Latin America. The website is one of the largest web portals in Brazil, delivering news, entertainment and sports content to 30 million unique users per day.
Oct 2015 – Jun 2016
FLAGCX, Freelance Software Developer
Rio de Janeiro, Brazil
As a startup inside a big company, our small team design, build and maintain products that support Business Intelligence teams automating operational tasks, creating metrics and using data visualization techniques to get business insights.
Oct 2013 – Sep 2015
Videolog.tv, Intern / Junior Developer
Rio de Janeiro, Brazil
Videolog is a Brazilian version of Youtube, it was born before the famous video portal but have not achieved the same success.

Talks

Jul 2019
Nov 2018
Oct 2018
Nov 2016
Using Canvas Components - Graphical Web UK
Oct 2016
500 Days of Open Source - Python Brazil
Jul 2016
The Mighty WebGL - Free Software International Forum
Aug 2015

Projects

Escapades in research and development, ranging from serious research projects to one-off diversions.

Rio
I wrote a terminal called Rio, which is built over WebGPU, WebAssembly and Rust. The WebGPU API makes it suitable for general purpose graphics and compute on the GPU.

Rio terminal is largely used by many developers nowadays, having featured multiple times into Github's trending projects.

Github: https://github.com/raphamorim/rio
Website: https://raphamorim.io/rio
Hacker News: https://news.ycombinator.com/item?id=36057687
Product Hunt: https://www.producthunt.com/posts/rio-terminal

React TV
React TV is an ecosystem for TV based React applications (from the renderer to CLI for pack/build applications).

The development of React TV has stopped and the project is not longer maintained however has been responsible for few hundreds of applications releases for TVs. React TV has also featured on Github trending worldwide project list.

Github: https://github.com/raphamorim/react-tv
Medium: https://medium.com/@raphamorim/developing-for-tvs-with-react-tv-b5b5204964ef

React Ape
React Ape tries to solve same problem that React TV target to fix but uses a different approach. React Ape does not use Document Object Model for rendering, instead uses HTML5 Canvas and WebGL.

The reason behind React Ape choices is that craft a high-performance TV user interface based on DOM is a real challenge, because of limited graphics acceleration, single core CPUs and high memory usage for a common TV App. These restrictions make any user experience targetting 60 frames per second quite tricky on the development side. The strategy is step in the renderer based on a hardware-accelerated canvas.

Github: https://github.com/raphamorim/react-ape
Hacker News: https://news.ycombinator.com/item?id=31492028

Worth mentioning other projects that I have created:

Lucario - A color scheme/theme with more than half million downloads, Github: github.com/raphamorim/lucario.

Native-CSS - A conversor of pure CSS to javascript literal objects or React Style objects. It was used by Google in few projects for many years. Github: github.com/raphamorim/native-css.

Origamijs - Lightweight Library to create using HTML5 Canvas. Origamijs was used by Mozilla and other code schools to teach programming for kids. Github github.com/raphamorim/origami.js.

Kyoto - Programming language LLVM-based designed to build WebAssembly written in C++. github.com/raphamorim/kyoto.


Volunteering

Teacher
Django Girls (2015-2017)

Django Girls is a non-profit organization that empowers and helps women to organize free, one-day programming workshops by providing tools, resources and support.



Teacher
Mozilla (2015-2016)

The Rio Mozilla Club was a social project that seeks to transform Lan Centers in multidisciplinary areas of informal learning and exchange of experience in digital culture. We want to make web users in content producers and not just consumers of media.

We believe digital skills are essential for participation in the 21 century and everyone can take more advantage about the knowledge in the many areas of Internet, Web and content creation.