Hey. I’m Teo.
I tackle software problems with design and code.
A little about me
I enjoy coding complex Web applications in React, with a reactive architecture for the business logic. Over the years, I have gained a ton of experience using Redux, but I became a MobX fan when I used it for the first time.
In the last year I've brought my Web building experience to the native land, and launched Clepside and Hyperfocus 2.
Just recently, I've also started a macOS, keyboard-first, GPT client app, Snowballs, as an Open Source project.
I like the automation XCode brings, and the declarative nature of Swift. I believe SwiftUI is something we have to integrate if we want to move fast, but it always comes at the cost of degraded performance.
Crafting design systems feels like building Legos to me. I strongly prefer using something like Vanilla Extract over TailwindCSS for complex projects, as I'm a full TypeScript nerd. Styled Components also works, but I like working with static stylesheets over CSS-in-JS due to their CSP-able nature.
I find using static software to be a clear approach, rather than relying on dedicated servers and caching for everything. It's something we made great use of at Clearhaus and it always simplified deployments. You're reading this on a static website hosted on Cloudflare.
Since we're still talking frontend and UX, I should mention I'm well-versed at designing in Figma. It comes naturally to me after participating in design contests for years and having to stay on top of the game.
This led me to put a lot of effort over the years into broadening my design toolbox, gaining experience with Blender, Framer, Origami and Principle. At 20 I was awarded an Awwwards Honorable Mention for my 🎨 design portfolio.
Talking to users and using analytics to build products that customers love is something I'm inclined towards, my experience in the last years made me a big believer in the LEAN startup methodology and launching early.
My high school education has been mainly focused on Algorithms and C++, with Java and bits of C# and Python experience in college.
Although I never used these professionally, the foundation has stuck with me. I work mostly with start-ups, and they usually favor agility and versatility over rigidity and permanency.
As a back-end programming language and for CLI tooling, I prefer Go. I love its early returns pattern, its asynchronicity with goroutines and channels. To me, Go is programming minimalism in a nutshell.
I started developing microservices in NodeJS, before async/await was a thing and I still remember the callback hell that promises entailed. Until async/await came around and made life so much easier.
The microservices architecture is what I'm most comfortable with. I've built Clepside's entire infrastructure on top of GKE with gRPC to the core, reaching very fast development and deployment workflows for a 1-person team.
Working in small agile teams is what I'm good at, and I do think great software can be built remotely with the right workflows in place.
In the end, no matter what, nothing beats the in-person brainstorming sessions.
I might’ve come off as opinionated, but the truth is I’m quite tech-agnostic. I can adjust to any workflow and build with limited resources.