Hello!

I’m Daniele, a Software Engineer with a strong passion for minimalism and product design. Currently I working as Tech Lead Manager at ImmobiliareLabs, the it department of Immobiliare.it.

Apply Broken-Windows theory to the Software Design

“Broken Windows” is one of the most cited articles in the history of criminology. The theory was first suggested in the early 1980s by a social scientist, George L. Kelling, in his article in the Atlantic. It follows an experiment conducted by Standford’s psychologist Philip Zimbardo in 1969. Kelling explained the theory as follows: “Consider a building with a few broken windows. If the windows are not repaired, the tendency is for vandals to break a few more windows....

March 28, 2022 · 4 min · daniele

Modern networking layers in iOS using async/await

A fresh new look to networking topic that takes advantage of the new Swift’s Concurrency Model I’ve got a confession to make: making networking layers has always been an exciting topic for me. Since the first days of iOS programming, in 2008/9, each new project represented a fresh opportunity to refine or even break the entire approach I have used so far. My last attempt to write something on this topic is dated 2017, and I considered it a milestone after the switch to Swift language....

March 16, 2022 · 13 min · daniele

Loving imperfection

It’s strange, but it often happens to many senior people: the more you move towards your career, the more it’s hard to love imperfection. Each new project starts with constraints: some of them are related to time-to-market bounds, some others instead came from the necessity to optimize and delay the necessary resources (mostly development time) while evaluating user feedback. Constraints mean that we have to pick things that will get as much attention as we would ideally like....

February 28, 2022 · 3 min · daniele

Let go of control

Moving to a leadership role does not mean you will need to check every line of each PR, tearing your hair and hoping it will be not that bad day. When I started the role of “Tech Lead” (feel free to replace it with any other variation of the role) I had a strong craving to control everything around me. This is not anything strange for tech people new to this kind of role....

February 16, 2022 · 3 min · daniele

How Feature Flags can help your mobile app deployment

Feature flags have revolutionized mobile development by allowing features to be individually enabled/disabled at any point, even after they’ve already been rolled out to users. Modern mobile development moves quickly; here at ImmobiliareLabs we release a new version of our iOS app every 2 weeks. If you are lucky enough to live the moment of a team growth, you will also see the a special moment where everything starts slowing down because you have multiple in-progress things that aren’t quite ready for production....

January 25, 2022 · 11 min · daniele

An healthy approach to Code Reviews

Code reviews are weird monsters. With no doubts they improve the overall quality of the code and help programmers build relationships and work together more effectively. However asking for a code review puts many people on edge because it is just like laying your creative soul bare. By generally speaking most of the devs lives CRs as a “personal intrusion”. Your team is only good as your weakest reviewer...

January 15, 2022 · 7 min · daniele

The Economy of Tech Debt

Most articles about tech debt are pretty much theory only with lots of interesting philosophy. I’d like to approach this topic in two steps: The first part of this article is all about theory: what’s a tech debt, what’s not, what’s the root causes and impacts on product and team. In the second part I’m going to give you a hands-on approach on how to manage it so you can improve your product time-to-market....

January 3, 2022 · 10 min · daniele