Four years ago, I was coming back to work from my first maternity leave, and was working 3 days a week. Week after week, I kept my head down and got my coding tasks done in my limited time in the office.

Soon it became crystal clear to me that even if I did this incredibly well — as well as I possibly could — I wouldn’t be given the opportunity to lead a team or to do more strategic work. I would just get more coding tasks assigned to me. At that point, I could see that what I was doing wouldn’t get me to where I wanted, but I also didn’t know what I should do instead. So here’s the post I wish I had read then.

Leadership can feel like this weird amorphous quality that people are told about, but not necessarily told how to do it.

You’re told that you need to start exhibiting leadership so that you can step into leadership roles, but what even does that mean? How do you lead without explicit authority? And do you have to be be overly confident and delve into possibly uncomfortable areas like blatant self-promotion and company politics to do so?

A good leader is someone who people want to follow. Everything else ties back to that one statement, but there are many ways that people can lead. People may want to follow a leader because he sees them as human beings and does everything in his ability to help them achieve their goals. People may follow a CEO because she lays out an ambitious vision for the company and inspires all the employees to work towards a common goal.

Leadership is a set of mindsets and how they affect your actions and ability to influence others, not a role. There are certainly roles and jobs that have the word “Lead” or “Leader” in them. It is probably extremely difficult to do those jobs effectively without displaying some attributes of leadership. But there are plenty of people in leadership roles — maybe even some at your company — who you wouldn’t want to follow. So being called a leader doesn’t mean you are one. And being a leader doesn't mean you need an explicit leadership role either.

It’s frustrating to be stuck in that rut of wanting to take on more, of stepping up, but not knowing how. It sucks to do great work, but feel like you’re not being given opportunities.

Whether you want to stay on a technical track or explore management, you need to get over that initial hump of not being seen as a leader.

Here’s a 3-phase process to follow to develop your own leadership style:

1. Observe: What kind of leader do you want to be?

What should you do to become someone people want to follow? Start to observe the people around you — there are (hopefully) people who you would want to work with again. If there are not, consider starting a job search, but also think back on previous coworkers.

Are there people for whom you might even consider leaving your job in the future for the chance to work with them again. Why? Is it that they always have your best interest in mind? Or are they a product visionary and clear communicator who can deliver presentations that motivate and excite the people around them? Is it that they challenge you to think critically about your technical decisions and ask the right questions to help you figure out a better approach? Or that you can always count on them to give you honest feedback?

Similarly, pay attention to when you withdraw from people. Maybe you start to tune out when someone stands up to talk at a company meeting. Ask yourself why.

You may notice that even with the same person, you can at times want to follow them, and at other times withdraw from them. Tech is rife with extreme models of “successful leaders” who are product visionaries but awful to work with. Rather than completely emulate a person, be discerning about which attributes you’d like to take on and which you wouldn’t.

Be sure to look at people who aren’t in explicit leadership positions too.

If you are drawn to working with them, they are probably most successfully displaying the leadership style you most want. There are a bunch of lists out there of different leadership styles, like this one. You can probably think of people in your own workplace who fit into some of these leadership styles. See if one particular style resonates strongly with you. And if you only know of a particular type of leader (say, command-and-control), know that there are other options.

2. Experiment: Come up with a plan of action

Brainstorm a list of things to try that involves others and expands your impact.

It might feel like you don’t have time and that you need someone to give you permission to carve out time to do these things.

But consider this thought experiment: If you were your manager, wouldn’t you want someone to think critically about how they spend their time and constantly be trying to increase their impact (without needing to give them permission)? You’d probably be thrilled!

Examples are useful, so here are some possible things to try (assuming you are a technical individual contributor):

  • Respond as quickly as you can to code reviews and tech specs sent your way.
  • Ask if a new hire would like to get coffee and how you can help them.
  • Give kudos to someone at the weekly team meeting.
  • Have a whiteboard chat with a few people to brainstorm high-impact tasks or projects to improve a particular area of the codebase.
  • Volunteer to write a post for the engineering blog.
  • Commit to giving a brief tech talk in a few weeks.
  • Facilitate a meeting. Ask “what do we want the outcome of this meeting to be?” and manage the time.
  • Speak up when something seems off.
  • Suggest process changes that make people’s lives easier.

Note that none of these things require permission from anyone, or a specific role or title. Though it might feel like you don’t have time, just block off an hour or two a week on your calendar. Let’s be honest — you’re not that efficient with your time that it would be the end of the world.

3. Analyze: What worked?

The feedback loop for leadership-ey things is less tangible than that of committing code. But it’s there — so it’s time to review the results of your experiments.

If you responded more promptly than usual to inquiries, did you find that people sought you out for advice and feedback more often? Does the new hire you got coffee with message you on slack to ask you questions?

Think about the impact of the things you did. If you spoke up in a meeting to facilitate a conversation between people talking past each other, did you get some appreciation or feedback afterwards? If you documented how to contribute to a service, and emailed it with the team, take the time to feel good about the fact that you just massively decreased the time it took for someone to get up to speed.

Take what worked and what you felt good about, and iterate on it. You may have experienced roadblocks with certain areas, but you’re probably starting to see that you don’t have to be stuck in the status quo, waiting for someone to say, “Hey, you’re really good at coding, why don’t you take on some leadership responsibilities now?” You can just do some things that make sense to you. If what you want is to move into an explicit Leadership role, now when it’s time for a team to have a Tech Lead or Manager or Project Lead, you’ll already have been exhibiting “leadership attributes.” And if you don’t, you can still be a leader and continue to expand your impact.

If you want to expand your impact and take control of your own leadership, we hope to see you at our 1-day leadership experience — Building Alignment: How to Create the Impact and Influence You Want as a Leader in Tech.

You'll learn communication skills and tools that will accelerate your leadership development in any situation.