4 ms·
Random thoughts: * The priorities of developers are very different from those of managers and the greater business. Your goal is to serve the business, but neg
by ianhowson 9y ago
Random thoughts:
* The priorities of developers are very different from those of managers and the greater business. Your goal is to serve the business, but neglecting the needs of your developers has obvious long-term consequences.
* Politics, obviously. I didn't expect to spend my entire working week literally arguing with people.
* Technical skills are still super important. It's not like you give up coding and just manage. You have to be able to do both.
* Buy a Bluetooth headset that you love. I have a Plantronics Voyager Edge. If you're going to spend hours on the phone each day, you might as well be able to type and walk around. (Remember to mute the mic when you flush the toilet.)
* Block out time in your calendar for 'getting work done' -- focus time. Make yourself unavailable. One employer had single-person meeting rooms, which I loved -- I could be found if necessary, but was a lot less likely to be interrupted.
Being a manager for a while helped me to understand why my managers behaved the way that they did, and helps me now (as an individual contributor) to direct my managers to where I think I need to be.
I love the 'bigger picture' thinking, and I love designing larger systems with others. Negotiating about subsystem boundaries and "whose job is it" is challenging, but useful.
I'm happy to leave the fiddly details to others. This is possibly the hardest thing to adapt to -- if other people are coding on your project, they're going to do things the way that they want to. It won't be the way that you want it, and it'll frustrate everyone if you try to force them into doing it your way. You just have to take that massive leap of faith that everything will be alright.
You can never overcommunicate. Learn to love PowerPoint. Write a lot of emails. Document everything on your company wiki.
- brabel 9y ago> You just have to take that massive leap of faith that everything will be alright. To let your employees do their jobs is taking a massive leap of faith for you? Looks like you should learn to trust them a little bit more. If they cannot be trusted due to lack of competence, perhaps you should invest in training and a better process.
- volundr- 9y agoThat's not really what he's saying. As a developer, it is up to you to make things go. As a manager, your job is to support engineers and believe that they will make things go. That is indeed a leap, and a very different mindset.
- tj-teej 9y agoWhen you're an engineer, you can literally prove your solutions will work; (through unit tests, etc). I think the OP is saying that with management you don't have that kind of proof, and trying to get it will hinder your team.