Skip to content
View pmrcunha's full-sized avatar

Block or report pmrcunha

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
pmrcunha/README.md

Hi there πŸ‘‹

Glad you're reading this instead of LinkedIn!
I suppose you heard of me somewhere and are trying to figure out what I'm all about.
So I'll try to tell you. πŸ˜ƒ

How I met your monad

I used to be an architect, and helped design some very nice offices! In architecture school, I learned to code, and believe it or not, Lisp is my first language πŸ™ƒ. When I graduated, I decided I would build my own portfolio website. I never finished that website, but I also never stopped learning, and here I am still. After a couple of years, what was hobby became career (and what was career is still a hobby today).

I got my start at Trustpilot, where curiosity paid off, as given my knowledge of React, I got to join the newly formed Platform Team. In 2 years, we worked on 3 major initiatives - migrating from AngularJS to React, building a design system, and migrating to a microsites architecture. It's where I learned that good (software) architecture depends as much on the technical requirements, as on the organization that will have to adopt it.

I left Trustpilot to pursue an old dream of building better tools for architects. Besides trying to design a complex product from scratch, I got to spend more time with the language I had been playing with - Rust. I mostly built POCs to get to know what I didn't knew (A LOT), and built very basic versions of a rendering engine, an interpreter for a DSL, a version control system, and an ECS (Entity Component System). Also spent more time than I should have exploring build systems and web assembly πŸ˜…

Eventually it became time to get a job again, and I joined Dixa, in the AI team. Long story short(er), I started building the frontend for prototypes of AI features, and found myself leading the team. We had way more need for people to setup services and pipelines to put AI models in production than to build UI, so that's what I learned and got my hands on. It's also when I started to think more about the processes and approaches that make a team productive, while its members stay happy and keep growing, which has been a big part of my career to this day.

(you were expecting me to tell you how I spent a year in a cave writing Haskell, weren't you? Sorry to disappoint πŸ˜„)

What I'm up to these days

My latest interests and personal project time are dedicated to increasing freedom and privacy - in particular I've been working on projects related to the nostr protocol. I also run an home server (or two πŸ˜›), and build some apps for my own consumption, to replace some cloud service I was mindlessly relying on. And naturally, I've been seeing how much I can convince some friendly AI agents to help me with these endevours. πŸ€–

Stack

I spend my days writing Typescript, and primarily use React in the frontend. Started some projects with HTMX, but the vast React ecosystem always ends up dragging me back. πŸ˜… When I need more performance, or for a compiler to tell me to be better, I go for Rust. Also built some smaller projects in Go and found it enjoyable. For the AI stuff, I naturally had to use Python, which I found very easy to pick up - except for the dependency management that gave me loooots of headaches.

I'll likely focus more on Rust in the future, and would like to learn C at some point, since so much of our world runs on it.

πŸ“« How to reach me

Just shoot me an email: [email protected]

Pinned Loading

  1. nostr-explorer nostr-explorer Public

    A tool to fetch and explore nostr events

    TypeScript

  2. blog-tool blog-tool Public

    A CLI tool to convert blog posts written in markdown into other formats

    Rust

  3. reminders reminders Public

    Todos and lists app with file based data storage

    TypeScript

  4. food-tracker food-tracker Public

    App to track what I ate everyday

    CSS

  5. bookstr bookstr Public

    Decentralized social media for book readers.

    TypeScript

  6. sats-converter sats-converter Public

    Quick and dirty CLI tool to convert sats to euros and euros to sats.

    Rust 1