Tamizh in words

Developer Productivity - Part 1

Published on
Read Time
ยท 2 min read

productivity noun - the rate at which a person, company, or country does useful work.

What is the "useful" work of a developer?

Is it writing code? If your answer is "Yes", I beg to differ.

If it is not writing code, then what is it?

In my book, "useful" work is solving a worthy problem. Writing a few lines of code is just one way of solving a problem. It is a means to an end, not an end in itself.

Here is a fictional task that was assigned to a developer

Title: Create a dashboard with two charts

Description: Chart #1: Count of deals closed vs Time, Chart #2: Distribution of customer's domain.

The developer took this task and started developing it. They used the AI tool "XYZ" and generated 500 lines of code. They built the dashboard in a matter of hours and marked the task as done!

Most people look at this example scenario and start celebrating the AI tool "XYZ" as the best thing that happened in software development. They glorify it on social media, claiming that n% of our software codebase is generated by AI. Seeing this, most of us get influenced by FOMO and join the bandwagon.

In my opinion, it is not software development; it is just "order taking." If you are wondering what software development is, then here is my answer for you.

Software development is collaboration. The one who defines the task and the one who executes it work together collaboratively to solve the problem that the task was intended to solve in the first place.

Going back to the dashboard example, here is how it will happen in my world. The developer starts by asking what problem we are trying to solve here. In reply, the requirement provider says that this requirement is coming from our CEO. There is an investor meeting coming, and she wants to show these charts to them.

After thinking about it for a moment, the developer replied that we don't need to build these charts. We are already providing a way to download the sales data in CSV. Our CEO just needs to import these data into an Excel sheet, and she can create any number of charts that she wants to present.

Impressed by the answer, the requirement provider went back to the CEO and checked whether the proposed solution would work for her. She replied that it would be even more helpful than the charts I requested in the dashboard.

The story ends!

How many lines of code that the developer has written here? ZERO. Let me repeat it. It is ZERO. In my world, they are one of the best developers.

But the irony is, sadly, it is not widely happening in the real world. Why?

  • We promote/appreciate a developer based on the number of features that he/she shipped in a year. In this example, they shipped zero. So, no rewards.
  • To make this happen, we need communication to flow in both directions, but in most organizations, it is one way. In other words, it is a "do what I say" culture. Real software development will never happen in these kinds of setups.

More on Part 2...


Like, Share or Discuss on LinkedIn , Twitter

Did the content capture your interest? Stay in the loop by subscribing to the RSS feed and staying informed!