Top Developers Are Not Paid for Coding

TL;DR – There is this misconception that top Software Developers are appreciated due to their technical coding skills, for example how fast they can code a solution to a problem. While coding is very important, the real strength of top developers comes from understanding the domain of the problem they are solving.

 

Einstein-stay-with-the-questions

 

The code should be the last thing on your mind

Have you ever interviewed a developer that when asked to solve a problem, they immediately approached the whiteboard? No matter how vague your question might be (purposely or not) they take their marker-caps off and start coding.

Unless the question is a well known algorithmic problem that you can learn by heart, there is only 1 possible outcome to this – you will stumble on every step of the way and you will probably NOT solve the problem correctly. And even if you do solve it correctly, it will take you much longer than expected.

This should be a huge red flag for every hiring manager or an interviewer.

So, my question is, why so many developers think that they are evaluated solely by their technical coding skills??

 

We learn the wrong things from others

We all try to learn from others and we all know that learning from other great professionals is the best way to advance your personal growth and your career. I think Louis Armstrong said it best: “If you are not the worst trumpeter in the band, you should find a new band”. And so we do. We change teams, we change companies, we alway try to find new challenges and top engineers to learn from.

My question is: are we learning the right things from those around us?

Lets take Jimmy as an example. Jimmy is a software engineer in your team. She is highly appreciated by her managers and peers. She gets her work done fast and her work is usually at top quality. She is what some may call a 10x-er. We want to be like her. We want to be like Jimmy.

When we look at her, what do we see? We mostly see her coding, and so we think to ourselves, hey, look how fast she is! She is so fast at solving this problem! I should try solving my problems as fast as she does! She is so talented and smart! I wanna be just like her!

But eventually somehow this doesn’t work. You get frustrated. You think that you are simply not that smart and you just don’t have what it takes to be at the top. You loose faith. You try coding your problems faster, but you keep stumbling and falling over and over again.

What you don’t usually see, is that there is another, slightly hidden variable with Jimmy. Turns out she only start coding when she understands the domain and the problem. If she doesn’t – she asks questions, she learns, she questions. She takes her time to understand the domain of the problem. She is looking beyond her code. She knows that the code is just a mean, not the solution.

So, in conclusion, Jimmy is not paid for coding. She is paid for thinking, for understanding the problem, for designing the business solution and finally, only at the end, applying he coding skills to implement the business solution.

 

What can I personally do better (my personal resolution)

The next time I am assigned to solve a problem, I WILL ask myself the following questions, and unless they are all answered with a YES – I will not start coding:

  • Do I understand what is the problem I am actually trying to solve?
  • Is the problem really a problem?
  • Do I understand the current state of things?
  • Can I explain the problem to others in a very clear way?

Sometimes the answers to these questions will make you understand that there is no problem, or maybe there are much simpler solutions to the problem at hand. In any way, you will most probably find the best solution to your problem.

 

Anyway, lets all be just a little bit more like Jimmy.

Cheers.

 

 

 

 

 

 

 

 

 

 

 

About Shonn Lyga

Obsessed with anything and everything in Software Engineering, Technology and Science
This entry was posted in General Software, Uncategorized and tagged . Bookmark the permalink.

2 Responses to Top Developers Are Not Paid for Coding

  1. nerushdennis says:

    Good post! I’d a couple of more “top developers” qualities:
    1. Understanding the problem has to come up also with a clear understanding of the definition of done or in other words “how success looks like”. Great developers validate themselves with their peers and clients in order to solve the right problem and get the right outcome.

    2. Long term vision – top developers should look forward, see the bigger picture and how the small problem that they are facing right now will become way bigger tomorrow.

    3. Leadership skills – this is very connected to title of your post. Not only that they are not paid just to code, I want them not to code! I want them to help the company create more top developers, mentor them and lead them technically wise. I want them to solve the hardest problems but if they are always the only ones that can do it, then they are not doing the best work.

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s