The well-balanced developer


Some developers are worth more than others. The bigger impact you can make on the organization, the higher is your worth. To make a significant impact on the organization, the developer must keep 5 essential skills in balance:

  • Technical skills
  • Mentoring skills
  • Process Organization skills
  • Business skills
  • Communication skills

Sometimes I ask my trainees to measure their proficiency in each area from 0 to 10. Then we plot results on the balance wheel. I yet to find a developer who will draw a shape other than The Imperial Star Destroyer:

The Balance Wheel (Disbalance Towards Technical)

The Imperial Star Destroyer

You can see a major disbalance and skew towards technical skills. The balance wheel provides a visual indication of where developers invest most of their time.

Technical skills

In the beginning of your career, technical skills are the most important.

You will learn about clean code, design patterns, and eXtreme Programming. After years of practice, you’ll be able to ship software features fast and with high quality. You’ll start noticing and fixing the mess introduced by less experienced developers.

The faster you pump the technical muscles, the wider become the professional gap between your and your teammates.

Soon you’ll start complaining about teammates because they do not meet your expectations and their code sucks.

With your remarkable technical skills you can do all work yourself, strictly police code commits, hijack the architecturally significant tasks and let others do only HTML and CSS. Eventually, you will become the bottleneck and put the company at risk due to the bus factor:

Ths Bus Factor

Mentoring skills

Congratulations on your major career milestone! From now on, your primary responsibility is reducing the professional gap between teammates. Until you shrink the gap, your focus must be on mentoring rather than individual contribution.

Software developer must reduce the professional gap between teammates.

Mentoring and building an A-class team requires certain skills. The brightest technical minds are often the worst mentors because dealing with irrational people is harder than feeding computers with instructions. A good mentor must gain trust, inspire, give constructive feedback, understand when to push harder and when to back off.

For me, the hardest part was to stop being an individual contributor. Gone are the days when I could proudly say “I shipped features A, B, and C… 💪”. Most of the time I am saying “I am working on feature A with Alex and feature B with Kate.”

The Balance Wheel (Technical and Mentoring)

Process Organization skills

You can grow an army of super-skilled developers, but they won’t perform well if the process sucks. A good process multiplies performance, makes customers happy and competitors envy.

A small change to the process can multiply the throughput and productivity of the organization. Developers who understand Little’s Law can optimize development process from concept to cash. They wear polo t-shirts and play golf with the top management.

Little's Law

Most developers think that process optimization is not their responsibility. Don’t you see the opportunity? Learn the principles of Lean software development 1, acquire unique skills, take your money and run.

The Balance Wheel (Technical, Mentoring and Process)

Business skills

Most developers implement someone else’s ideas. When ideas become boring, we start dreaming about building our own product. But we don’t need to become entrepreneurs and leave the company to work on cool stuff. An intrapreneur is a person who behaves like an entrepreneur while working in an organization.

Developers are the best candidates for intrapreneurship because no one else in the company can build a working product.

developers, developers, developers

Let me tell you a short story. Once I wanted to build a fancy project dashboard. My team leader didn’t buy it, so I coded a barely working prototype in my spare time. Thanks to caffeine, it took me only 20 hours. I showed the prototype to the customers and, to my surprise, they liked it. They allowed me to devote half of my working time for the project and use tools of my choice. I became the exception to some corporate policies, did not have to fill timesheets, could dictate my rules of the game and wear slippers. I got the full Corporate Bullshit Immunity (CBI). So can you.

You don’t need to ask permission to innovate. Grab a lunchbox, open your mac, build a prototype, invite top management, make a nice demo, ask for funding. Even if you get no funding, business people will stop treating you as a geek.

Your mentoring skills mixed with business skills can turn the team into unstoppable innovation machine. I can’t imagine a bigger organization impact.

The Balance Wheel (Technical, Mentoring, Process and Business)

Communication skills

Last but not less important is communication – the cornerstone of five skills. Unless you are the creator of Git and Linux, lack of diplomatic communication skills is unforgivable.

Developers are masters of water cooler conversations complaints. That’s why the demand for diplomatic communicators has always been higher than the supply. By learning to negotiate scope with product owners, discussing project risks with customers, bridging the gap between technical and business people you gain rare skills that never go out of date.

The only way to improve communication is to communicate a lot. Talk less about work. Hang out with non-technical people.

Developers are party animals

Use every opportunity to speak in front of the audience. Remember that every rockstar speaker started with a small presentation in a meeting room.

The Balance Wheel (Technical, Mentoring, Process, Business and Communication)

Wrap up

The bigger impact you can make on the organization, the higher is your worth. For the maximum impact, you should keep 5 primary skills in balance:

  • Technical skills
  • Mentoring skills
  • Process Organization skills
  • Business skills
  • Communication skills

Use the balance wheel to identify your strenghts, weaknesses and competencies that require more attention than others.

Are your skills in balance or you are The Imperial Star Destroyer?