2021, Possibly one of the best years of my life (as a Software Engineer)
I never actually wrote retrospective articles, but the last two years have been such crazy times; I’d love to keep track of them and the progress I made while trying to carry on in quarantine, social limitations, and these uncertain years.
Let’s make it clear from the beginning: I am comfortable staying alone, and I feel like I’m fortunate that I couldn’t suffer so much about being in lockdown.
2020 has been a year I could never forget, and I wish I had written a retrospective article about it. To summarize, in 2020, I bought my first home, moved there with my girlfriend, adopted Linux (the most beautiful dog in the world), quit my consultant job, and joined ViacomCBS as a Senior Software Engineer, which has been a significant step forward in my career. I also bought a considerable amount of guitars that I shouldn’t have purchased. But these are details, I guess.
If 2020 has been a pretty good year for my career and personal life (except for Covid-19, of course), 2021 has been totally crazy.
Let me summarize the most significant things I have done in the last twelve months.
I wrote a book.
I had the unique opportunity to write a book titled “Real-World Next.js,” which, as you may have guessed, talks about… Next.js.
Writing a book is not easy for me for multiple reasons. First of all, I am not a native English speaker, and if you’ve been reading my Medium for a pretty long time, you may have noticed that.
It has probably been the most challenging experience of the last few years. Writing a book is really complicated and requires a lot of attention and research, which you cannot do if you’re distracted or have little time. It took me one entire year (and a month) to complete this book. Meanwhile, Vercel published three new major Next.js versions, forcing me to rewrite many chapters and sections to be aligned with the latest Next.js features. Not easy at all!
Before moving on to the next section, I’d like to thank Alberto and Christian again, who worked as technical reviewers on the book. Believe me when I say that it wouldn’t be possible to reach such excellent quality without them.
I became a Google Developer Expert.
I’ve been nominated to join the Google Developer Expert program by my friend Fabio, who I’ll never thank enough for giving me this opportunity.
I initially wanted to join the program as a “web technologies” expert. Still, after almost ten years working as a web developer, I wanted to challenge myself and join something that could have been a bit more complicated for me.
So, after two interviews with excellent interviewers from Google and Mastercard, I finally joined the Google Developer Expert program in Google Cloud Platform.
When I received the email telling me I was officially a GDE, I cried with joy.
I already had the opportunity to join a couple of Google events, including a Google DevFest as a speaker, and it has been incredible! If you have the chance, I highly recommend entering the program too.
In the next future, I’d love to join the Google Developer Expert program in one of three other categories: Golang, Web Technologies, or Firebase. When I first looked at the possible categories, I finally realized how significant Google had been in my software engineering career.
Thank you, Google!
I recorded two seasons of the Inference Podcast.
Recording 13 total episodes allowed me to connect with great people from all over the world, talking about many different topics. From Erlang to COBOL, from Rust to Node.js, it has been an incredible journey.
Even though it has been fantastic to connect with great people such as startup CEOs, programming language designers, book authors, and great engineers, I don’t think there will be a season three.
Reaching out to big names in the programming community is not always easy. The people you’ve been able to listen to on my YouTube channel or Spotify/Apple Podcast have been the only people I could bring to the recording without having to create huge compromises. Some big names even booked the recording session and never showed up.
While I really enjoyed talking with every single guest who joined the podcast, I feel like it was pretty overwhelming (and frustrating) to try to organize something good with a lot of people who didn’t have any kind of interest in joining the podcast but was afraid to say so, and preferred ghosting over sincere speaking.
I will undoubtedly run some new activities and try to reach out to new people in 2022, but I’ll certainly need some support! Lesson learned: doing this alone is really, really difficult.
Before I move on, I’d like to thank every person who joined the podcast. They have been fantastic guests, and I truly believe they helped me shape my future by showing me their passion for their work:
- Brujo Benavides, Staff Software Engineer at NextRoll (S1E1)
- Alexander Granin, author of Functional design and architectures (S1E2)
- Leandro Ostera, author of the Caramel programming language (S1E3)
- Louis Pilfold, author of the Gleam programming language (S1E4)
- Arseniy Seroka, CEO of Serokell (S1E5)
- Luca Piccinelli, Senior Software Engineer at CompuGroup (S1E6)
- Vladislav Zavialov, Haskell GHC TSC member (S1E7)
- Luciano Mammino, author of Node.js Design Patterns (S2E1)
- Rita Kozlov, Director of Product at Cloudflare (S2E2)
- Michael Lukaszczyk, CEO of GraphCMS (S2E3)
- Ilyia Sher, author of the NGS programming language (S2E4)
- Luca Palmieri, author of Zero to Production in Rust (S2E5)
- Romaric Philogène, CEO of Qovery (S2E6)
A huge “thank you” to GraphCMS, Serokell, TomorrowDevs, and Schrodinger Hat for making the Inference Season 2 possible.
I joined TomorrowDevs as a teacher and mentor.
I received many requests from different coding bootcamps and schools to join them as a teacher, but I always refused for some good reasons.
In the last years, I have interviewed dozens of juniors, seniors, and even architects. Still, I never had the opportunity to let anyone from one of these schools pass the interview.
Every person coming from these schools showed the same lack of fundamentals, basic programming knowledge, and zero ideas of working in real-world environments.
Let me say this straight: I don’t do whiteboard interviews. They’re just useless at any level. Sometimes I just have an informal chat with the candidate. Sometimes, I ask some technical questions, but I always calibrate my interview depending on the person I have in front of me.
I’ve never seen anyone coming from those “coding schools” succeed, even when they got interviewed by other colleagues.
I’ve always been skeptical about joining any BootCamp for this very reason. Still, I eventually learned that there is a remarkable exception in this world: TomorrowDevs.
First of all, the teachers (except for me, of course!) are top-class programming experts. There are courses where ex-students can join as teachers after a few months of training (WTF!!!), but here, there are people literally building and maintaining open-source products in big companies sharing their experiences and learning path. I often feel like a student, rather than a teacher, when talking with them.
I won’t talk a lot about the teaching methodologies, but I’d like to share a great experience with the students. Every week, I give them some coding challenges taken from LeetCode, Hackerrank, CodeWars, etc. Then, we discuss their solutions and understand how to enhance them.
I now find myself in difficulty, as the challenges I’m giving them are just too hard for me too! I don’t know how, but they’re able to solve like everything, in many different languages and paradigms! I’m super proud of them.
I exceeded any expectations regarding my income.
I know, talking about money, for some reason, is taboo. But everyone knows that software engineers make a lot of money. Do we all agree with that?
I mean, we’re not all rich (I am definitely not), but we’re way above the average salary, at least in Italy, where I live.
At the beginning of 2021, I set a target for my income (mixing my full-time job salary with other sources of income, all related to programming) of €80.000, but I eventually exceeded any expectation by surpassing the six figures revenue.
People from the US or rich European countries might not be surprised, but you know that this is a big deal if you live in Italy.
I started my career by giving my resume to a State Employment Agency in a small city near Monza. I eventually created a great career path, all on my own. And you have no idea what’s coming next!
I quit my job at ViacomCBS.
In December 2021, I gave the bad news to my manager. I still feel a bit sad about that.
ViacomCBS is an incredible company. I had the opportunity to meet people working in big FANG companies such as Google, Meta, Amazon, etc. After talking with them, I gotta say I see no difference with the daily job in ViacomCBS. But, after hearing their complaints, I would say that ViacomCBS could potentially be better under some circumstances.
The engineering team is incredibly powerful, and the management is simply the best management I’ve seen so far. The products and projects they’re building are top-class technologies that I really wish they could share with the world as soon as possible, as they’re really making something huge.
I’ve been working for two years in the architecture and platform teams, dealing with complex stuff daily, and I feel like I never grew that fast in my entire life. All thanks to my colleagues that I want to thank personally (if they ever read these words). Thank you, Acatl, Nicolò, Giampiero, Antonino, Giacomo, Igor, Rakesh, and Christian (former team Engineering Manager).
After two incredible years, the future had other plans for me, so I had to resign from my full-time, permanent job for the second time during a global pandemic.
I bought one of my dream watches.
Not everyone knows that, but I am a huge mechanical wristwatch enthusiast.
When I was only 14 years old, I started going to my high school in Milan, and I often had to take the subway near the Milan Cathedral. Here is where I fell in love with wristwatches.
Milan is like the Italian capital of fashion and luxury. Being in front of such great storefronts made me fall in love with how mechanical watches work.
Did you know that a mechanical watch doesn’t need any charging source to work? For example, a quartz watch needs a tiny battery to produce the electricity required to make a small quartz crystal vibrate at a fixed frequency, which helps an electronic circuit to calculate the elapsing of time by “counting” the vibrations.
A mechanical watch doesn’t need this. Instead, they’re built almost the same way they were constructed in 1700. They have a rotor that moves with any arm movement and recharges a small spring, maintaining a power reserve for many days. If well maintained, it could potentially last and run forever.
Of course, good mechanical watches are really expensive. You may already know some big mechanical watches brands such as Rolex, Patek Philippe, Audemars Piguet, Omega, etc.
After 12 years of waiting, I’ve finally been able to buy myself a Rolex Datejust 41 in slate dial (reference number 126300).
Buying a Rolex, just like a Patek Philippe or an Audemars Piguet, is not easy, even if you can afford them. There are years-long waiting lists, as the production is limited and there are people willing to buy one just to resell them on the gray market, where they can have huge profits.
For instance, my model has a list price of around $8.5k but sells on the secondary market for around $12k.
Another great example is the Patek Philippe Nautilus Tiffany & Co, which retails for around $60k and got sold in an auction for around $6M.
This crazy market leads to the worst customer experience I’ve ever had. I am not kidding when I say that I’ve been to more than ten different Rolex boutiques and authorized dealers multiple times, and no one ever wanted to sell me one. Some feared that I would sell it in the secondary market; others would keep the few remaining watches for their best clients. This market is rotten to the core, and I will never buy another Rolex in my entire life.
Even though I love the model I bought (and paid over the retail price on Chronext because it’s impossible to find at any authorized dealer), I feel like there will be better alternatives for me and my little collection in the future, even if my dream watch (Vacheron Constantin Overseas Chronograph in rose gold) is even more challenging to find at retail price than any Rolex.
Time will tell; this is not an essential expense.
What’s next for 2022.
2020 and 2021 have been relatively good years for me, but the future is always unknown and can lead to unexpected and pleasant circumstances.
I am thrilled to publicly announce that I will be joining NearForm in February 2022 as a Senior Software Architect, and I can’t wait to start working with such a great team of incredibly talented engineers.
Also, I will be the MC for one of my favorite conferences, the one that allowed me to land my incredible job at ViacomCBS.
I wish you all a beautiful 2022.