Meet the QCon San Francisco Committee Members

Our program committee members are always software leaders working on in-production projects. Get the chance to engage and network with professionals driving change and innovation inside the world’s most innovative software shops.
-> ~ QCon
QCon - Speaker
Find Courtney at
QCon San Francisco 2020 Committee Member

Courtney Hemphill

Partner & Tech Lead @CarbonFive

Courtney Hemphill is a Partner and Technical Lead at Carbon Five, a strategic digital product development firm. She has been developing software since 1999, first at an early stage e-commerce startup and eventually moving into consulting. In her role at Carbon Five, she has built ground up HIPAA-compliant, cloud-based platforms for health care companies, worked on a large server cluster analysis and forecasting platform, and supported enterprise executives transitioning from third-party solutions to skilled in-house continuous delivery teams. She is currently managing the Carbon Five NYC team and helping companies in insurance and finance develop cloud-native, test driven, continuous delivery software for data management, APIs, and new product creation.

Courtney mentors for TechStars, is an advisor to several startups, and organizes coding workshops for women. She also sits on the Golden Gate Board of NatureBridge, and is constantly finding random new corners of the world to rock climb.

Interview

How did you get into software?

I got started as a software developer roughly towards the end of my time at the University of Chicago. I had finished up the requirements for my biology degree and so I decided to take a couple of programming classes. After college, I ended up just getting a job with a friend of mine who was starting a Web 1.0 e-commerce company. We were selling posters online basically but it was really fun actually; mostly because it was tons of learning. Everything was new to me: developing for a production website, learning about warehousing and inventory, writing code (probably really bad code) in .NET, and ASP. I just learned a ton and really just kind of realized that I liked the craft.

I was in the back of my head thinking that maybe I would pursue something else. I graduated with a biology degree and I felt kind of silly not using it. I tried out a couple of jobs in labs and medicine but at the end of the day I would come home and I would code for freelance clients. I finally figured out that what I liked doing was coding and so I just stuck with it.

Now I’m at Carbon Five, a digital product development consultancy that focuses on a pretty wide variety of projects. In some cases we are building large scale web platforms, like Filecoin and IPFS with Protocol Labs. In other cases we’re helping to build beautiful new digital products like MasterClass or helping to scale growth companies like StitchFix.

I've been here for 14 years. It’s continually interesting because every project is unique with new technical challenges, new industry challenges, new organizational challenges. Instead of specializing in a particular language or area of the stack, we get the opportunity to work across the spectrum. We’ve done projects where we’re helping companies move from a huge 5-year-old monolith serving millions of customers to a microservice architecture with services aligned to their separate business areas. The greenfield projects are always interesting but mostly because you are watching a product developed at a rapid pace and watching early customers respond to the features. It requires the team to be hyperresponsive to change. I’m always impressed at our product and design team; they have to pivot constantly and look at the product design as an evolution based on customer feedback.

What are you currently working on?

I'm a Partner at the company these days, so I do less hands-on programming and I’m no longer committing code. Instead I’m working with our clients to help grow their teams and look at ways that their technology can create better business outcomes. Sometimes this is helping with the organizational processes to deliver code and sometimes that is working to explore other product lines that their existing technology is already strategically positioned for.

It is interesting to take technical leaders down a line of inquiry that allows them to think outside of their current assumptions. What language might be an ideal choice for a product or service even if it is outside the core stack? What kind of architecture is appropriate for the stage of growth that a company is in? (hint: push back on architecting for scale too soon) You often have to look beyond the purely technical. What kind of languages should you focus on given the talent pool you are hiring from? Are there alternative solutions to custom technology that might solve the problem more easily? How might you organize teams to be more effective? How do you incentivize code quality and testing discipline?

It's definitely a different type of role than I used to play. I'm not getting to deliver software, but it's fun to be able to work on these problems. I also like being close to the crazy ambitious things some of our clients are doing. We’re working with Protocol Labs right now and the goal of IPFS (basically rewriting the web to be decentralized with more secure protocols) is huge. The team is so smart though and the solutions have to be able to scale to an insane degree.

We’re also working with a slew of financial companies and new banks that are using technology to make moving money much easier and faster. It is fascinating that the ancient mille-feuille of financial services is still holding up our banking infrastructure. These companies are taking advantage of that by providing much better platforms and consumer experiences.

What brought you to QCon initially? What was your first experience?

Ah yes, the wonderful world of QCon. Years ago they contacted me to give a talk. Honestly I'm fuzzy on the details; I didn't know much about the conference at the time. And so of course, I started diving into what QCon was. My perception of it originally was that it was primarily for the Java crowd. And I was thinking, oh, this is one of the old school, enterprise style software conferences. What I discovered was that QCon actually was much more at the cutting edge of technology than I thought. So I started reading a bunch more on InfoQ, then I attended and spoke at my first QCon in NYC.

I've always been really drawn to talking to software practitioners. I felt like I had gone to a lot of conferences where it was created by people that were coaches or they got brought in to sell something or they mostly wrote about software and were not writing the software. By the way, I’m a consultant, so I totally get it. You're supposed to go out and talk about what you do. But what I appreciate about QCon is that it is put together by people that are so passionate about technology, the application of technology in the real world, about development, about coding, about new languages and architectures. Everyone I met was really knowledgeable because they were deeply involved in the work. They weren't just talking about it. That really sold me on the conference and made me feel honored to be a part of the community. It's also kept me coming back to it. I think I've probably now spoken two or three times, and I've had the opportunity to be on the programming committee. It's amazing to realize - all of the speakers and the other committee members - these are not just the people that are at the top of their careers in technology, they're also good humans, they're still in software and they're doing this because they really love it. It is something that is beyond just a career for them. It's their passion. It's what they like to read about, it's what they like to network around, they like to have friends and talk about this stuff, even after hours. It is a similar kind of experience for me.

I think there's an authenticity that I get from the speakers at QCon that's refreshing. People really bring their honest selves and they give not just the shiny pretty speech on stage, they really give the good and the bad of the work that they're doing. That's the kind of thing that can be so much more inspiring because you don't just feel like you're getting this shiny gold narrative of a person's experience or what they've done, you get really their struggles, you get kind of the hero's journey. I think that kind of content allows everyone else at the conference to feel open and free to share their experience in a very authentic, honest and vulnerable way. And I think that's partly another reason why people make good connections at the conference that tend to last. And it's not just coming to talk about all the amazing ways you've developed software. It's like you can come and bring your full experience.

One of the things I really liked is that speakers and attendees bring their problems and challenges they're facing to talk about. It's not just ‘we have a shiny product.’ Instead, it's: “Yeah, we keep crashing once we hit over a million API calls a day, we don't know what to do.” It's great. I like that.

What topics in tech are you particularly passionate about at the moment?

There is one that is really a personal one that I would like to champion: the ethical considerations of software development. I think we as an industry are coming into our own, and I say coming because I actually still think that we're, as a profession, developing. How do you empower individuals that are coming into this profession to be able to make the right choices. Software development is such a wonderful career and profession because you can go into it without having to get an official license or go through expensive accreditation processes - the opportunity is available for everyone. It's this wonderful, equitable playing field that everyone can jump into. The door is wide open. If you like coding, you can learn coding online and you can start coding straight away and you can provide a ton of value to the world. What we are lacking as a profession is a way for people to understand questions like “is what I’m coding something for the greater good?” There may be opportunities for malfeasance or misuse in the things we write later on - what are the tools I can use to protect the code and protect the user? How do you ensure what is being released into the wild isn’t being used in a bad way?

As a culture, our industry has a tendency to be very DIY in the ways in which we progress our field. A lot of that is appropriate given the fact that we are tackling problems that haven't been solved before - technical problems where there’s little or no precedent to build upon. But when you think about ethical considerations and society and the ways in which humans can work together, there's a ton of knowledge to be gained from the ways in which humans have had to interact with one another in the past. There are external sources that we absolutely should be looking to, to start to understand how we evolve what has already been put together from the legal profession, from medicine, and from the philosophical professions. What first principles do they use to make decisions? How can we learn from that?

What do you think is the next big disruption in software?

I think the next big disruption is going to probably take place at the intersection of hardware and software. I think that we're still at the early stages of machine learning and how the data that we now are learning to collect in mass quantities can be used in a production capacity efficiently. The way in which you can get better efficiency is not just through the code and the distribution of it, but actually in the hardware and software interaction.

This is how FANG can make things more high performing and are able to crunch more and more data. I think it'll be interesting to see what happens at this interface of software and hardware and how software may influence the creation of hardware. In this way, the architecture of the hardware itself could match the software. This is why I think Rust is really interesting. I can imagine this is where we'll probably see some really crazy developments happen not too far in the future.