When you get hired by a company as a developer, if you stick around long enough, you will undoubtedly end up with the opportunity to take on a leadership role. That leadership role may (or may not) come with an increase in pay, and will definitely come with more responsibility. When getting promoted from development to management, your day-to-day role will end up looking very different than what it did before. Don’t let your expectations get in the way of your ambition, and don’t torpedo your career with a move that will make you unhappy!
Twice in my career, I’ve worked for companies where I started as a developer and ended up in a management position. I’d like to share with you some information that could come in handy when that opportunity lands in your lap.
Do you even code, bro?
You are a developer. You love writing code. When you aren’t writing code, you’re thinking about writing code. Because Code is Poetry, amiright?
Then it happens. You moved up to team lead a few months back, and your day started filling up with meetings, reports, code review, and more meetings. You wake up one morning and realize that you haven’t written a line of code in two months. You’re not even sure you could write a WordPress loop from scratch if you had to. OMGWTFBBQ!! WHAT’S HAPPENING?
For me, this was a tough one. I’ve always enjoyed the process of making something work. It’s hard to capture how great the feeling is when you hit save on the document, refresh the browser, and see your code come to life. It can feel like magic. When you’re no longer getting that magic feeling, it can be downright depressing.
Before moving into a management position, make sure you’re prepared to no longer write code all day every day.
Let it go!
(Sorry for getting that tune from Frozen stuck in your head.)
When you joined the company, you came in and rewrote the system from the ground up. You know every line of code intimately. It’s your baby, and nobody likes hearing that their baby is ugly. If you aren’t unhappy with the code you wrote a year ago, you’ve got bigger issues than your ugly baby.
There will come a time when the developers you’re managing know the code better than you do. This is when it becomes vitally important that you check your ego at the door and accept that, moving forward, you can help make decisions on the process and direction, but it’s up to the developers to write the code.
Listen, listen, listen.
Early in my career, I worked two jobs at the same time for a while. My managers at both places could not have been more different. Their main difference–and maybe the single most important piece of advice I can pass along–has to do with how each of them would listen to the people they managed.
At one company, my manager would never listen to ideas brought to him by somebody else, nor would he ever ask anybody for a second opinion before rushing headlong into projects. If it popped into his mind, away we went. It felt like he wore the fact that everything we did, right or wrong, came from his brain, as a badge of honor. It was infuriating. The place had a huge turnover rate.
At the second company, the manager went out of his way to get feedback from our entire team–often. When we brought up ideas in meetings, we knew they were heard–and could eventually be implemented. Your employees need to know that ideas they bring up will be considered.
Developers are a self-motivated, driven bunch. Part of the reason they pursue professional development is because they love to try things out, learn new things, and challenge their existing knowledge–and they want to make a living at it. By listening, considering, and implementing your team’s ideas, you’re utilizing one of your best resources, and making your product better through collaboration. Developers don’t want to be automatons, and if you don’t rally their insight, their knowledge, and their skills, your team and output will suffer.
For me, the difference between the two management styles became so great that I eventually left the first job to work full time at the second.
Always be learning
I’m going to let you in on a little secret: I don’t care how secure you think your job is. You could wake up tomorrow looking for work. If that were to happen, do you know what you’d do?
For me, web development has been a constant in my life for twenty years. Even when I had moved up to management, I always had a side project I was working on in my spare time.
I found that keeping current with coding standards and trends helped me when communicating with our team of developers. I was able to talk about projects with the developers as a contemporary, discussing complex elements of the project allowing me to provide valuable input to help guide the development. It also didn’t hurt that the developers knew they couldn’t BS me on how long a project might take to complete. By the time I left my corporate job to start a WordPress agency, even though I hadn’t written a line of code at work in over three years, my coding chops remained intact.
Continuous learning can also act as a lifeboat when things don’t work out. Considering the majority of team leads and managers started off as developers for their company before being promoted, stepping directly into a management position at a new firm may not be an option. But finding a job as a developer, or filling in the gap with freelance development work shouldn’t be a problem.
Knowledge is a reliable springboard, whether things are going well or not. Prepare accordingly.
These are just a few of the lessons I’ve learned, usually the hard way, over the course of my career. Check back soon for more in the series.