How I manage to remain highly committed

Francesco Barbera
Keep Calm and Code On
3 min readFeb 8, 2017

A very interesting problem in the daily work of a developer is that of finding something that lets you stay connected with the real world, rather than just floating around in an environment made up of virtual things. In my own developer career this problem actually brought me to a temporary detachment from the IT world.

So after working as a developer for some years, I realised I was unable to find something real, something useful, that could be produced with my work. Every day was spent continuously resolving tasks, improving infrastructures and managing relations with customers without any idea about where my work was actually going and what the final goal was. Everything was virtual and nothing was connected to a real use case. I obviously had a general overview of what the software I was working on was related to, but it was only a limited view, it was not a real comprehension based on feedback from a real user.

My reaction was to look for a new job, in a completely different environment. Working as a carpenter was the first decision. This was an incredible switch to a really manual job. At first I was able to find more satisfaction in this kind of work: building things that people could use directly was fantastic. The things I made were also immediately appreciable objects and they made me proud of my abilities.

However, after some time I felt I needed yet another change. Another job that could really link me to customers in a more direct way. So I became a bartender. This was an amazing challenge for me: no time to think about a reaction, everything super fast. I learnt a lot during that period. Every day was a challenge for me and every situation I faced became a direct improvement of my skills. It was also a constant and strong motivation to do a better job.

I’m now back working as a developer, but how can I find such a strong motivation to continuously improve myself in this job? How can I make my daily work more real? And how can I traslate a world populated by classes and instances into something absolutely useful to someone?

One thing I am working on is embracing and understanding the needs of the final users. To embrace means to truly understand what my end customers have to do with my software, or rather, what they have to do in general, what problems they are facing, and how I can help them with the work I do. This “user focused” approach makes me feel constantly committed. For example, I recently experienced how answering questions from final customers is useful to understanding how they use the software I am developing. In many cases they tell me about their workflows and so I notice how an action that looks strange to me is the norm for those who use the software.

Another helpful approach is that of providing my customers with a constant vision on how to monetize my work. In order to do this I need to better understand what my customers do, what their strengths are and how I can help them achieve better results with their final users. Every single feature represents a deep thought on how it can help final users and how it can increase the value of the software. This concept also leads to a better evaluation and prioritization of future tasks.

In conclusion, the figure that emerges is that of the software artisan who is constantly in contact with his products. Furthermore, our work can be very detached from the real world but with some expedients we are able to keep a high commitment and continuously improve ourselves by applying more consciousness to our daily work. Getting closer to the figure of the software artisan could be a big step towards a real self improvement.

--

--