Rodrigo Madera, Developer in São Paulo - State of São Paulo, Brazil
Rodrigo is available for hire
Hire Rodrigo

Rodrigo Madera

Verified Expert  in Engineering

C++ Developer

Location
São Paulo - State of São Paulo, Brazil
Toptal Member Since
April 19, 2020

Rodrigo is a software architect whose natural curiosity has led him to excel on several fronts, including low- to high-level architecture, handcrafted microcontroller operating systems, and ultra-high-speed stock trading server clusters. Rodrigo is passionate about programming, from low-level device drivers working on a limited kernel computing environment to high-level, robust distributed-workload network services that provide virtually unlimited service to consumers.

Portfolio

Mantis Health, Inc.
C++, Linux, OpenCV, Multithreading, NVIDIA CUDA, USB, Java, Windows, Android...
Verum
Cryptography, Security, Mobile Security, IT Security
Dracal Technologies Limited
C, Python, Docker, CMake, MacOS, Linux, Windows

Experience

Availability

Part-time

Preferred Environment

Architecture, Assembly, Security, Windows, Computer Vision, P2P, Algorithms, Networking, Git, Videos, Python, MacOS, Machine Learning, Linux, JavaScript, Embedded Java, Deep Learning, Data Science, Cryptography, C++, Blockchain

The most amazing...

...things I've done were creating an ARM OS from scratch, building one of my modern C++ libraries, and my patent-pending screencast video codec.

Work Experience

Senior C++ Developer

2022 - PRESENT
Mantis Health, Inc.
  • Rewrote the medical device rendering engine to utilize the hardware's potential fully.
  • Reduced glass-to-glass latency in half on all four displays, making the medical device way smoother for surgeons to use.
  • Took complete ownership of the software components in order to optimize the system entirely.
  • Implemented recording functionalities with simultaneous H.265 hardware accelerated video encoding without impacting the delicate real-time low-latency video feed viewers.
Technologies: C++, Linux, OpenCV, Multithreading, NVIDIA CUDA, USB, Java, Windows, Android, Computer Vision, Realtime, Data Processing, Video Players, Video & Audio Processing

Cryptography/Security Expert

2023 - 2023
Verum
  • Delivered technical product management notes on current system specifications on zero-trust secure video storage and delivery.
  • Corrected use of cryptographic primitives for the secure operation of the system.
  • Provided cryptographic guidelines for both server-side and client-side operations.
Technologies: Cryptography, Security, Mobile Security, IT Security

C and Python Developer

2023 - 2023
Dracal Technologies Limited
  • Adapted low-level USB controller code to be portable for Linux, macOS, and Windows.
  • Adapted code to properly use USB devices under Windows.
  • Created the Python wheel for a project to be universally distributed.
  • Delivered a single codebase that automatically builds for all three supported platforms.
Technologies: C, Python, Docker, CMake, MacOS, Linux, Windows

NVIDIA Jetson Expert

2022 - 2023
Ivy Next Ltd.
  • Implemented a full-motion smooth accelerated video for the medical device.
  • Went from 15 frames per second to 60 fps, with room to spare for future analytical AI.
  • Implemented accelerated H.264 and H.265 encoding functionality.
  • Created vanity features such as on-screen displays, video censorship, and a platform to achieve it easily.
Technologies: C++, NVIDIA CUDA, Video Processing, Image Processing, Linux, App UI, NVIDIA Jetson Nano, C, Video Players, Video & Audio Processing

macOS Application Architect

2022 - 2022
HYAS
  • Created a full macOS application to manage secure DNS services.
  • Merged the existing iOS code into a single codebase for all Apple devices: iPhone, iPad, Apple Watch, and macOS computers.
  • Created a full CI/CD pipeline to automatically build and test products before uploading them to Apple servers for review selection.
Technologies: Swift, SwiftUI, GitHub Actions, Xcode, CI/CD Pipelines, UI Testing, iOS, MacOS, Git, Xcode Server, Model View Viewmodel (MVVM), Endpoint Security, Security, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Desktop App Development, ARM, Cryptography, Networking, Encryption

Chief Software Architect

2020 - 2022
Shared_Studios
  • Created a complete video streaming service from scratch on a custom Linux server that reached 4k resolution at a time when the market alternatives were using 720p at most.
  • Delivered a finished box with the product ecosystem, from build to testing.
  • Helped the UI team build the visual application by providing an API to the system.
Technologies: Linux, C++, Image Processing, Video Codecs, Audio Codecs, FFmpeg, GStreamer, Node.js, React, TypeScript, Computer Vision, GPU Computing, Deep Learning, Machine Learning, Machine Vision, Gentoo, Algorithms, Cryptography, Source Code Review, Back-end, Endpoint Security, C, OpenGL, Cross-platform, Python, Docker, Security, JavaScript, API Architecture, Distributed Systems, C++17, Technical Leadership, MacOS, Code Review, Python 3, Git, Video Streaming, Video Surveillance, Audio Streaming, Amazon Web Services (AWS), Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Embedded Systems, WebRTC, Desktop App Development, 3D Graphics, CMake, Makefile, Swift, SwiftUI, iOS, Networking, Encryption, GNOME, Embedded C++, Embedded Development, Firmware, Technical Product Management, Product Owner, Video Players, Video & Audio Processing

Product Chief C++ Software Architect

2017 - 2020
Online Freelance Network
  • Served as the product chief architect responsible for 360,000 lines of code.
  • Oversaw and approved changes to the product mainline.
  • Created the test plans and automation to guarantee product quality.
  • Owned and managed the product architecture and development.
  • Traveled to customer sites to diagnose and find complex bugs in production datacenters.
  • Built helper tools to find problems at the Linux driver level for big ISPs.
Technologies: Networking, Linux Kernel Drivers, C++, TCP/IP, ISP Servers, Dell Blades, HP Servers, Dell PowerEdge Servers, Intel DPDK, Go, Jenkins, CI/CD Pipelines, Jira, Management, Technical Leadership, Architecture, Algorithms, Performance, Source Code Review, Back-end, Endpoint Security, Cryptography, Linux, C, Cross-platform, Python, Docker, Security, API Architecture, Distributed Systems, C++11, Windows, Interviewing, Code Review, Python 3, Git, Video Streaming, Audio Streaming, Amazon Web Services (AWS), Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Windows Services, WebRTC, TypeScript, Desktop App Development, Rust, CMake, Makefile, Encryption, Technical Product Management, Product Owner, Video Players, Video & Audio Processing

Senior Software Engineer

2015 - 2017
Ortiz Gaming
  • Created a hardware-limit-pushing bonus game level that created a pioneering colorful cinematic experience thanks to leveraging the hardware chipset that was previously unused.
  • Built a new low-level library to leverage the hardware acceleration with OpenGL and video decoding, which opened possibilities for FMV implementations. This required extensive reversing of the obscure chipset on the custom motherboards.
  • Developed a brand new statistical model for bonus credit administration between a swarm of machines. This was a delicious math problem to solve that was exciting from start to finish, especially when sent to production to solve year-old problems.
  • Helped other teams with occasional low-level inquiries at the hardware level.
  • Trained the client-server team for full-stack MEAN development of an experimental new farm of HTTP-based servers. Trained the team for all the components so they could take it over from there.
Technologies: Games, Mathematics, OpenGL, C++, Image Processing, C, Video Codecs, Audio Codecs, FFmpeg, GStreamer, Artificial Intelligence (AI), Machine Learning, Statistics, Probability Theory, Network Protocols, Embedded Linux, Research, Source Code Review, Back-end, Algorithms, Endpoint Security, 2D Games, Cryptography, Computer Vision, Linux, Embedded C++, Cross-platform, Python, Docker, Security, MongoDB, API Architecture, Node.js, Distributed Systems, C++14, Technical Leadership, Code Review, Python 3, Git, Video Streaming, Amazon Web Services (AWS), Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Embedded Systems, WebRTC, Desktop App Development, 3D Graphics, Game Engine Programming, CMake, Makefile, Networking, Encryption, GNOME, Embedded Development, Firmware, Technical Product Management, Product Owner, Video Players, Video & Audio Processing

Senior C++ Architect

2014 - 2015
BSI Security
  • Served as security enhancement hardware-level code developer and reverse engineer as well as Windows Driver developer for security enhancement.
  • Hardened Windows internals using Kernel Mode and User Mode cooperation.
  • Extracted, modified, and reflashed BIOS firmware to install our protections against malware and viruses using the same techniques they use, but against them.
Technologies: C++, Windows, Windows Kernel Drivers, Assembly, x64 Assembly, Assembler x86, Low-level Programming, Low-latency Software, Algorithms, Endpoint Security, Cryptography, Linux, Windows API, C, Embedded C++, Cross-platform, Security, Linux Kernel Drivers, C++11, Technical Leadership, MacOS, Interviewing, Git, Video Streaming, Video Surveillance, Audio Streaming, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Windows Services, Embedded Systems, Desktop App Development, C#, ARM, CMake, Makefile, Networking, Encryption, GitLab, Embedded Development, Firmware, Technical Product Management, Product Owner

Senior Software Architect

2012 - 2015
Odebrecht
  • Worked on a special task force project to integrate the in-house flagship software framework to a 3D modeling environment to give BIM (building information modeling) capabilities to the product.
  • Modeled the project after the requirements of the Brazilian Marines' first nuclear submarine project. The software controls all steps of the building process with real-time 3D visualization and editing of the manufacturing process.
  • Developed the entire submarine solution, with the exception of a module, while having to reverse-engineer Java bytecode due to seriously flawed API documentation.
  • Worked as part of the engineering applications team that wrote custom solutions used by the company projects all over the world.
  • Wrote applications using Windows and C++ technologies for efficient and extremely performant data structures and algorithms that held huge amounts of data.
  • Architected a new framework for engineering applications along with hacking into MFC message loops to create fully dynamic dialogs at runtime.
  • Rewrote an in-house reporting engine, achieving triple the original speed and cutting through the scripting complexity for end-users.
  • Owned and oversaw the coding for common framework components.
  • Created an efficient C++ ORM solution for company-wide use.
Technologies: Oracle, OpenGL, Java, C++, Source Code Review, Back-end, Microsoft Foundation Class Library (MFC), Visual Studio, Windows API, Business Rules Engine, Object-relational Mapping (ORM), QR Codes, Image Processing, Reporting, SQL, Algorithms, Computer Vision, Cross-platform, API Architecture, Distributed Systems, Windows, MacOS, Code Review, Git, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Windows Services, Desktop App Development, 3D Graphics, Game Engine Programming, CMake, Makefile, Swift, SwiftUI, iOS, Networking, Encryption, Product Owner

Senior Software Engineer

2011 - 2012
SCUA
  • Developed low-level system code for protection against malicious code.
  • Ported the main company product to 64-bit Windows.
  • Used malware techniques against them to protect customer computers.
  • Acted fast on client emergencies that couldn't wait for a fix.
Technologies: Assembly, x64 Assembly, C, C++, Windows API, Windows Kernel Drivers, Low-level Programming, Low-latency Software, Algorithms, Endpoint Security, Cryptography, Cross-platform, Security, API Architecture, Distributed Systems, Windows, Technical Leadership, Git, Video Streaming, Video Surveillance, Audio Streaming, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Windows Services, Desktop App Development, C#, CMake, Makefile, Networking, Encryption, Product Owner

Senior Software Engineer

2009 - 2011
Trends Engenharia e Infraestrutura Ltda.
  • Developed an embedded operating system in C and Assembly.
  • Created an extensible "infinite ROM space" technique that leverages the external Flash memory chip as extra ROM space by using IAP reprogramming during code execution.
  • Implemented Starcos and MIFARE faring for bus passenger billing.
Technologies: C, C++, Linux Kernel Drivers, ARM, Operating Systems, Real-time Operating System (RTOS), Low-level Programming, Embedded C, Embedded C++, Qt, Algorithms, Endpoint Security, Cryptography, Computer Vision, Linux, Cross-platform, Python, SQL, API Architecture, QML, Distributed Systems, Windows, Technical Leadership, MacOS, Image Processing, Video Streaming, Video Surveillance, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Windows Services, Embedded Systems, Desktop App Development, C#, Game Engine Programming, CMake, Makefile, Networking, Encryption, GNOME, Embedded Development, Firmware, Product Owner

Software Engineer

2008 - 2009
CMA
  • Co-architected the financial market order management system server in C++.
  • Architected a client-side JavaScript access library.
  • Co-architected the then-unique HTTP-based Ajax Push communication protocol.
  • Helped optimize the server kernel vectorization for high user load.
Technologies: C++, FIX Protocol, Financial Data, Financial APIs, OpenGL, Microsoft Foundation Class Library (MFC), Visual Studio, TCP/IP, Network Protocols, Low-latency Software, Algorithms, Algorithmic Trading, PostgreSQL, Windows API, Stock Market, Stock Exchange, Stock Trading, Fintech, Qt, JavaScript, Boost.Asio, Boost, API Architecture, REST APIs, Endpoint Security, Cross-platform, SQL, Distributed Systems, Windows, MacOS, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Windows Services, Desktop App Development, Cryptography, Networking, Encryption

Software Developer

2007 - 2008
IBM
  • Contributed to the IBM USA Microelectronics monster labeling system team.
  • Processed huge amounts of data traffic using SAP and MQSeries queues for big-volume clients.
  • Designed and developed components and integration programs in C and C++ between SAP servers and custom industrial print queue programs.
Technologies: Unix, Unix Shell Scripting, C, C++, MQSeries, SAP, Back-end, Servers, TCP/IP, UDP, Low-latency Software, Algorithms, Endpoint Security, Cryptography, Computer Vision, Linux, Embedded C++, Cross-platform, Python, Security, SQL, Qt, API Architecture, Distributed Systems, Linux Kernel Drivers, Image Processing, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Windows Services, Embedded Systems, Desktop App Development, CMake, Makefile, Networking, Encryption, GNOME, Embedded Development, Firmware

Software Developer

2006 - 2007
IBM
  • Contributed to the development of the IBM Application Services' IGSB (IBM Global Services Brazil) segment on the Medco PBM account.
  • Developed software for US-based end-users as a member of the B2C team.
  • Developed C++ high server load web components for the Broadvision container.
  • Filtered candidates during interviews during the C++ team expansion phase from 4 to 100+ workers.
Technologies: C++, HTML, JavaScript, VPN, High-load, Servers, Back-end, IBM Db2, Low-latency Software, Code Review, Source Code Review, Subversion (SVN), Interviewing, Algorithms, Capability Maturity Model Integration (CMMI), CMMI, Endpoint Security, 2D Games, Windows API, Cross-platform, SQL, API Architecture, Distributed Systems, Windows, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Windows Services, Desktop App Development, CMake, Makefile, Cryptography, Networking, Encryption, GNOME

Software Developer

2005 - 2006
Telefónica
  • Contributed to the C++ team for GPS-enabled on-site service devices. GPS on mobile devices was new at the time.
  • Worked with the team for an "Uber for technicians" type software that was available in 2005.
  • Helped cut through operation costs by calculating efficient traffic routes for service personnel.
Technologies: Unix, C++, Virtualization, Linux, Mobile GPS, Subversion (SVN), CVS, Mobile, Mobile UI, Windows CE, Windows API, C, Embedded C++, Cross-platform, Python, SQL, Qt, API Architecture, Distributed Systems, Windows, Technical Leadership, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Embedded Systems, Desktop App Development, CMake, Makefile, Cryptography, Networking, Encryption, GNOME, Embedded Development, Firmware

Software Developer and Researcher

2002 - 2005
Insigne Linux
  • Helped maintain the Insigne Linux distribution lifecycles, which had its fair share of novelties.
  • Developed extensive Kernel-level hacking and drivers for all kinds of new hardware devices.
  • Helped develop a six-headed system (one computer, six monitors, and keyboard/mice sets), which was a novelty at the time.
  • Created the secure license management software and algorithm for licensing the Insigne Linux distribution and managing their support contracts.
  • Created the build system for automatic source package to distribution media creation. Basically a CI/CD environment back in 2002.
Technologies: C++, Linux Kernel Programming, Linux Kernel Modules, Linux Kernel, PostgreSQL, MySQL, PHP, Bourne Shell, Shell Scripting, Package Distribution, Virtualization, Low-level Programming, Algorithms, Endpoint Security, 2D Games, Cryptography, Computer Vision, Linux, C, Embedded C++, OpenGL, Cross-platform, Python, Security, JavaScript, SQL, Qt, API Architecture, Distributed Systems, Linux Kernel Drivers, Technical Leadership, Code Review, Source Code Review, Image Processing, Video Streaming, Video Surveillance, Software Architecture, Software System Architecture Development, Solution Architecture, Data Architecture, Visual Studio, Embedded Systems, Desktop App Development, Game Engine Programming, CMake, Makefile, Networking, Encryption, GNOME, Embedded Development, Firmware, Product Owner

Cryptox | OpenSSL C++ Wrapper

https://github.com/madera/cryptox
A simple header-only C++ OpenSSL wrapper for C++03 and up. Throughout my 20-year-long career, I have created wrappers and code utilities that have been used time and time again. I am putting them into public repositories to help me organize my code and see if it helps other developers. As a bonus, people can contribute and make the library better.

Moneta | Serialization and ORM for C++03 and Up

https://github.com/madera/Moneta
Moneta is a serialization and ORM library created with the intent to become a Boost library. It was halted after some time, but the code serves as a showcase of C++ techniques that were used to solve that problem.

Languages

Assembly, Embedded C, Embedded C++, C++, C++17, C++11, C++14, C++98, Python, C, Python 3, Swift, C#, Java, Assembly Language, SQL, Go, JavaScript, QML, TypeScript, x64 Assembly, Assembler x86, HTML, PHP, Bourne Shell, Rust

Frameworks

Boost, SwiftUI, Qt, Qt 5, GStreamer, OpenCL, .NET, Business Rules Engine, Realtime, NativeScript

Libraries/APIs

OpenCV, Windows API, Linux API, OpenGL, Sockets, FFmpeg, Libav, Node.js, WebRTC, Xcode Server, React, Microsoft Foundation Class Library (MFC), REST APIs, Vulkan, OpenSSL

Tools

Git, Visual Studio, CMake, Makefile, GNOME, Subversion (SVN), Docker Hub, Jenkins, Jira, GitLab, Xcode, Intel DPDK, MQSeries, VPN, CVS, OpenSSH

Paradigms

Cross-platform, Requirements Analysis, Real-time Systems, Unit Testing, Desktop App Development, Data Science, API Architecture, Model View Viewmodel (MVVM), Management, Object-relational Mapping (ORM), CMMI

Platforms

MacOS, Windows, Linux, Embedded Linux, iOS, Kernel, Blockchain, Docker, Amazon Web Services (AWS), NVIDIA CUDA, Oracle, Kubernetes, Unix, Mobile, Windows CE, Android

Storage

JSON, MongoDB, PostgreSQL, Berkeley DB, Dell Blades, MySQL, HP Servers, IBM Db2

Other

Networking, Distributed Systems, Embedded Systems, TCP/IP, Non-blocking I/O, Cryptography, Computer Vision, Algorithms, Low Latency, Low-latency Software, Low-level Programming, C++20, Network Protocols, Boost.Asio, Video Codecs, Technical Leadership, 2D Games, IT Networking, Endpoint Security, Optimization, Code Architecture, Architecture, APIs, Library Architecture, Videos, Multithreading, GUI, Real-time Computing, Code Review, Source Code Review, Back-end, Real-time Operating System (RTOS), Embedded Software, Embedded Hardware, Real-time Embedded Systems, Embedded Development, Embedded Controllers, Digital Electronics, Image Processing, GPU Computing, Gentoo, Performance, Video Streaming, Video Surveillance, Software Architecture, Software System Architecture Development, Data Architecture, Solution Architecture, Windows Services, Video Processing, Firmware, 3D Graphics, Game Engine Programming, Encryption, Technical Product Management, Product Owner, Video Players, Video & Audio Processing, Deep Learning, P2P, Linux Kernel Drivers, Machine Learning, Fintech, 3D Games, Games, Financial Markets, Financial Data, Financial APIs, Financial Market Data, Casinos & Gaming, Netcode, WebSockets, Interviewing, CI/CD Pipelines, Audio Codecs, Machine Vision, Artificial Intelligence (AI), Windows Kernel Drivers, ARM, Audio Streaming, Device Drivers, OpenCL/GPU, Embedded Java, Mathematics, Education, Financial Data Analytics, Construction, Construction Engineering, GitHub Actions, UI Testing, ISP Servers, Dell PowerEdge Servers, Statistics, Probability Theory, Research, QR Codes, Reporting, Operating Systems, FIX Protocol, Algorithmic Trading, Stock Market, Stock Exchange, Stock Trading, Unix Shell Scripting, SAP, Servers, UDP, High-load, Capability Maturity Model Integration (CMMI), Virtualization, Mobile GPS, Mobile UI, Linux Kernel Programming, Linux Kernel Modules, Linux Kernel, Shell Scripting, Package Distribution, Mobile Security, Transport Layer Security (TLS), HTTPS, App UI, NVIDIA Jetson Nano, USB, Data Processing

Industry Expertise

Healthcare, Security, IT Security

2002 - 2005

Bachelor's Degree in Computer Science

Universidade Presbiteriana Mackenzie - São Paulo, Brazil

JUNE 2019 - PRESENT

Machine Learning

Coursera