Learning to Code (the Long Way)
I am an Imposter#
I currently work as a Director of Engineering at a large software company, and I am an imposter. I do not have a Masters of Science in Computer Science (or even a Bachelors - my degree is in Civil Engineering). I never attended a coding boot camp, and the closest I got to programming in my first job out of college was tweaking color palettes in AutoCAD. And yet, here I am!
I’ve been reflecting on this after searching for role models whom I might model my career after. I’ve found plenty of inspiring people and have enjoyed reading and listening to podcasts featuring David Singleton (CTO of Stripe) and Cal Henderson (CTO of Slack) in particular. I relate to a lot of the things they talk about: the benefit of letting user behavior drive product decisions , why we should use agendas and documents to keep meetings quick and effective , and how we can empower developers to support their own services . But then I come across statements like this :
Stripe CEO Patrick Collison describes Singleton as “…an engineer’s engineer: the kind of person who builds a deep learning-based autonomous remote-controlled car on a weekend.”
I mean, I like to tinker too, but building an autonomous car in 2013 as a side project? And then I look at their LinkedIn profiles and 😲
Before going any further I will acknowledge that I am a white, cisgender male who faces a fraction of the challenges that someone from an under-represented background encounters in tech. But the lack of an obvious role model with a similar background has gotten me thinking about how I’ve gotten here, what validation I’ve gotten along the way, and how that can fuel me going forward.
Mentorship#
I’m someone who likes to get to the bottom of things, and once I started working on software teams it was probably inevitable that I’d gravitate towards engineering. If I’m working on a mobile app and there’s a problem on the server, my instinct is to pitch in to fix it. If I’m working on the backend and we’re having problems with our deployment pipeline, I’m going to dig in and see why. Without formal training in software engineering, each of these leaps has required that I level up in a new domain.
Mentorship has been absolutely critical for me along the way. I wish I could remember her name, but the first person who taught me anything about programming in a professional capacity was a colleague at the Maine Department of Transportation (my summer job in college). She patiently walked me through SQL and Visual Basic and smiled as I built a killer database in Microsoft Access to track the results of the water quality samples we were collecting.
It wasn’t programming related, but my boss at my first job out of college said something that sticks with me to this day: “The mark of a good leader is being comfortable not being the smartest person in the room.”
After working as a Civil Engineer for a few years out of college and realizing it wasn’t for me, I took a leap of faith and applied for a job with Partners In Health to be a general technologist at their new project site in Malawi. Much to my surprise they hired me, and I found myself responsible for managing two satellite internet connections and the implementation of an open source Electronic Medical Record , all while being based in a rural part of Africa. An early conversation with Yaw Anokwa proved invaluable in troubleshooting the spotty VSATs: “Just start on one end of the system, and work your way to the other until you find the problem.”
My friends at Baobab Health provided an incredible amount of support to learn while in Malawi. Gerry Douglas and Soyapi Mumba showed me how far passion could take you in solving problems unique to low-resource settings. Mike McKay and Jeff Rafter gave me the crash course in Ubuntu Server that I needed to keep our EMR running, and pointed me to the IRC channels I could reach out to when I got truly stuck. And of course, Darius Jazayeri , Mike Seaton , Justin Miranda , Ellen Ball and the rest of the team back in PIH’s Boston headquarter were wonderful pairs in building the forms, reports and other tooling we needed to make our EMR useful.
By the time I left PIH I was managing our team of software engineers and our implementers in the field, but writing the code to build actual websites from scratch still felt like black magic. Andrew Terris was my next teacher. Afterhours on a 15-month consulting gig in Atlanta, Andrew walked me through the creation of REST APIs in Sinatra, giving me the core understanding and confidence I needed to start creating these sorts of applications on my own.
And last but certainly not least, Kristen Waters (my wife) gave me the support I needed to take a year off from earning actual money to pursue the dream of launching an iOS startup. Slowpost 🐢 may not have taken over the world, but I came out on the other end as a fully formed software engineer.
Validation#
Along the way, I’ve had plenty of moments where I’ve said to myself:
Okay, so I’ve succeeded here. But will that really translate anywhere else?
Erika Lockheimer, VP of Engineering at LinkedIn, put it nicely in a podcast on her “Imperfect Path” , asking herself “Am I in a bubble of success?”
I’d love to be the kind of person who is so confident that they can go on without external validation, but the truth is I crave it. And I know I’m not alone!
Fortunately, I’ve worked with plenty of people who have been willing and able to challenge me, coach me, and let me know when I’ve hit the mark. Ted Constan and Hamish Fraser supported me to take on a series of increasing responsibilities at Partners In Health. Ted’s short and to-the-point style of emails is something I try to emulate to this day (this long post notwithstanding). Tiffany Lentz and Derek Johnson put me in critical client-facing roles at ThoughtWorks, giving me the confidence that I could succeed outside of the nonprofit world. David Foote delegated challenging client problems at Blue Rocket, helping me to believe in my technical chops. Ivy Reyes encouraged me to take a career leap at Shutterstock, and Jason Oh walked me through some of the trickier aspects of managing managers.
Whenever I’ve hit a rough patch or a period of self doubt, I’ve been able to think back to these people who have believed in me, and used that as fuel to keep going.
Fuel#
This all leads me to two conclusions:
- I’ve been doing this long enough: I belong here
- Others go through this too, and I can help!
I started this exercise looking forward at my career, but looking back has helped frame who I am. And I’m reminded of a mantra I love:
See One, Do One, Teach One
I’ve been helped by an incredible number of people in my career, and I’ve found joy in supporting others. I’m excited to continue helping my colleagues puzzle out engineering challenges, providing them with opportunities to be the best versions of themselves, and letting them know when they’ve nailed it.