Decoding the Path to Staff Engineer with AJ Oxendine (Podcast & Transcript)
"You made it this far because you're good. Just be good. Don't question it. And if people don't see you as that yet, they're going to. It's just a matter of time." - AJ Oxendine
AJ Oxendine is the Tech Lead and Staff Software Engineer for the Home Feed product at Pinterest. She enjoys the creative process of building new things, figuring out how they work, and how she can make them better. This passion has led her to study music composition, art, graphic design. and now, software engineering.
In this episode, we discuss:
AJ's nontraditional path from design to engineering
Thoughts on IC vs management
Skills and mindset shifts from Senior to Staff Engineer
Tips on gaining visibility for your work
Expanding and refining your brand as your role evolves
Thoughts on navigating diversity, intersectionality, and tech
Maintaining mentoring relationships
Transcript has been edited for clarity.
Karen Ko: Hey there. Welcome to Engineer Your Career, a podcast brought to you by West, a learning community, empowering women technologists through mentorship. Join us as we hear from inspiring women tech leaders who are challenging stereotypes and paving the way for future generations. We hope their career journeys inspire you with new ideas to engineer your career. Let's get started.
Hello everybody. Welcome to our latest episode of Engineer Your Career. I'm Karen, and I'm excited to introduce our guest, AJ Oxendine. AJ is the tech lead for the home feed product at Pinterest. She enjoys the creative process of building new things, figuring out how things work, and how she can make them better. This passion has led her to have studied music composition, art, graphic design, and now software engineering. Welcome to the podcast, AJ.
AJ Oxendine: Thanks, Karen. I'm happy to be here.
Karen: To kick off this conversation, can you tell us a little bit about your career journey and how you got to where you are today?
AJ: So I come from a non-traditional background. I didn't get my degree in computer science. I actually studied design. I went to FIT, and I was 100% going to be a graphic designer. I ended up getting into coding out of necessity.
I ran out of money for my degree, and so I was going to freelance design. I totally had this whole plan, and that sort of turned into freelance web design. And so I had a friend who needed some web design for their store, their antique jewelry store, and after I designed it, they're like, yeah, okay, you got to build it. And so I had to build the thing that I designed, which gives me a lot of empathy for both designers and engineers.
But yeah, I basically went on Google and figured out how to do this Shopify site and edit it, and at the end of it, I realized I should probably take some kind of class in coding so I can do it for real and offer this.
And when I went to bootcamp, they actually chose the path you took, and they put me on Android. So I didn't end up doing web design at all. I don't even know how to write JavaScript, to be honest. I mean, I can read it, but I ended up learning Java and doing Android. And through that, I applied for Pinterest's apprentice program. So that was six years ago, almost to the day.
Karen: Congrats.
AJ: Yeah, it was really tough, but I made it. And the apprentice program, you have about a year to get converted to full-time. I did it in six months. I was just hardcore working all day to kind of get the job. I really wanted it. It was the first thing I applied to, it was the thing I wanted the most, and I got it.
Karen: So you're at Pinterest now. Tell me a little bit about what you're working on these days.
AJ: Right now, I'm working on the home feed. So the first page, if you open up the app or if you log onto Pinterest, that's our homepage. Personally, I started about three years ago designing this pseudo server-driven UI. I would say configuration-driven UI, but basically eliminates the need to hardcode content that we want to inject in our feeds.
And now I'm expanding that design across our search surface and our closeup and home feed. And we're basically making these little bits of injectable content just to delight users if they're getting bored in their feed or if they feel like their feed is unorganized. Here I come to save the day with a little bit of inspiration you might not have been expecting. Yeah, that's pretty much what I do.
Karen: I love that. Thanks for sharing. As you advanced in your career, did you ever consider becoming a people manager?
AJ: I spent a lot of time thinking about where I wanted to go, especially when I got promoted to senior level. I really love coding. I like the calmness and reliability and predictability that I get from code. There's an answer. Like, right now I'm dealing with a ridiculous problem that I'm trying to solve in different parts of the stack, but I know that there's an answer. I know that technically there's a solution somewhere.
I just have to… when it comes to more abstract things, people management, you kind of get into areas where you don't know if there's a, so you kind of like don't know, you might have to make it up. It's less calm, it's less soothing than coding, and I'm not entirely sure I'm very good at it. I'm probably much better just being the go-to guy for technical problems, things like that. So I thought about it, but yeah, no,
Karen: Honestly, it's such a personal journey. There's definitely people that go back and forth.
When we're thinking about the move from senior to staff engineer, do you feel like there were certain skills or anything that you needed to learn in order to get to that staff level?
AJ: Definitely, and I think at each level you kind of have a different perspective of things and the goals are different. So when I was very junior, it was all about flashy features, big buttons that move metrics, people saying yay.
And as I progressed, it became more about foundational issues, structure, system maintenance. There's a lot of areas for improvement, and I spent a lot of time looking for those areas of improvement. I also just don't like doing things twice. So if I ever found myself doing something twice, I was like, okay, oh no, we're going to make a system. We're going to automate this. This is ridiculous.
And I think that energy of thinking about how you can make things better, not just for yourself and not just for your team, but as you progress, it's going to be like, how can I make this better for my org?
How can I make literally the whole app better? How can I make it better for—as you go up, more and more people are going to benefit from your work. And so that's the perspective I had of what needs to be fixed, how can I fix this, how can I share this solution to a larger audience? How can I make everyone else's life better, including my own? And yeah, that was a big part of it. Also, mentorship was a big part of it, just having people to just listen to you, hear you out, but also people who are higher level than you, giving you pointers and tips that keep you from falling through the cracks or getting missed on things.
Karen: Yeah, definitely. That leads me to another question about visibility. Pinterest is a pretty large company, and I'm curious, as you had been rising in your career, what you found to be helpful when it comes to gaining visibility for your work or gaining visibility as someone who had high potential and could make it to that next level.
AJ: Really, it starts with you, and this is, it sounds cheesy, but there is this initial thing you have to get over about being your own cheerleader. But I don't think I would've gotten nearly as far without being my own cheerleader, like documenting my own work. I made this button blue, and everybody loves it, and I'm going to tell everybody, and sort of volunteering for visible opportunities.
So when we are giving presentations for the team or we're addressing all hands, showing off, okay, we made these new shopping features. Volunteering to be one of the people to write up a presentation and talk about the work that you built.
Always finding the opportunity to talk about the work that you built and it feels really gross. You think, oh, I did these things. People know, people should just know. Everybody knows that I built this thing, but they don't.
Nobody knows. They forget immediately, immediately forget. So constantly documenting what I did and finding opportunities to speak. Also, we have makeathons every year where you kind of just hack something together and you present it to the whole company, and it could be anything, right? Signing up for that and just getting your face out there.
Hey, I'm AJ. I made this silly little thing during our hackathon that's helpful. There was also, we had this women's conference first year there and there was a woman who told us that you have to, if you're invited in the room, you should have something to say.
And that really stuck with me, because I'm in a lot of rooms. I'm in a lot of meetings, and as an engineer, there's this will to kind of hide and code in the corner. The grownups are talking, and I'm coding in the corner. I'm physically there, but I'm not there.
But I often think about, if I've been invited to the room, I should have something to say. There should be a reason for me to be there. And so when I approach meetings and I am listening for people mentioning something that could benefit from my input, sure, they're talking about PM details and design details and OKRs, but something in that is something I can respond to. That's why they invited me here.
So maybe it's an OKR, and I can say, oh, that's going to be three weeks, or if you add this, it's going to be longer. Just some kind of insightful thing. And you'll start out, maybe it'll be nothing, and it won't have that much of an impact, but the more you train yourself to actually speak up and represent yourself, as you go, you actually start seeing really important things, and then people start to need you, and suddenly it's like, oh, where's AJ? We got to wait for AJ. As opposed to just being the silent participant. So those two things, actively, actively promoting yourself and then just speaking up as much as you can.
Karen: Do you feel like the speaking up was something that came naturally to you?
AJ: No. No. My natural thing is to just kind of hide. And to be honest, when I first started, everything was over my head. You're in this meeting and people are speaking in acronyms, and you can't stop them every five minutes and be like, well, it's a WAU, I don't know what you're talking about.
So I just sat there not knowing anything, still trying to code my features, and just kind of listen. And then when there were things that I could say, I was very nervous, especially when it's something negative, something that's like, oh, that's not going to work, or oh, we can't do that.
I would wait for maybe my manager or some other senior person to say something, and not really feeling that it was even my place to talk. But again, if you're invited to the meeting, you're allowed to say something or else they just shouldn't invite you to that meeting.
So yeah, it started with practice, and it started with maybe saying even obvious things. Sometimes managers would ask for updates, and that would be a chance to give a really clear, concise update and address any issues, and just kind of sound like you know what you're talking about. And eventually you get used to it and it's sort of second nature. But no, it's not easy at first.
Karen: How did you figure out what the acronym stood for? Did you write them all down during the meeting and then ask someone after?
AJ: I would ping people on Slack, like my mentor, what's this? What's that? And then eventually, I think someone sent me a running doc of all the acronyms, and then eventually, because they change, I just kind of give up.
So now, as a staff engineer, anytime someone tries to drop an acronym, I'm like, what is that? What do you...? I just openly in the meeting, stop it to kind of clarify, which I think is totally fair. People should not be speaking in codes in a meeting that's for everyone.
Karen: Yeah, I love that. What advice would you give to someone who is striving to reach that next level to staff eng?
AJ: Yeah, I would say look outside of yourself. Look outside of your day-to-day concerns. Step outside of your team and think about how you can be effective on a larger scale. What's something that's missing that you can make better?
Just find, there's always going to be inconsistencies. There's always things that can be better, and a lot of it is just laziness or we're so used to it that we just constantly ignore this one thing. What is that thing that we're avoiding fixing? And be the one to kind of step up and spearhead some kind of campaign to fix it.
Ask your manager for time. Always be open with your manager about your goals and what you want to do. And if you find yourself being passionate about it, I would write a proposal, write it up, get all the details, figure out how it maps to something that's important.
The bottom line is, I think, between senior and staff engineering is the amount of impact you can have. So senior, maybe you're very impactful for your team. Staff, you're impactful org-wide {inaudible] for front-end engineers, you're the go-to because that's going to lead into those tech lead roles.
And there was also, I did take some time to do some additional studying architectural design, design patterns, and how I could apply these things I was learning to my little code base.
Because there's a lot of freedom, right? So I learned new design and then I practiced it with a new build, and just exercising those system design muscles.
So it's not enough to make a pretty UI, make a nice button, right? Now I got to make a system of buttons where they all do the same thing. I got to make something that's larger than what you originally have, and that's going to give you that impact that goes beyond your main concerns or your day-to-day work, and also advertise what you [inaudible].
Karen: You've mentioned documenting several times already in our conversation, and I'm curious about if there's a template or something of how you go about documenting your projects or features that you've done.
AJ: Nowadays, I don't really have any kind of standard way, in terms of my own personal notes. I know the things that I do.
What I do do that is standard is when it comes time to do self-reviews or performance reviews, I like to take a look at what our company goals are, what the team goals are, what are the expectations as a engineer at my level. And then I map the work that I've done to those larger goals and expectations. So that way, it's very clear the kind of impact that I have in the kind of areas that it works. As opposed to doing a brain dump in your self-review, you kind of want to make something that makes it very clear that you are a valuable employee, perhaps someone who's due for a promotion.
Karen: Yeah. Did you find that you needed to rebrand yourself in a way as you were moving from that apprentice to Junior to further up onto to Senior Eng, that you needed to help folks around you to know that you're no longer a junior engineer, you know what you're doing at this point?
AJ: That's a great question. I wouldn't say a full rebrand, and I wouldn't say that it's not an issue. And I think especially as someone coming from a non-traditional background, there is sort of a reaction that people have, especially if you look like someone like me, there's a reaction, and it's one way when you're a junior engineer and it's kind of okay for you to be in that place, but as you become more senior, that reaction that people have toward you can become a little aggressive.
And so it wasn't so much of a rebrand. My original brand is to just do good stuff and have fun and solve problems. I'm all about doing things correctly and having things work cleanly, and that's kind of always been my brand.
But as you go into more senior level, I had to adjust the brand or expand the brand to reflect the fact that I don't say things for my health.
If I don't know the answer, I'll tell you. If I definitely know the answer, I will definitely say it. And so a lot of that just took a lot of patience. There was a time when people just kind of think that you're wrong, and it's because you're in this in-between stage where you used to be wrong. I used to not know things, and now I know more things.
And that just involved a lot of waiting, a lot more clarity in my delivery of a feature, going from not really having technical design docs to having technical design docs, and going through technical reviews and shoring up any loose ends.
So perhaps I became more strategic in my brand or more of solid in what I knew and having more evidence for what I knew to be true and just being prepared for people to question me and try to knock it down and making sure that I knew what I was talking about and I had data to back up the things that I was trying to get across. So yeah, not a complete rebrand, but you do end up developing yourself a little bit more deeply, and I think that's just a part of the process in general.
Karen: Thank you so much for sharing that. I'm glad that I have this perspective from you. I think that this is something that a lot of folks that go through bootcamps and then they join their first company, and it's one of those situations where they start as a junior eng or an apprentice and then they're like, for whatever reason, I can't shake the image that people have of me that I am still super junior, even though I've been here for three, four years. I'm not that junior anymore. So I think it's really helpful to think about it in the context of this not being a rebrand per se, but it's an expansion of your brand and your capabilities.
AJ: I think also part of that is believing in yourself. You have to believe it yourself first. And that was also something I had to accept, where one day you don't know anything, and the next day you're like, oh, I do know my shit. I am really good at this. I can do this. And that's a confidence thing.
So if people will kind of continue to see you in that initial role, part of it is you trying to change their minds, but the other part of it is you changing your own mind and accepting the fact that you're here for a reason. You made it this far because you're good. Just be good. Don't question it. And if people don't see you as that yet, they're going to. It's just a matter of time.
Karen: Love it. So keep going.
AJ: Yeah, just keep going. Don't stress about it too much.
Karen: Yeah. I have a few more questions for you if you're open to it. Can you share a personal experience or challenge you faced when transitioning from that senior engineer to staff engineer?
AJ: I would say my biggest challenge was accepting that I was ready for staff and getting over the fear of not being able to meet expectations, not being able to perform at the level.
It's scary because once you're senior eng, you kind of got in the bag, I know what to do, I know what's expected of me, I've been doing this for a while, and everything kind of really makes sense, and it's very compartmentalized, and it's nice.
And then you get to staff, and then everything explodes sort of exponentially, and—
Karen: Oh boy.
AJ: It's the opposite. People used to think you're really junior. Now, people think that you are super expert-level, and you have to curate the things that you say because your words have a completely different weight to them.
That's really hard because I tend to kind of impulsively answer things or ask people questions, make jokes, and you really have to analyze everything that you say because now there's people looking up and you don't want to make someone else feel inadequate, or you kind of don't want someone to take something the wrong way or someone hears you say something and then they end up working overnight on something and you're like, oh God, no, go to sleep. It's not that important.
Everything has to be rethought from the perspective of, I am a leader now. People are looking to me for answers, so there's more people looking to me for answers, but also the people on my team who are on levels lower than I am are now looking at me in a different way.
And I kind of have to rebrand almost, a little bit, but refine how I present myself so that I'm supporting everyone and not sending out inadvertently negative vibes.
The second thing, which is interesting, is that you don't really get to be a rock star anymore. That's not a thing. So you can be a rock star, up until senior eng, like yes, killing it. You're the go-to person everyone loves.
But when you become staff and tech lead, I find that I'm more about upleveling somebody else, about giving somebody else an opportunity, about how can I get this person to shine, how can I get the team to be better?
And I'm sacrificing all the flashy little features that I used to do. That goes to somebody else. They need that flashy work. We need to figure out how to get everybody else promoted and solid on the team. And so it's no longer about me doing things, it's about how I can help everyone do everything better.
Karen: Hey there. Hope you're enjoying the conversation with AJ so far. If you're a woman technologist ready to take control of your career, WEST can help. The West Career Accelerator is a six-month learning program that combines one-on-one mentorship and group-based career coaching to help women gain clarity, save time, and define success on their own terms. We're here to help you create a path towards the career you'll love. Check out how West can help you succeed at joinwest.org. Now back to our show.
I had a conversation with someone earlier today, and she had mentioned something she wished was talked more about was that it's perfectly fine to stay at a certain level if that's what makes you happy, because each of these roles have such a different roles and responsibilities tied to each, and that you don't have to keep going up the ladder. If you like a certain role, it's okay to stay there.
AJ: Yeah, that's perfectly true. You really don't. I would say try to get to senior so you get enough money and you're happy, but you can really coast at your level. It's really what makes you happiest. I don't think anyone should kind of suffer trying to go through hoops just to make it to the next level.
Karen: What interested you in becoming a tech lead?
AJ: It kind of happened to me. I found myself in a whole bunch of meetings with a whole bunch of backend people and people from different orgs, different teams, and you know how you introduce yourself, oh, I'm AJ, engineer on home feed, and everybody else is like, I'm Bob, Senior Tech lead on whatever.
And my manager noticed it too. He's like, I don't want you to just be engineer. How about we make you tech lead so it sounds official.
And it also was something that would be helpful in terms of navigating these conversations across the stack. Now that I'm tech lead, I kind of have this authority to tell someone on the signals team, Hey, I need you to make an update.
So yeah, it kind of fell on me. My manager presented the opportunity, and I was like, okay, let's try it, but if I hate it, I don't want to be stuck here. And he was like, sure.
And I made it clear to him that I'm not a manager, I'm not going to be doing those things, and he's really great. And he's like, no, I just want you to focus on the coding and making the team better, the technical aspects of things. So yeah, that's how I got here.
Karen: Okay. And then is there anything that we haven't discussed so far that you feel like is worth talking about?
AJ: I mean, there's probably plenty of things. I would say there is an aspect of diversity and intersectionality that is particularly challenging in tech, and it's something that you kind of got to get around and figure out, or you end up leaving, which I've seen both of those things happen.
But I think certain groups and certain marginalized groups have a whole different layer of challenges on top of just being an engineer in general and just trying to move up in general.
Most of the people that I know who've kind of ended up in this situation, you're just kind of not willing to continue that, but you have a choice. You either rage quit or you kind of try to make a change internally.
Karen: Yeah, that's such great advice. I think there are so many folks that end up staying in toxic environments way longer than they should, and they think they're trying to stick it out, but what they're really doing is causing it to be even harder for themselves to be able to stay in the industry if that's what they want.
And rage quitting is not a great option for that, because then the leaving gracefully part then goes out the door as well. [inaduble] rage quit. So yeah, absolutely. Let's see if there are other questions. As you were scaling in your career, what resources or learning opportunities were you able to utilize to help you grow from that apprentice level to junior as you're advancing?
AJ: There's plenty. So I got books on system design, pattern design, I don't know, Java, Kotlin.
Also, I kept my mentor from apprenticeship till now. I kept all of my mentors. And so you get to ask them questions, like where do you suggest I learn more about this? And using those people who are already in the habit of guiding me to guide me more externally, more just in the general field.
And then one of my mentors actually sat down with me for a few months and just went over the Princeton course where computer design, she graduated Princeton. She's a genius. And having her seriously walk me through what is code, what am I actually doing, how do I get around this?
And she introduced me to someone else. We did a few months of algorithm training and data structures, and just getting these extra help and having the books and reading them and just being excited, apply what you're learning to, so I would apply it to my Android code, how can I practice composable UI or something like that.
And then, yeah, there's Coursera courses, just reading up on things. Basically, anytime I feel inadequate or whenever I feel like I don't know enough or I wasn't understanding the meeting I was in, I just kind of look those things up and read into them and then incorporate it into my repertoire.
Karen: Love that. And I love that you were able to maintain your mentor relationship over the years as well. I feel like sometimes that's a really hard thing for folks. At some point, there's a drop off, and then you stop talking to that person, and then you feel like it's awkward to reach out because you haven't talked for so long. And I'm curious if you have any tips on how to maintain mentoring relationships.
AJ: I was really shameless and pushy. I had a really good mentor. He is a super smart guy, and I'm like, you're my guy. You're never going to get rid of me. That's not going to happen.
And I picked our platform lead for Android to be my mentor. I was like, Hey, I want you to talk to me about the things. That would be great. And it's just, she could have said no, and maybe I would've found someone else. But just being brave enough to tell people like, Hey, this is something that I need to be consistent for a long time.
And honestly, I think they enjoy talking to me, or at least I hope, right? They enjoy their half of that relationship as well. And we've kind of grown together.
But it's okay to kind of go, maybe you're doing weekly and then you go every other week or monthly, but just keep in touch. If it's been a long time, ping them. Hey, it's been a long time. Let's do a one-on-one.
I think people are more open than we tend to think they are, especially when it comes to helping someone else. I feel like most people do enjoy helping someone else get through whatever they're getting through.
Karen: Yeah, absolutely. Love it. And then last question is, what is a piece of advice you would tell your younger self?
AJ: That's a good question. I probably tell me to trust the process. I probably spent way too much time worried about getting fired or not being good enough or sounding dumb or just all of these ridiculous thoughts, when really the answer is trust the process.
If you're dumb now, you're not going to become a leader. You'll figure it out. If you know you're not good enough now, you're going to be good enough. Just continue, just move forward. And all of those things that I was worried about, just they melt away. They're non-issues at this point.
I would also tell my younger self to take care. Personal health, personal life, work-life balance is huge. No one's going to care if you work all night every night for five years versus being a normal person and going on vacation. The only thing that's going to happen is you're going to lose yourself. So definitely establish work-life balance and just keep that going.
Karen: Yeah. Well, thank you so much. This has been so much fun to chat with you and to learn a little bit about your journey at Pinterest and all of your wonderful takeaways on how to move from senior to staff and branding, and documentation and visibility. So thank you so much for that.
And that wraps up another great episode of Engineer Your Career, brought to you by WEST. Special thanks to our production team, Scott Williams and Alona Matokhina. If you have questions or nominations for future speakers, please email podcast@joinwest.org. Thanks for tuning in.
