How to transform into a project manager?

Sooner or later you will have to do it yourself

David Yu
Shanghai Coders
5 min readNov 27, 2020

--

As a software developer, have you ever catch yourself complaining about the project manager? Why is he/she being pushy? Why do we feel tension underneath the small talk?

Even you haven’t complained about the project manager before, you might have wished that there are less chaos and more structure around the project that you’re building.

In my case, it’s usually because the team is understaffed. Because I am bilingual and working in China, the boss’ save money alarm goes off and thinking why to hire a project manager when we can just make the developer do it.

However, I don’t regret it at all. No matter if you’re a freelancer, full-time, part-time software developer, I hope this article can help you make some decisions and learn from my mistakes and small wins.

Today I will do what others won’t, so tomorrow I can do what others can’t. — Jerry Rice

Do you have to do it?

Although you can learn a ton by doing a job that you’re not used to, sometimes you’re limited as a mortal. Everyone only has 24 hours a day.

Before you say yes to more responsibility, ask yourself

  • Will I be planning and executing 100% of the plan?
  • Is the team actively against letting you being a project manager?

If your answer is yes to either one, it’s not worth your time. You will be fighting against bureaucracy rather than producing.

You’re no longer estimating for yourself

When you’re a software developer, estimating the time to build something by yourself is relatively easy.

But when you’re a project manager, you will need to estimate how long the whole project will take.

For the tech stack that you understand, you can estimate how long it would take you, and add or minus the time based on the developer’s experience compared to yourself.

For the parts that you don’t understand, make sure you convey the goal to the developer first and then ask for the potential that he/she might have.

Out of respect, I always ask the devs to confirm my estimation. Because I know how much I hated when a manager would promise something to the client that I didn’t agree to.

There’s no dev team, design team, or business team. Just one team

When you’re just a software developer in a corner thinking about how beautiful the code you wrote, it’s easy to fall into the mindset that it is the only thing you have to worry about.

A project manager with a tech background is rare and a blessing to the team. Not only he/she will understand the technical jargon, but he/she can also translate the technical problems into how it will impact the business.

A call is almost always better than a text

It’s a common trait among us, software developers, we don’t want to waste our time on a call. I am the same. The small talks, the ineffective meeting, bother me.

But as a project manager, you will realize that text message often leads to a false interpretation. A kind developer might sound like an insufferable prick who’s just trying to go against you.

Often some technical problem is just too complicated to be explained in one or two sentences, developers would get frustrated, which makes communication even harder.

If you seem to hit a roadblock in communication, try scheduling a call and remember to thank them for their time.

Resist the urge to code everything

When I just learned how to code, it was an approach to everything.

Although you can, you shouldn’t just code and ignore everything else. In my opinion, the single most important job of a project manager is to make sure the team has what it needs to succeed.

Whether if it’s doing the small admin stuff like registering a dev account, or mentoring junior developers, as long as it helps the team to move forward, you should try to do it.

Learn to talk less technical

The curse of knowledge is real.

In research done by Standford graduate, they divide a group of people into “tappers” and “listener”. The “tapper” would tap their feet to a song, while the listener only listens to the tap to guess the song.

When the results came in, the researcher asked the “tappers” to guess how many of the songs were guessed correctly. Most of them thought that at least 50% of the songs would be guessed correctly.

However, only 2.5% of the songs were guessed correctly. The “tappers” were shocked. “How can they not guess something so simple?” they thought.

This is because the “tappers” already knew about the song, so when they tapped the song, they can only hear the song in their head.

As software developers, we experience the same thing. When already know how everything works, it’s hard to explain something to someone without prior knowledge.

An example that I experienced recently, I was trying to show a client how they could upload a song to the platform. Then the client suddenly asked me, “So is the old song deleted?”

I was instantly confused because I didn’t mention that anything would be deleted. It turns out she just wanted to know if the old songs upload would still be there.

I just assumed the word “delete” means deleting in the database, but it was completely different.

Always get something in writing or drawing

Even though it’s a bit more work, but when communicating what needs to be done. It’s always better to have something in writing.

Using one of those tools to track tasks, Trello, Jira, Asana, etc. After communicating verbally, be sure to always write down actionable tasks on the board.

Although you wouldn’t need to have a full design capability, but being able to draw mock-up and wireframes will be crucial.

Having a simple mock-up or wireframes, you can at least make sure that the user experience makes sense before going into design or coding.

Set priorities for the week

If you’re a software developer, you are probably already used to setting priorities for your work.

As a project manager, the priorities you set will be less specific, but it encompasses all functionalities of the team.

What I mean by being less specific?

It means to focus on the problem and not the solution.

As a developer, we’re used to coming up with a solution when a problem shows up.

As a project manager, you will need to focus on conveying the problem clearly and concisely. Because if you try to come up with the solution for everything, not only you’re limited by time, you will also take away developers’ sense of accomplishment for solving a problem.

Conclusion

If you’re thinking of a career shift or just looking to pick up new skills, I will be sharing what I know here.

--

--

David Yu
Shanghai Coders

Full-stack developer based in Shanghai. I help people turning their ideas into reality.