I've seen many new managers come in and go at the place I work(a fairly large tech company). As a Software Dev, I myself found it quite difficult to learn about the build systems, coding conventions etc when I started and it atleast took me close to three months to get fully settled and get a feel for the system.<p>In such a scenario, how does a newly recruited manager, who has no idea about how products are being developed at the company, perform? Given a task, how can they estimate upfront, the resources(in terms of man work hours) required? A lot of other experienced dev's give the new managers ramp up sessions, but is that enough to get a complete feel for the system?<p>Am I just dumb in taking three months to get a feel for the development process?
No. Cultural adaptation takes time, especially coming into a leadership position. Newly recruited managers should do a couple of things to get up to speed.<p>1. Meet with all your direct reports, even if it's 5 minutes, introduce themselves, ask what they're working on, what the holds up are, etc. You're leading them, make an effort to get to know them. (I'm a big fan of peopleware in this regard).<p>2. Take the time to read everything. A former boss of mine gave me this tip and said when you walk into a management role at a new place, your first job is to read everything and understand what's going on. Reading the docs (business and technical) gives you insight into what's going on and brings you up to speed.<p>3. Figure out the politics. Every office has them and the higher up you go, the more you have to play them.<p>4. Learn the tech stuff as needed. Understanding how team's tools work helps you, as the manager, when it comes to cost/time estimates and understanding your team. Ramp up sessions explaining the processes behind major tools and the tradeoffs are valuable in this regard.<p>I disagree with brudgers that management is supposed to focus on management and not understand the technical side. If you're managing tech people, the easiest way to understand how to smooth the path and get out of the way is to know which way things are going and how the tech works.<p>Management isn't about micro controlling your people, whose got time for that? It is about understanding what they're working on, running interference, and helping them develop towards their professional goals.<p>(Peopleware is a great book in this regard)
Wouldn't it make sense if a manager let the software developers develop software and instead focused on management?<p>The manager doesn't need to know the build system. The manager needs to be able to identify and manage knowledge of the build system within the organization. The set of people who know the build system is a resource. The set of people who know the coding convention is another. The people who have a feel for the system is a third resource.
The manager's job is to hold onto these resources like grim death.<p>The manager's job is not know how the build system works, how the coding conventions facilitate production, or how the pieces of the overall system fit together. The manager's job is to know how the build system is broken and worked around, how the coding conventions impede development, and how the components of the larger system don't fit together. And then to set about determining the set of costs and the set of benefits associated with solutions to those problems. That process of determination is facilitated by those identified expert resources.<p>The managing is not supervising. Draw the pyramid upside down. All of the people being managed depend on the manager and the manager's job is to remove impediments - it's to serve the people being managed not rule them. The best managers are invisible in the best sense of invisible. Things just work. The gears are self lubricating and the process hums along.<p>Good luck.