Technical Leader Worries: My Organization Is a Mess, and Nobody Cares

Table of Contents

Technical Leader Worries: My Organization Is a Mess, and Nobody Cares

Some time ago, I coined a funny equation like this:

Business = Busy + Mess

What is not so funny is that reality many times follows this heuristic. The bigger the organization, the truer it becomes. However, it’s also true for many small organizations, so there’s no need to envy others. Even if a company has an established vision, aligned values, and rules to follow, the mess is there. It is quite obvious—entropy works in such a way that scale and time make the consequences more painful.

Common Complaints in Organizations

Many times I hear people complaining like this:

  • My boss is not interested in what I am doing…
  • Executives in my company don’t care about people.
  • We are treated as resources.
  • There is no people development plan.
  • Our (mine and the team’s) needs are not taken into consideration.

All these complaints point in some way to the organization. Sometimes the situation is really not too friendly. And then I sometimes ask a question, especially to those folks who have worked in the company for a couple of years:

So why are you still working here?

A few seconds of silence typically follow this question…

You know, I have a family, payments, a mortgage…

So you choose security over looking for a workplace which will foster your fulfillment?

Yes. This is something I would like to emphasize.

We Always Have a Choice

We always have a choice. We can choose what we want to do. Always.

And we often choose security and sacrifice what is so important to us: fun, development, a great work climate. What’s more tragic is that we make that decision unconsciously. If you had made it with full awareness, you wouldn’t complain about it because it was your choice.

The Self-Demystification Tool

So do it now. I call it the Self-Demystification Tool.

Ask yourself:

  1. Why do I choose what I am doing now in my professional life?
  2. What are the trade-offs of my choice? (probably those things you are complaining about)
  3. Do you still want to choose it?
  • if so, stop complaining.
  • if not, quit the job or start influencing the environment to make a change.

Yes, it is you who is responsible for this. You. Nobody else.

These questions are very important as you can read in this article (in the section about jobs). Experienced people at the end of their lives encourage us not to work in a job we don’t like (an old truth but it’s worth reminding as so few follow it).

Striving for Satisfaction

I have another funny equation that expresses what I write here about:

You are satisfied with what you do when reality somehow equals your expectations. If reality is equal to or “greater” than your expectations, you will be satisfied. If reality is much below your expectations, you will be dissatisfied. Based on this model, you can do two things:

  1. Change reality—a) change your job, b) change the way you and your team work, c) initiate changes in your organization.
  2. Change expectations—d) find mission in what you are doing, e) admit that you choose what you do with all trade-offs.

I prefer to use these strategies in the following order: b) c) d) e) a). What does it mean? First, I try to change the way I work; if it doesn’t help, I try to initiate change in my organization. If it doesn’t work or seems impossible, I try to find (maybe not obvious) a mission in what I am doing, and so on.

But never stay in between too long. Choose something; otherwise, you will welcome depression sooner than you think. Remember, you always have a choice, even if it is not easy.

For those who decide to initiate some kind of change, I would like to clarify one thing. I use the term “initiate” because many important changes require time, usually much more than you would like (and it is sometimes the reason why we give in). So be prepared for waiting.

(Text translated and moved from original old blog automatically by AI. May contain inaccuracies.)

Related Posts

Technical Leader Worries: Team Members Are Whining

Understanding Team Complaints

It’s very annoying when you hear whining from your team. They complain about boring work, stupid company security policy, wrong management decisions, customers not knowing what they want and changing their minds, and project managers crowding them. Doesn’t it sound familiar?

Read More

What Name for This Method?

What Name for This Method?

public class OptionsAwareObject {  
    private Options options;  
      
    public void updateOptions(String fontName, int fontSize) {  
       options.setFontName(fontName);  
       options.setFontSize(fontSize);  
    }  
}  
   
class Options {  
    private int foregroundColor;  
    private int backgroundColor;  
    private String fontName;  
    private int fontSize;  
    // ...
}

Is updateOptions a good name for this method? Of course not! updateOptions is a general name that suggests a comprehensive update of options. Meanwhile, we are only updating font-related information. The responsibility of the method is thus the change of font-related options. A better name would be:

Read More

A Manifesto Against Developers

A Manifesto Against Developers

I hate you because:

  • You focus on the features of your IDE instead of the features your client/user needs.
  • You consider typing at the keyboard as thinking.
  • You waste countless hours manually testing your code.
  • You spend more time struggling with frameworks than delivering value to end users.
  • You code for hours without asking yourself, “What am I really doing?”
  • You naively believe that technologies and tools will solve your problems.
  • You naively believe that a good algorithm is more important than a good understanding of requirements.
  • You naively believe that your intuition is enough for writing good code.
  • You naively believe that you can manage the complexity of the system piece you’re working on.
  • You agree to unrealistic deadlines.
  • You write poor code and rationalize it with various excuses (because there is no time).
  • In your head, you create code snippets without really knowing what needs to be done.
  • You guess what needs to be done rather than clarifying.
  • You mindlessly follow the technology you use.
  • You don’t understand the tools and technologies you use.
  • You isolate yourself in your piece of code, breaking contact with the world.
  • You think it’s all the fault of managers or clients and believe you can’t do anything about it.

… even though I love you because I am a programmer myself.

Read More