3 min read

Lessons from a Developer Turned Manager

A while back, I made the transition from Developer to Manager, a career move seen by many as a natural progression
9 lessons of being manager
9 lessons of being manager
Table of contents:

A while back, I made the transition from Developer to Manager, a career move seen by many as a natural progression. However, after spending significant time in the managerial role, I realized it wasn't the right fit for me. I've decided to return to being a Developer, but not without gleaning important insights from my time as a Manager. Here's what I learned:

The notion that I returned to development out of deliberate choice is intentionally included and not entirely accurate. However, any manager with prior coding experience remains fundamentally a developer, just like you.

1. Communication is Paramount

As a Manager, it's essential to articulate your expectations and goals clearly. Instead of assigning specific tasks, provide directions that allow for creativity and problem-solving. Ensure your team understands the 'why' behind every task, not just the 'what'. This helps team members align their actions with the bigger picture and stay motivated.

2. Master the Art of Detachment

Being a Manager often means being the recipient of complaints, frustrations, and internal debates. It's crucial to maintain a professional stance and avoid taking things personally. Remember the adage "shit rolls uphill" and strive to keep work-related issues confined to the workplace.

3. Maintain Your Technical Edge

Even in a management role, it's crucial to stay connected with the technical side of things. Dedicate some time to small development tasks to keep your skills sharp and your understanding of the team's work accurate.

4. Be a Friction Remover

As a Manager, your primary role is to create a conducive environment for your team to work seamlessly. Address minor interruptions and obstacles before they become a hindrance, ensuring your team can stay focused on their tasks.

5. Appreciate the Nuances

Coding and managing are vastly different. While development projects have clear end goals, management is an ongoing process of removing barriers and facilitating others' work. This shift in perspective is key to adapting to a management role.

6. Adapt to Interruptions

Management is an interruption-driven role. Unlike coding, where long, uninterrupted stretches are desirable, a manager's role involves dealing with problems as they arise, often requiring immediate attention.

7. Embrace the Shift in Your Role

With the management responsibilities, your coding time will inevitably reduce. It can be tough to pass on the interesting parts of the codebase to other engineers, but remember, your new role is about fostering a productive environment, not coding.

8. Perfect Your Feedback Skills

Providing feedback is an art. Everyone on your team will respond differently, and it's essential to tailor your feedback to suit individual needs. Some people may appreciate directness, while others might respond better to a more delicate approach.

9. Recognize Your Team Dynamics

Every team comprises different personalities. Understand who on your team is a 'superstar'—those seeking constant growth, and 'rockstars'—those content with their current role and performing consistently. These roles are equally valuable and can change depending on personal circumstances. Ensure you align projects, feedback, and expectations appropriately.

The Essential Transition: From Developer to Manager
In the software development industry, the career transition from being a skilled software developer to a high-impact manager is a huge opportunity for engineer.

In retrospect, my journey from Developer to Manager and back has enriched my perspective, making me a better team player and coder. The lessons I've learned in management have offered invaluable insights into the human elements that drive successful teams. Now, as I return to my developer role, I do so with a broader understanding of the ecosystem in which I thrive.