Can writing code be emotional? Google Cloud’s Kelsey Hightower says yes
Google Cloud Content & Editorial
Editor’s note: Kelsey Hightower is Google Cloud's Principal Developer Advocate, meeting customers, contributing to open source projects, and speaking at internal and external events on cutting-edge technologies in cloud computing. A deep thinker and a charismatic speaker, he's also unusually adept at championing a rarely-noticed aspect of software engineering; it’s really emotional stuff.
So how does one become Google Cloud's Principal Developer Advocate?
A big part of the role is elevating people. I speak and give demos at conferences as well as contribute and participate in Open Source projects, which allows me to get to know a lot of different communities. I'm always trying to learn new things, which involves asking people if they can teach me something, or if we can learn together. I also try to spend a lot of time with customers, working on getting a strong sense of what it's like to be in different positions in a team and working with our products to solve problems. It's the best way I know to build trust and help people succeed.
Is this something you can learn, or does it take a certain type of person?
My career is built around learning to make people successful, starting with myself. I left college when I saw the courses were generically sending people up a ladder. I read a test prep book for CompTIA A+, a qualification that gives people a good overview of the IT world. I passed, and got a job and mentor at BellSouth. We'd troubleshoot, learn the fundamentals, and use our imaginations to solve problems. After that I opened an electronics store 30 miles south of Atlanta, making sure I stocked things people really needed, such as new modems and surge protectors anticipating the next lightning storm - I was always thinking about customers’ problems. Weekends I held free courses for people who'd bought technical books. When you teach something, you learn too. My customers and students didn't have a lot of money, but wanted the best computing experience at the lowest cost possible.
I moved on from there, learning more about software and systems and doing a lot of work in open source Python, Configuration Management, and eventually Kubernetes. A lot of what I'm doing hasn't changed, on a fundamental level. I'm helping people, elevating people, and learning.
What has doing this work taught you?
Creating good software is very emotional. No, really. I can feel it when I'm doing a live demo of a serverless system, and I point out that there are no Virtual Machines. The audience sighs because the big pain point is gone. I feel it in myself when I encounter a new open source project, and I can tell what it could mean for people - I try to bottle that, and bring that feeling to customer meetings, demos, or whiteboards. It's like I have a new sense of possibility, and I can feel people react to that. When I'm writing code, I feel like someone does when they’re cooking something good, and you can't wait for people to taste what they’ve made – "I can't wait for them to try this code, they are going to love this!"
A few years ago I started our Empathetic Engineering practice, which enables people at Google Cloud to get a better sense of what it's like for customers to work with our technology. The program has had a lot of success, but I think one of the most important payoffs is that people are happier when they feel they are connecting on a deeper level with the customers.