I've made every mistake possible in the last six month since I moved into my new role as Director of Engineering at Opentable. Leading a team of any size is not easy but leading multiple teams, if not done properly, can feel like herding cats.
People always say that management is not a step up, or promotion, from engineering but that it's a completely different job altogether. And they're right. If you make the leap from engineering to engineering management then, congratulations, you're now a junior again.
If you don't focus on self-improvement and changing the way you work, you don't just risk failing at your new role but you're setting your new teams up to fail too. Which if you don't think is worse, well....you're already a poor manager.
Don't drop 1:1's. Nothing is more important
Michael Lopp (@Rands) puts this perfectly in his post The Update, The Vent, and The Disaster when he wrote:
...understand that each time you bail on a 1:1 they hear, “You don’t matter”.
If you really must miss a 1:1 and it's impossible to avoid (which should be extremely rare) then make sure you follow up. If a 1:1 feels like you're rushing to fit it in to the allotted 30 minutes, then schedule another 30 minutes to follow up.
Always have enough time for you team. Ideally they should be every week. At worst they should be no less than fortnightly.
You can't manage 26 engineers...so don't try to
When you manage a small team of 4-7 engineers then it's easy to think that all you have to do, when managing a larger group, is to scale yourself out. To work harder. To work more hours. I tried to do this and it's impossible. You end up neglecting teams and despite whether your reasoning is that "they don't need my attention as much as team x" or "I can rely on strong engineering leaders in that team anyway" it just looks like you don't care. And why wouldn't they think that.
The only way to scale your time and leadership is to step back, empower great leaders and reduce your direct reports.
Get a mentor
It's easy to just jump right in and end up pissing in the wind. Being arrogant and thinking that you can go it alone and become the best you can be. You can't. You need guidance. Someone from the outside who can give you perspective and that will pull you up and correct you.
This person doesn't have to be your boss, or even in your reporting structure but it should be someone who you look up to, respect and you can learn from. Ideally you work closely with this person and they can regularly dedicate some of their time to you to discuss what you've been doing, where you need help and to work on your weaknesses.
Schedule a regular meeting with this person and set goals and objectives. They will give you focus and give ideas as to how to work on your weaknesses.
Your job IS NOT to remove obstacles
For years when someone asked me "what makes a good lead?" I'd always answer with "Someone who removes obstacles". If you truly believe this then you end up being a runner for the team and ultimately a bottleneck. When you're the dependency to get stuff done, then you slow your team down.
Your job is to ensure your team can unblock themselves.
Learn to be good…you’re now a junior again
Realising you have weaknesses is not a weakness in itself. Nor is it a lack of confidence. The only way to get good and effective as a manager and leader is to iterate and learn. Some of the best managers I've had still have an active focus on self-improvement and I'm really lucky to still learn from them (ahem Paul Harrington).
It can be frustrating to realise that you've spent 10+ years trying to become a good software engineer to now realise you have to start again (almost). I do believe though, that you can't be a good Engineering Manager without being technical. Others would disagree. They're wrong.