Skip to content

Instantly share code, notes, and snippets.

View ronanrodrigo's full-sized avatar
:shipit:

Ronan Rodrigo Nunes ronanrodrigo

:shipit:
View GitHub Profile

Test trip

Some markdown content here.

{
"$schema": "https://raw.githubusercontent.com/jsonresume/resume-schema/v1.0.0/schema.json",
"basics": {
"name": "Ronan Rodrigo Nunes",
"label": "Principal Software Engineer | Mobile Platform Architecture & Observability | Swift/iOS • Go • TypeScript/React Native | Ex-Uber, Nubank & PicPay",
"image": "https://gravatar.com/avatar/7143c2ed3e3f29cbc734dddaec811420bf6dcba29a1ed4e08abdea079e57ea72.png?size=512",
"email": "ronan.nunes@me.com",
"phone": "+55 47 999 130 202",
"url": "http://ronanrodrigo.dev",
"summary": "Principal Software Engineer with 15+ years of experience in mobile platforms, systems design, and developer productivity. Leads platform architecture across iOS, Android, and React Native, with hands-on expertise in Swift, Go, TypeScript, and OpenTelemetry. Recently at PicPay, designs scalable observability services, low-code delivery platforms, and cross-platform foundations that help product teams ship with greater autonomy. Previously contributed to safety-critical
var channels = "";
ytInitialData
.contents
.twoColumnBrowseResultsRenderer
.tabs[0]
.tabRenderer
.content
.sectionListRenderer
.contents[0]
.itemSectionRenderer
@ronanrodrigo
ronanrodrigo / zoom.sh
Last active April 16, 2020 18:41
This way, a meeting notification through Zoom Client, will appear 1 minute before meeting start. This script is necessary because through the UI settings, this custom threshold isn't available to choose (only 5, 10 and 15).
# 1. Enable Google calendar sync
# 1.1. Access https://zoom.us/profile;
# 1.2. Enable "Calendar and Contact Integration";
# 2. Quit Zoom client;
sqlite3 ~/Library/Application\ Support/zoom.us/data/zoomus.db << EOF
UPDATE zoom_kv SET value = "true" WHERE key = "com.zoom.conf.enable.remind.meeting.time";
UPDATE zoom_kv SET value = 1 WHERE key = "com.zoom.conf.threshold.to.remind.meeting.time";
SELECT key,value FROM zoom_kv WHERE key = "com.zoom.conf.enable.remind.meeting.time";
SELECT key,value FROM zoom_kv WHERE key = "com.zoom.conf.threshold.to.remind.meeting.time";
@ronanrodrigo
ronanrodrigo / FoodDetailViewControllable.swift
Last active September 10, 2019 06:45
Uncoupled ViewControllers using Storyboard and UIStoryboardSegue
protocol FoodDetailViewControllable {
func bind(viewModel: FoodViewModel)
}
class FoodDetailViewController: UIViewController, FoodDetailViewControllable {
func bind(viewModel: FoodViewModel) {
title = viewModel.name
}
// Sources/ViewState.swift
// Given an enum with some cases
protocol EnumPoetry {}
enum ViewState<T>: EnumPoetry {
case start(T)
case loading
case completed(Int, String)
}
@ronanrodrigo
ronanrodrigo / 1.swift
Last active June 2, 2020 17:39
Different way to test reference cycle
import XCTest
final class Person {
var dogs: [Dog] = [] {
didSet { dogs.forEach { $0.onBark = { [weak self] in self?.feed() } } }
}
func feed() { }
}
### Keybase proof
I hereby claim:
* I am ronanrodrigo on github.
* I am ronanrodrigo (https://keybase.io/ronanrodrigo) on keybase.
* I have a public key ASBl5GWJBlc-BKcgVvsvoma7zEi2-aULh8_3Qcga6rYBqQo
To claim this, I am signing this object:
@ronanrodrigo
ronanrodrigo / 0_reuse_code.js
Created August 1, 2017 16:23
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console
{"down": true}