Note from the Editor, Tricia Wang: I’m very please to announce that the next contributor in the Co-designing with machines edition is Astrid Countee (@ianthro), an anthropologist, software developer, data analyst and writer all-in-one. In this article, Astrid illustrates how being an anthropologist makes her a better developer, and argues that the gap between the social science and tech must be bridged to reach new innovations. Her article echoes themes brought up in edition contributors Stephen Gustafson’s and Che-Wei Wang’s post – where both authors discuss the importance of the human side of AI innovations. As a long time fan of Astrid’s work, I’m also excited that we get to hear her recount her journey of starting out as neurosurgeon student to becoming an anthropologist and then a software programmer. She is an organizer for Rails Girls, a workshop that teaches girls and women how to code. Her newly available book, Family Talk and Chronic Disease, a practical guide for black families to manage diabetes and hypertension. She is currently pursuing a masters in computer science and math. Read more of Astrid’s writing at Ianthro.
I did not always have dreams of being a software engineer. For a very long time I dreamed only of being a surgeon. I was fascinated with medicine, and longed to be able to help people from the inside out. It was with this singular focus that I entered college as a forensic science pre-med major and started down a path that I thought for sure would end with me in the operating room.
But my fate was changed, at first very slowly and then with a quickness. The first couple of years in school had been rough on me. It made me question if I was doing the right thing since I wasn’t enjoying my major as much as I thought I would. I didn’t like the way that the natural sciences taught through memorization. I was interested in discovery, and wanted the challenge of making something new, rather than learning how things already worked. All of these things were small nuisances at first, but they let to me deciding to drop my pre-med designation. I was now free to take classes that I found interesting. I found a better fit studying psychology, neuroscience and linguistics. Then I took my first anthropology class. This ushered in the quick change. I found the discipline that I would continue to study in graduate school, and a worldview that gave me the chance to discover. I loved the integration of natural science, philosophy with art and history. It allowed my mind to see the world from a new angle.
While working on my graduate degree, I also worked full time at a data company. It was at this company that I learned about technology and my love and affinity for it. I learned how to run queries, how to build databases, and how to manipulate data in ways I had never thought to before. It was a great compliment to my graduate studies as a medical anthropologist. It was also at this company that the seeds were planted that lead me to become a software engineer. It was that same sense of discovery combined with tools to build what I wanted into existence.
I found ways to apply anthropology to everything that I did, including software. Anthropology and software are not exactly peanut butter and jelly, but they do maintain a delicate balance to innovation.
Digging into Anthropology
Anthropology is a broad discipline concerned with techniques like ethnography, often using grounded theory, where you go out into the field and allow a culture to tell you who they are and how they do things. It is a science unlike any other in that what you can study nearly knows no bounds. The vastness of the discipline trains you to see universal patterns. Everything is understood as belonging to a system. It is through understanding the system that you can find your footing in something unfamiliar, and find your way through it. It is no wonder that when I started working as a software engineer, I was drawn to DevOps and systems engineering. My anthropological training lead me straight to the framework for how technology works.
I know the value of holism, of seeing how one piece affects another. It is an obvious thing that often gets ignored when building technical systems. People often think of technology as machines talking to machines. And while that is true at some level in the technology stack, building software is more about people than anything else. There are people who are using the systems, there are people who are architecting the systems. There are people who are writing the software. The human footprint can be found everywhere you turn. So, it makes sense that humanistic thinking in software is revolutionary. It is the reason why Apple can change the world by taking their iPod and attaching it to a cell phone. 10 years ago smart phones were an extremely small part of the market. Now, in the western world, it is likely that there are more smart phones and tablets in a home than there are personal computers. It isn’t by accident, or only by great marketing. It is by using technology to tap into a holistic system. These systems exists around us all the time, and an anthropologist is trained to root them out, understand them, and predict how they will change.
Gearing up with Engineering
But like any balanced equation, being a software developer has changed my view as an anthropologist as well. My training, even as an applied practitioner was not nearly as project driven as my work as a software engineer. In order to break down the problems I am looking at, it is helpful to start doing something, in order to understand it. Even if that means sketching out the chain of events that I am trying to fix, action is a virtue. You are a software engineer because you write working programs. That’s it. No peer-reviewed work, no list of accolades to prove your value. That intentional execution has influenced the way that I think about problem solving. It forces me to get deep into the dirty work much sooner. It also means becoming expert at shrinking big problems down to size. The only way to eat the elephant is one bite at a time. No one knows that better than a software engineer. It is a huge part of the job to dissect what you are doing down to small chunks of solvable problems. Being in the thick of it is what I loved about being an anthropologist. Being a software engineer takes that to a whole new level.Read More… An Engineering Anthropologist: Why tech companies need to hire software developers with ethnographic skills