skills.md
My skills and tools
I'm a software engineer, so my skills are mostly related to coding, but that doesn't mean I lack experience in other fields. Most of my experience comes from building my startup. In the end, skills are just tools, and I believe it's important to learn what fits best for what I want to build.
Here are my skills, in order of relevance:
Typescript
My language of choice for the web.
I use it daily for all my web projects (within the framework of choice).
In fact, this very website is built with Typescript (Next.js). (JavaScript is automatically included)
Next.js
My go-to framework for the web, the developer experience is just great, especially with Vercel.
Again, this very website is built with it.
React.js
My first web framework.
I usually use Next.js now, but for simple static websites, I might still prefer React.
React Native
Being able to build mobile apps with a single codebase and familiar syntax?
Sign me up!
Unless something highly specific requires native development, this is my tool of choice for mobile.
Solidity
There's really not much of a choice when developing smart contracts on EVM-compatible blockchains.
I've used Solidity to develop quite a few smart contracts for my startup.
It's fun!
Cloud providers
I've tried quite a few cloud providers, so it doesn't make sense to write a full paragraph on each one. Here's a quick rundown:
Google Cloud Platform (GCP): My startup's entire infrastructure is hosted on GCP. Honestly, while it's a decent product overall, I chose it mainly because we received $100K in credits. Otherwise, it wouldn't be my provider of choice.
Amazon Web Services (AWS): I used AWS to build my apps and in the early stages of my startup. It has its absurdities (mainly the billing system), but I still prefer it over GCP.
Vercel: My go-to choice for hosting Next.js projects (not surprisingly).
Supabase: A great company with a great product (backed by YC). I'm using it for a side project, and so far, I'm really liking it.
Other languages
I'm always curious to learn new languages and their applications. Here are some languages I use less frequently:
Python: It's hard to hate Python. I mainly use it for scripting (e.g. downloading music from YouTube... maybe I shouldn't have said that).
C: The lowest-level language I know. It was actually the first language I learned at university, and it taught me how a computer really works. I think every software engineer should learn C, even if they never use it in their career.
Java: Learned it for a university course. Not a big fan, but I understand its importance.
Kotlin: Used it to build my first Android app. It's essentially an evolution of Java, and much better.
Swift: Used it to build my first iOS app. I haven't used it enough to have a strong opinion on it yet.
Spoken languages
I was born and raised in Italy by Chinese parents, so I'm lucky to be able to speak three languages:
🇮🇹 Italian (native)
🇨🇳 Chinese (native)
🇺🇸🇬🇧 English (fluent)
Soft skills
Unlike hard skills, soft skills are hard (pun not intended... or is it?) to measure.
We all list things like "excellent communicator," "team player," and "fast learner" on our resumes.
Of course, these skills are crucial, but they can only be truly demonstrated by actually working together.
Random obvious stuff
Git
SQL
HTML/CSS
Tailwind CSS
Node.js
Docker
VS Code
Expo (React Native)
Playing the piano
Juggling while drunk



