4 ms·
Here is a collection of related advice I put together useful for managers of software developers: https://github.com/pdfernhout/High-Performance-Organizations-R
by pdfernhout 8y ago
Here is a collection of related advice I put together useful for managers of software developers:
https://github.com/pdfernhout/High-Performance-Organizations-Reading-List https://github.com/pdfernhout/High-Performance-Organizations...
It includes, among other things, a link to the Khan Academy Engineering Management Reading List.
See especially the first book on the list about a need for "slack" (free time, not the software) called "Slack: Getting Past Burnout, Busywork, and the Myth of Total Efficiency" by Tom DeMarco". The summary: "There is a tradeoff between efficiency (meeting previous well-defined needs with minimal effort) versus effectiveness (meeting newly emerging needs with flexibility and responsiveness through organizational learning). If you optimize only for efficiency in meeting previous needs from past opportunities, you will by necessity eliminate your organizations's capacity to respond effectively to future needs from newly emerging opportunities. This ability to learn and grow as an organization requires "slack" time. Middle management has a vital role to play in organizational adaptability -- but only if they are not over-scheduled."
Tom DeMarco also previously co-wrote "Peopleware: Productive Projects and Team", another excellent book on software management.
Another informative and funny book in that area is by Michael Lopp: "Managing Humans: Biting and Humorous Tales of a Software Engineering Manager"
Bottom line: you have essentially switched to a new field even if computers are still involved so you need time for self-education and practice and failures and recoveries. As in, ultimately, years to get really good at this new profession the same way it took years and thousands of mistakes to get good at software development as a programmer... (Although mistakes with people are often more personally painful than mistakes that just the compiler yells at you about.)
Something else to be aware of (may not apply to you) is that many of the best software developers have some degree of Asperger's -- but people with Asperger's often have issues dealing with human relationships unless they consciously learn various skills for dealing with people that many other non-Aspies just seem to have intuitively. And even when they get good at those skills (sometimes better than non-Aspies because they make understanding all that a focus or obsession), an Aspie using the logical primary CPU part of your brain all day to do what many other people do essentially with an emotion co-processor can leave one feeling drained at the end of the day. So "promotion" from software developer to manager may often be a step backwards in career satisfaction for top developers. Anyway, that is just another complexity on top of all the other issues a new manager of any sort has to deal with. But as you point out, being a manager has its own satisfaction in helping others grow, so if you can get enough positive feedback from seeing your own leverage increase that way, the benefits of transitioning to becoming a manager may eventually outweigh the costs (especially once the people and organizational skills needed to excel become more routinized).
- minhaz23 8y agoHmm its not letting me access the khan academy reading list
- pdfernhout 8y agoThanks for pointing that out. Maybe KA changed access permissions for it? Here is an archived copy: https://web.archive.org/web/20160826115259/https://sites.google.com/a/khanacademy.org/forge/for-developers/engineering-management-reading-list https://web.archive.org/web/20160826115259/https://sites.goo... I also updated the link in the reading list to use that archive.org link.
- siddhant 8y agoThat looks very useful. I'll be adding a resources section in the next few days. I'll make sure I link to this Github repository, if that's OK with you!
- pdfernhout 8y agoFine by me -- thanks!
- krageon 8y agoI appreciate the thought RE the "Asperger", but in the interest of aligning with reality: Asperger no longer exists as a diagnosis (it's all on an autism spectrum now) and saying that many of "the best" software developers "have some degree of" a psychiatric diagnosis is... Well I'm not sure exactly what to call it. Premature springs to mind.
- pdfernhout 8y agoSomething by Jeff Atwood on this: https://blog.codinghorror.com/software-developers-and-aspergers-syndrome/ https://blog.codinghorror.com/software-developers-and-asperg... "Software Developers and Asperger's Syndrome: When I read Wesner Moise's post on Asperger's Syndrome, I wasn't surprised. Many of the best software developers I've known share some of the traits associated with Asperger's Syndrome: ..." Jeff also links to this 2001 Wired article on the topic: https://www.wired.com/2001/12/aspergers/ https://www.wired.com/2001/12/aspergers/ "Autism -- and its milder cousin Asperger's syndrome -- is surging among the children of Silicon Valley. Are math-and-tech genes to blame?" See also: "The Real Problems With Psychiatry: A psychotherapist contends that the DSM, psychiatry's "bible" that defines all mental illness, is not scientific but a product of unscrupulous politics and bureaucracy." https://www.theatlantic.com/health/archive/2013/05/the-real-problems-with-psychiatry/275371/ https://www.theatlantic.com/health/archive/2013/05/the-real-... And from there: "One of the overlooked ways is that diagnoses can change people's lives for the better. Asperger's Syndrome is probably the most successful psychiatric disorder ever in this respect. It created a community. It gave people whose primary symptom was isolation a way to belong and provided resources to those who were diagnosed. It can also have bad effects. A depression diagnosis gives people an identity formed around having a disease that we know doesn't exist, and how that can divert resources from where they might be needed. Imagine how much less depression there would be if people weren't worried about tuition, health care, and retirement. Those are all things that aren't provided by Prozac." Also, in general, there has been pushback about removing Asperger's from the DSM. As above, it was a "successful" diagnosis in that it helped a lot of people feel less alone and find better ways to cope with a situation once they had a name for it -- see especially the multiple books now on Asperger's and relationships which can be extremely helpful for people with it and their partners (e.g. "Love, Sex and Long-Term Relationships: What People with Asperger Syndrome Really Really Want" by Sarah Hendrickx). But, moreso, it is not clear that Asperger's is completely the same as "high-functioning autism" in some ways. This is controversial, but just one example: https://www.spectrumnews.org/news/brain-curvature-distinguishes-asperger-syndrome-from-autism/ https://www.spectrumnews.org/news/brain-curvature-distinguis... "A region of the brain that controls language is more extensively curved in children with autism than in those with Asperger syndrome, according to a study in the Journal of Child Neurology. The findings offer preliminary biological evidence that Asperger syndrome, a disorder on the autism spectrum, is distinct from high-functioning autism, researchers say." I wrote "many of the best software developers have some degree of Asperger's...". Someone can have a little of something to some benefits in some area like programming (below the level where a formal diagnosis of Asperger's might be made other than noting tendencies) -- whereas a lot of something might cause profound difficulties in life overall and fit all the diagnostic criterion for a formal diagnosis. There may also be some sweet spot for success given programming in practice especially in a corporate setting does involve dealing with other people to some extent. Labels tend to be binary -- whereas personality trends are more shades of grey (or shades of colors). In various books on Asperger's (e.g. Asperger's on the Job) there are examples of people with Asperger's who excelled in their jobs because of Asperger's and then got promoted to management where they crashed and burned again because of Asperger's (well, usually undiagnosed Asperger's where people were unaware of the particular challenges they would face and did not know how to handle the transition including just asking to go back to their previous role). I had qualified my comment as "many of the best...". For contrast, here is a Quora article arguing most programmers in general do not have Asperger's though. Part of the reason is explained here: https://www.quora.com/Is-it-true-that-most-programmers-have-mild-Aspergers-syndrome https://www.quora.com/Is-it-true-that-most-programmers-have-... "While in a way aspergers's gives a good aptitude for something methodical and logic based like programming. The deadlines/stress of company life and ‘real world’ work does not provide a good environment for somebody with Asperger's Syndrome." So, in the right environment and role, a programmer with Asperger's might excel beyond those without it. In other situations (including for some, a promotion to management), a programmer with Asperger's may fail hard and someone with less technical ability or less ability to focus intensely on one task but a better intuitive people-sense and better multi-tasking ability may do much better.