How a self-confessed “internet nerd’ overcame imposter syndrome, earned two bachelor’s degrees, pivoted her career from backend to Android development, and is now a technical leader at a company valued over $39 billion
When Deonna Hodges got her first computer (a reward she earned for doing well in school), she instantly became an “internet nerd.” By the time she was a teenager, she had already decided that she wanted to be a software engineer. However, imposter syndrome set in during her first year in college, and she decided to try a different career path.
Despite the bumps along the road, Deonna found her way back to software engineering, and she is now a Sr. Software Engineer at Instacart, where she works on the customer facing Android app, which has been downloaded over 5 million times.
When I interviewed Deonna, I got to learn about her path to software engineering and how she pivoted from C++ backend to web development all the way to Android app development.
You can read our conversation below. My questions are bolded, and her responses are italicized.
Note: this interview has been edited for clarity and brevity.
Could you tell me about your career path and how you got involved with CodePath?
I got involved in CodePath when I took the Android development course back in 2017, when they hosted it at Netflix. At the time, Netflix was using CodePath to recruit and train their own engineers in mobile development, and I got an offer based on my performance in the CodePath course.
I really enjoyed my experience [in the Android development course]. I felt like I was building things for real. Prior to that I did some backend development and C++, some frontend web development, and wanted to explore mobile.
Around that time browsing the desktop was definitely declining as a share of all browsing activity in comparison to mobile, so I thought now’s the time to learn the next big thing or the thing that will gain greater market share. And also, honestly, I was getting frustrated with the web development ecosystem. This was before React caught on–really before TypeScript caught on. And I just found myself really frustrated with fighting various different technologies. I wanted a more consolidated development experience, the feasibility of which is arguable even today. People used to complain about how you have to be familiar with Retrofit and Dagger 2, and et cetera versus just some Google out of the box solution.
All of it was way worse in web development, and I thought it was a joy to develop in Android. From then on, I realized this is what I want to do. At Netflix, I had a wonderful experience and got to work on some really cool stuff. And then after that, I left to join Instacart because one of my career goals was to be at a company from pre IPO to IPO. And hopefully we’ll get there. If the rumors are true, it should be soon.
And as far as teaching goes–Nathan reached out to me and asked if I was interested in an instructor role. I really enjoyed my experience at CodePath as a student. It was super rewarding, so I came back.
You mention switching from web development to mobile, what were you doing before that? And as you know, since your time with Netflix, CodePath has evolved to become a non-profit focused on increasing diversity in tech, so I wanted to ask if you have any perspectives you want to share about being a woman of color in tech.
I started at this financial software company called FactSet. I did a lot of backend, C++ work, a little bit of Java, like writing API’s, and I transitioned over to web development when FactSet tried to convert their desktop application, which consisted of a lot of legacy code, entirely into web.
I was one of the first engineers to work on that project. I got the opportunity to work on a greenfield application, and normally people don’t get to work on a greenfield app in a large established company during their second year of working.
It’s funny because I was the only one who applied for this project even though it was meant to be a team of three. So I was literally the only person working on it. I don’t remember the exact details, but we were using Angular back then. That was the big web application framework before React. It was a wonderful experience, I got to build something from scratch. Since I was the first engineer at that company to develop that expertise, once more engineers started transitioning to web development, I became the person they went to with all the questions since I was the only one who had worked with it thus far.
That project definitely fast tracked my career. From there on, as far as being a Black woman in tech, obviously I don’t see many of me anywhere. I’ve usually been the only Black woman, sometimes even at the company that I worked at, even in medium to large established companies. I generally had good experiences, even though the industry as a whole has had problems. Even though my individual career has gone well, it’s been somewhat disheartening to be the only [Black woman] doing the job that I am doing. But I think I’ve had a lot more positive experiences, in my workplaces and with my co-workers, than a lot of Black women engineers have had, and I definitely consider myself lucky in that respect.
I think it’s great to work with CodePath, especially since they see diversity as their mission. It’s one thing that sets CodePath apart from other organizations, and what’s impressive is that CodePath has the outcomes to back it up because people are getting internships, people are getting jobs, and that’s because of the excellent curriculum and excellent instructors. Students are actually learning and building real world apps, which is way more impressive than what anybody would have expected.
I like the combination of diversity as a focus while also assigning technically rigorous projects to work on. I don’t like it when organizations fall into the trap of saying they see diversity as a mission, but stopping there and not training the talent adequately to get roles and to prepare them for the roles that they’re seeking out. I think CodePath really [prepares students for these roles] and does that well.
What does a typical work day look like for you?
A typical workday. . . well right now I’m leading a project to completely re-architect our authentication systems. That involves quite a few meetings, a lot of doc writing, a lot of engineering scoping, a lot of planning.
So, you know, that looks different from like, what I was doing six to 12 months ago. Which was working on all the various engineering tasks that I need to do to push out a feature. Right now, it’s a lot more planning, being a tech lead, coordinating different work amongst different teams and ICs [individual contributors]. But now I actually have more engineering work, because I am in transition from the side of the project that’s mostly backend and API stuff to the side of the project that entails actually implementing this onto the client, which in this case is Android.
What made you choose software engineering over other fields?
It’s funny because I was interested in engineering before it was cool. I’m not quite an older millennial, but I’m in my 30s. I first started getting interested in tech and engineering when I was in middle school about to start high school, so I was like 13 or 14 years old. I was a total internet nerd, and computer science courses were offered at my high school for the first time ever. I was one of four students taking these courses.
But then, I matriculated into Stanford for college and started taking CS106A, and people in my classes, even though we were just in a beginner CS course, were already starting startups and everything. It was very intimidating, and even though I did well in that course and continued taking computer science courses, I changed my mind and decided maybe I should be a patent lawyer instead, so I would not have to compete with these people who were already founding startups when they’re 19 years old. Instead, I planned on using my technical knowledge in a safer career path, where I felt less like I was an imposter.
I guess imposter syndrome kicked in. You know, I grew up pretty poor and was the first person in my family to go to college. I was not savvy at all, and I didn’t know how college works and how to make it work for me. Later, I found out many of my peers who were starting startups had millionaire parents with connections to venture capital. Of course, that wasn’t really part of the conversation, then.
At the time, I thought [tech] was a meritocracy, versus getting to know the right people, being in the right meeting, and knowing the right professors. In that sense of the word, I was not savvy at all.
By the time I graduated, I was fully set on my patent lawyer path. I even had recommendations lined up. But it didn’t really feel right, and I didn’t know if I actually wanted this. So after graduating, I basically went right back to school. I’m from Maryland, so I went to the University of Maryland, College Park, and started taking more computer science classes, and then eventually enrolled in a second bachelor’s program. Back then there were no bootcamps. There was no short and easy launch pad for somebody who was already credentialed to pivot into software engineering.
Not that I think traditional education is a waste of time, but if you just want to learn a specific skill set and become confident in that skillset you shouldn’t need two bachelor’s degrees. I think that’s where CodePath fills a big gap. It’s a great supplement to traditional computer science education for people who want the practical skills.
As far as what attracted me to software engineering, I think I just had an early inclination. I got my first computer as a gift from my grandpa as a reward for getting all A’s on my report card. From there on, it was super innate in me. My mom had to put restrictions on my computer time because I was always tinkering.
It seemed like a really natural fit, then I lost my way, ironically, when I went to Stanford, which is seen as one of the top schools for computer science. Then I found that path again, and it feels great.
What advice do you have for students aspiring for a career like yours?
Be intensely technical. Seriously, you’re not going to get anywhere in this industry by bullshitting. You might get your foot in the door, but you have to be intensely technical. Continue to learn. Subscribe to newsletters that are relevant to whatever technology you’re using.
But also be vulnerable about what you know and what you don’t know because dishonesty makes it harder for your team members to trust you. So try to stay on top of things, but if you don’t know something and you’re open about it, people are willing to help you learn and grow.
As an instructor for the Android course, what are some outcomes that you are looking for?
I want my students to feel confident in creating their own apps. I want them to feel competent at learning new technologies, picking up a new library, knowing when to use what. Basically, I want my students to have fundamental Android knowledge in order to learn and build new things. I think that’s what gives people confidence in building things from scratch.
How would you describe your job to a 5 year old?
I feel like five year olds nowadays are already on Youtube, Netflix, and more, so they have an idea. So I’d say, “Hey you see how Netflix Kids works? And you see mommy on her smartphone all the time? That’s what I helped build.”
Do you think 5 year old Deonna would be proud of the current you?
Probably not because I wanted to be an astronaut like every other kid. I’m not in space, I haven’t been yet. I think objectively, I would be proud of me. But as far as cool jobs go, I think my five year old standards were higher than they are now.
Do you think 18 year old Deonna would be proud of the current you?
Yes. Because that’s when I originally decided that I want to be a software engineer, and that’s what I am now.
CodePath’s Android course offers CS students a chance to flex their development skills in a rigorous project-based class. Interested in learning more about CodePath’s courses? Visit https://codepath.org/classes to learn more!