A rockstar programmer that is. Like Rob Johnson, Adrain Colyer, Tor Norbye, Joe Nuxoll, Carl Quinn and many more. Ed Burns interviewed these people who has made it big in the IT industry. I just finished reading the first chapter. He interviewed Rod Johnson, the CEO of SpringSource. His career path is interesting. He has a Phd in 19th century Piano music. He started his career in IT as a professional C++ programmer but then made a switch to Java during it’s early days and succeed in the IT world. I know a similar story. Phil Wilson, Microsoft MVP for Windows Installer and the author of Definitive Guide to Windows Installer, has a chemistry degree holder.
I quote interesting answers Rob gave during the interview:
On Software Developers and ignorance.
“For a start, if you don’t know your limitations, how could you possibly improve? I mean you’re not going to learn anything if you don’t know what you don’t know.”
On meta-cognitive (thinking about thinking)
“With respect to writing code, I guess thinking about your emotional state isn’t that important. I think one thing that’s very important is the insight in your performance. I’m sure everyone has had the experience where there are days when you’re on fire. I mean, you must have had this, Ed. When you have a list of ten things to do, you do all of them.
Then you come up with a list of then next two things, and you do them, and they work. And the you start thinking of the other things to do, and they all work. And i think when you feel that, you keep working as long as you can. On the other hand you need to have the insight into when you’re just not being efficient and just not working. There are times when, for whatever reason, you’re just not -you’re either tackling the wrong problem or your mental state is not helping you do the task.”
On good traits of software developer
“Good general problem solving skills…energy-I’m sure this is the same for success in any field. Highly successful people have abnormal amount of energy and passion, and that’s extremely important. To get outstanding result, you have to care more than average. You really have to care about doing the best that you can”.
“One thing that I’ve seen in majority, not all, but the majority of outstanding developers, is passionate desire to make it better….And i think that, by and large, good software developers have that characteristics”
“And intelligence. You look at outstanding developers; they’re pretty smart people. They may not be well rounded people, but they’re generally pretty smart.”
On role of luck in his successful career
“It definitely played a part, but it is hard to distinguish, because i think that competent people tend to be lucky. Another way of looking at this is: What could have gone wrong?”
“Healthy ego. I’ve seldom seen a successful software developer who didn’t have a fairly big ego. I think it does seek to motivate. The question is whether or not there’s the insight, the meta-cognition that its getting in the way. And i think it’s absolutely vital that people can cope with being wrong and admitting being wrong. But, on the other hand, the majority of very outstanding developers I’ve seen did have probably bigger-than-average egos.”
Well, there’s more. I can only list some here. This book will be my constant companion for the next 5 weeks.