[00:00:05] SY: Welcome to the CodeNewbie Podcast where we talk to people on their coding journey in hopes of helping you on yours. I’m your host, Saron. And today, we’re talking about how being demoted could be the right career move with Kristina Lustig, Software Developer at Stack Overflow.
[00:00:20] KL: I would get so lost that I just wouldn’t code for like a week after that. I would get so discouraged and I just genuinely thought that it wasn’t for me and it was just destined to be a hobby.
[00:00:31] SY: Kristina talks about transitioning from being director of design to an associate software developer, the different factors that went into making that decision, and whether she would do her journey differently if she had the chance after this.
[00:00:56] SY: Thank you so much for being here.
[00:00:56] KL: Yeah, thanks for having me.
[00:00:58] SY: So you wrote a really great piece in 2021 titled, “I followed my dreams and got demoted to software developer.” Can you talk a bit about your career background and what led you to transitioning into a career as a developer?
[00:01:12] KL: I started off studying linguistics in undergrad, and after that worked in tech support for a little bit. Working in tech support, I discovered that UX is a passion of mine, largely because the place that I worked their UX is less something to be desired. And so I started a grad program at Carnegie Mellon in Human-Computer Interaction. And in the course of doing that grad program, I took just one programming class, a very introductory one, and liked it, but kind of filed it away, like, “This is fun, but I’m here to be a UX professional. So I’m going to do that instead.” So out of grad school, I worked at Facebook for a few years as a UX researcher. So that’s the direction that I went in from the HCI degree to UX research, which was really fun. And then I started at Stack Overflow actually also as a UX researcher. From there, I started managing the research and design team and eventually becoming the director of the research and design team. And I enjoyed that. I really liked and still like the people that I work with. But all the while I was coding as a hobby in the background and getting more and more into it and finding that I was not so much enjoying my time managing and definitely enjoying the little time that I had to code on the side. And after a long while, I finally admitted to myself that actually I think that software development is something that I might be good at and then I might really enjoy. So I went to my manager at the time and said to her that I needed to quit. I figured that I would need to leave to go do a bootcamp or just focus on studying for a while, build up a portfolio before I could actually get a job coding. And she said, “Well, why don’t you just do that here?” I didn’t think that was an option. And I realized how fortunate and lucky I am to have a manager in a work environment that was this supportive, but I decided to stay and spent a few months at Stack Overflow, working on projects that weren’t related to Stack Overflow at all, just to build up my knowledge in the areas that I was lacking and then transitioned over into working as a developer full-time.
[00:03:44] SY: So when your manager said, “Why don’t you just stay here to do that?” What exactly did that mean? Because when most people make the career switch, and to be fair, yours was maybe a little bit closer since you were already in tech and you’re kind of in that world. So it wasn’t like going from, I don’t know, like fine art to code, right? Like the leap wasn’t maybe quite as big. But still, it takes time. It usually takes months and a lot of tutorials and videos and you’re not really being productive during that time. So when your job says you can do that here, what did that actually look like?
[00:04:22] KL: Yeah. So I met up with my current manager, but at that point it was just one of my colleagues and talked to him quite frankly about the areas that my skills were lacking. He put together a program of study that we could use for me to brush up on the areas that I needed to build up. And the project that he put together was a Pokedex like for Pokemon. But I only worked on that for a few months. So I was not adding anything to Stack Overflow. They were basically paying me to learn and I did take a substantial pay cut to switch roles, which makes sense. Going from director to associate developer is a pretty big jump, but I just worked on that and then transitioned from working on that Pokedex app, which was using Flask, Python and transitioned over into .NET and C#. That’s what we use at Stack Overflow, which I had never used before. And once I completed another project in .NET, then I was ready to start contributing to the Stack Overflow code base.
[00:05:31] SY: Very interesting. So how long did that learning part take for you? How many months were you just focused on learning before you actually became proactive again?
[00:05:41] KL: I think it was about three months.
[00:05:43] SY: Oh, that’s not too bad.
[00:05:45] KL: Yeah. And I had already been doing a decent amount of coding. I think maybe in my blog post, I referred to it as a blob of knowledge, like not well formed or easily directed in a certain way, but a lot of it was there. I just needed to mold it into something more useful for its intended purpose.
[00:06:08] SY: Tell me about the end of the three months, because three months of learning how to code is I think pretty short. It’s really impressive. How did you feel at the end of the three months? Was the three months something that you had set as a goal? Was that what your manager had kind of allotted you? And by the time the end of the three months happened, did you feel ready? Did you feel confident? Were you nervous? How did it feel kind of getting into the end of that time?
[00:06:37] KL: Well, I definitely didn’t feel confident. I probably still don’t, which makes sense. I’ve not been doing it for that long, but it wasn’t really a three-month limit. It was, “Let’s lay out the things that I need to learn. Okay. It looks like those things will take a few months to learn.”
[00:06:53] SY: Okay. Got you.
[00:06:54] KL: So yeah, we got to the end of those projects and I guess I learned best by doing and I think I probably could have prepared to start working in our code base much longer, but I think it was useful to just kind of get in there and start working. And the people on my team were super supportive and helpful in giving me very thorough PR reviews, for example, teaching me things like conventions that I wouldn’t have known otherwise, like helping me avoid inefficiencies and poorly written code, basically kind of helping me to continue learning on the job.
[00:07:36] SY: And why do you think your manager, and I guess it’s not just your manager, because you’re working with someone else and you kind of had to have the company's support. What made them support you on this? What made them say, “Instead of quitting, learning, and then maybe coming back and applying, we’re going to give you the time and the space to learn, but we’re also going to trust that you can do it in a relatively timely fashion and you can just keep working here”? What do you think went into that decision?
[00:08:06] KL: I think that, first, I am a known quantity to them. Right? They know that I am good at the jobs that I have done. I know that I have people skills and other communication related skills that are super useful for anyone to have, but definitely a developer to have. And those are a lot harder, I think, to interview for perhaps. So I already had skills and I already fit into the workplace. I have existing relationships with all of my coworkers. I had already been at Stack Overflow for three and a half years at that point and I think they just didn’t want to lose me.
[00:08:49] SY: Well, that is awesome of you. Awesome of them for giving the opportunity and it’s awesome of you for being so great that you were awarded that opportunity. So kudos to both of you. Okay. Let’s take a little step back and I want to hear a little bit more about your relationship to coding kind of throughout your life. You mentioned that you were kind of exposed to it a little bit younger, a little bit before. Tell me about that relationship and what resonated with you about code.
[00:09:17] KL: I think that I didn’t actually code anything, write any code at all until my senior year of college when I took an intro to computer science class in Python, my second semester, senior year, and I really liked it and then realized that I was about to have a linguistics degree, which is not the best timing to realize that I really like something. But taking that class, I took it with a friend. She did not like it at all, and I absolutely loved it. I’ve always really liked puzzles, like logic puzzles, crosswords, things like that. And to me, coding felt like a real challenging puzzle, a series of really challenging puzzles.
[00:10:01] SY: Absolutely.
[00:10:01] KL: And that activates my brain in a way that pretty much nothing else does. I can focus really well on puzzles. I get really excited about them. Sometimes I will even forget to eat dinner and just sit there and work on them. And then I didn’t really do much coding for a while after that. And much later, I got back into it because of this game jam. You’re familiar with game jams. Yeah.
[00:10:30] SY: I think I’ve heard of it. Yeah. Tell us a little more about it.
[00:10:32] KL: There’s one particular game jam that I’ve participated in. It’s called Ludum Dare. I don’t know actually how to pronounce it, but it’s a weekend long game jam and lets you have 48 hours to make a game. You’re not allowed to start it before the beginning and you have to have it finished by the end. And that was the first time that I actually made anything of my own with code that I showed to someone else. And I think that experience really got me hooked. And after that, I spent a lot more time working on my own games, teaching myself things, trying to build stuff, doing coding puzzles, like Project Euler, Advent of Code, things like that. And I think I learned most of my coding from doing those things from games and from doing those coding challenges.
[00:11:24] SY: What made you go from UX to coding, given that coding is something that you kind of knew for maybe a little bit that you were interested in? What made you kind of stick with UX for as long as you did?
[00:11:38] KL: Yeah. That’s a really good question. I think that it comes down to confidence, honestly. I figured that the people that I knew who were developers had been doing it forever. They were all extremely smart. I felt like if I wanted to go into development, I would need to go back and get a computer science degree or do a really expensive bootcamp. And then even if I tried that, maybe I would find out that I wasn’t cut out for it because I just described my coding journey in a very rosy way. But there were plenty of times when, I don’t know, I was trying to set up something like Webpack or some kind of complicated thing that involves a lot of different dependencies and I would get so lost that I just wouldn’t code for like a week after that. I would get so discouraged and I just genuinely thought that it wasn’t for me and it was just destined to be a hobby.
[00:12:38] SY: What changed for you? What made you go from, “Oh, this is maybe just going to be a hobby too. I think I can actually do this”?
[00:12:44] KL: Yeah. So I can point to a specific point in time at a specific place. I was visiting the Stack Overflow New York office and chatting with a couple of friends who are developers. And I eventually just admitted to them that for a while, I’ve been thinking about wanting to be a developer. And both of them immediately said, “Oh yeah, I think you’d be good at that. I think your brain works in the right way for that.” They were super encouraging. And one of them said to me, and this is maybe not a very good way of encouraging me, but it is helpful, which is somewhere out there, there is a programmer who is worse at programming than I am and they are working as a programmer, which sounds bad because someone is the worst one.
[00:13:41] SY: I think that is brilliant.
[00:13:41] KL: It was so helpful because I’m like, “You’re totally right. There’s no way that I am the worst person in this.” And if I’m not the worst person at it, then like there’s a path forward for me.
[00:13:55] SY: I love that. That is amazing. Okay. So you had that conversation. You were inspired by the idea of not being the worst person. Tell me about the decision to go from, because it wasn’t just switching careers. And I think your story is really interesting because most people we talk to and most stories we read about it’s moving up, right? It’s going from a less paying position, a less technical position and kind of moving up into tech and having a big pay increase as a part of that, a big career jump as part of that. But you, you took a step back, right? You were director of design and you ended up at a junior position. Tell me about how you felt about that. How did it feel going from years of being a UX expert to kind of starting from the bottom?
[00:14:43] KL: Honestly, it was a really exciting feeling.
[00:14:46] SY: Really?
[00:14:47] KL: Yeah. Again, I really like all of my coworkers, we get along very well. I heard nothing but just overwhelming support from my colleagues switching roles. And it was excitement and also kind of a sense of, I guess, relief is the right word because I honestly just realized that managing other people wasn’t for me. And I found that job very stressful and not particularly fulfilling.
[00:15:15] SY: Got you.
[00:15:15] KL: So changing roles into something that was a lot less using air quotes here, like powerful, actually felt really good to me. I really liked being able to come into work, metaphorically speaking, because I work from home, but come into work and look at the tasks at hand and work hard at accomplishing those tasks. And I don’t know, there’s something posy about that kind of work that is very different from management.
[00:15:44] SY: So the idea of kind of going back to an individual contributor, an IC role, was very appealing to you?
[00:15:51] KL: Yes. Yes. For sure, which I think is pretty common amongst developers.
[00:15:55] SY: Very true. Very true. Yeah. Yeah. Were you worried, concerned about just having to make that climb again? I know a couple people actually who were engineering managers or were some type of manager in a technical role, decided it wasn’t for them and then made a lateral switch to an IC role, but they were, I believe, still getting paid about the same. It was the same kind of level, just not managing people. Right? But they weren’t starting their careers over. Right? They weren’t having to kind of move up the ladder again whereas you do. Did that part of it bother you? Did it scare you kind of being years behind where you were or were you fine with that?
[00:16:40] KL: Honestly, I was totally fine with that. I think I’ve never been motivated by a job title. I am motivated by finding things to do that I find super interesting and enjoyable, and whatever I need to do in order to do that, that’s what I’m going to do. I’m fortunate to live in a city where the cost of living is pretty low. So the pay cut that I took was substantial, but it wasn’t a deal breaker for me, and I absolutely love it. It was absolutely the right career decision for me.
[00:17:32] SY: Okay. So it sounds like you were very comfortable with the parts of this job that probably would have been uncomfortable for me. So kudos to you for being cool with the pay cut and kind of starting over and that not kind of detracting from the experience. But I’m wondering what your friends and family, if this is something that you talked to them about, what they thought about this idea? I know that, for me, whenever I tell my mom about a new job or a new gig or anything in my career, her first question is, “How much are they paying you?” Like, “Are they paying you good?” That’s like where her mind goes. And so I’m wondering, when you’re talking to people that care about you about this career change and about this demotion, did anyone else think it was an issue or were they supportive of what you're doing?
[00:18:23] KL: I think everyone was very supportive. My family is very, I guess, blue collar is the right word. I am the only person in my immediate family who has a fancy tech job. So they’re very much like, “Whatever you’re doing, you seem to be doing well. So keep doing it. Good job.” Just kind of blanket support.
[00:18:45] SY: Nice. Nice. Nice.
[00:18:47] KL: Yeah. Everyone was really supportive and especially the people who I’ve been talking to about feeling unsatisfied in my current career. They were all super supportive of my switching gears and pursuing something that they knew that I really enjoyed.
[00:19:02] SY: Okay. So it sounds like this was a pretty easy decision for you. Was there any hesitation on your end, any concern that you had before you decided to take that change in job title and focus on learning how to code?
[00:19:14] KL: My biggest concern was that I would fail. I was really worried that my job would take this big chance on me and effectively spend all this money on me to learn and then find out that actually I am incompetent. I started, like I switched right at the beginning of the pandemic, and very good timing, and was also worried that if we needed to lay someone off, like lay people off, then the most junior person on the team was going to be a very likely candidate. So I had a couple of worries. But ultimately, I mean, I was ready to quit. Right?
[00:19:56] SY: Right. That’s true. So that’s true.
[00:19:59] KL: I just have that in my head.
[00:20:01] SY: So you write in your piece about feeling discouraged and confused at times about just the amount of things that you could have learned and kind of needed to learn early on. Can you talk about that experience and how you’re able to take on the challenge or just the enormity of the stuff that you had to learn?
[00:20:20] KL: Yeah. For me, having the structure of working with my manager helped a lot. I had all this voracious interest in learning all of these different things, but it was kind of like, I don’t know, like a loose cannon or a car without a steering wheel. Like I’m going forward, but I don’t actually know where. I’m just trying. And so yeah, having the direction from my manager and the curriculum that he put together was invaluable. And then also just kind of like realizing that I didn’t have to know everything in order to contribute, that was really big, because I think I would get paralyzed by like, “Oh no, if I want to do this, then maybe I have to learn all about this algorithm, but then the Wikipedia page for this algorithm has all this notation that I don’t know. Okay. So I have to go learn all of this notation and I have to do this other thing.” And then before I knew it, I would be like, “How did I end up in this weird corner of the internet trying to do this other thing totally unrelated?”
[00:21:24] SY: Right. Yes. I completely understand. How long has it been actually since you switched over to coding full time?
[00:21:33] KL: I switched in April, 2020, I think. So it’s been about two years.
[00:21:39] SY: Almost two years. Okay. Great.
[00:21:40] KL: Yeah.
[00:21:40] SY: So what is learning like for you today? How much time do you spend leveling up or you’ve mostly focused on just kind of heads down doing the job that’s in front of you?
[00:21:52] KL: A lot of my learning is happening on the job. Every developer that I work with knows way more about coding than I do. That’s not my being modest. That’s just they all have a bunch of experience and I have less experience.
[00:22:08] SY: Right. Yeah.
[00:22:08] KL: I’m always looking to pair program or do synchronous code reviews with my colleagues so that I can learn about how they approach problems, which can inform how I approach problems. I also try to spend some time working on side projects. I still spend a lot of time making games. That’s my big coding passion. I started trying to learn Haskell, which is really fun and really hard. I think the best way for me to learn is by challenging myself to do things that I couldn’t do before. And so I’ve always struggled with like, I don’t know, watching videos or doing tutorials because I get really bored with them. I get fed up. I’m like, “Either this is going too slow, or I have no idea what they’re talking about.” So my approach has been, “Okay, I want to make this big game and I don’t know how to do it. So I’m just going to start trying.” And in the process, I learn a lot. So it’s definitely not regimented or directed kind of learning. As I mentioned before, that’s not my forte, but just kind of absorbing everything I possibly can as I’m going forward.
[00:23:20] SY: So now that you’ve been a full-time developer for a couple of years, how has the reality of the job matched up to your expectations? Is it everything that you thought it would be or parts of it different, maybe surprising?
[00:23:35] KL: So I kind of mentally and sometimes out loud, I guess now out loud, I refer to my job as like code plumbing or code archeology because the code base is pretty old. It’s like, I don’t know, almost 15 years old at this point and some parts of it are. So before I started developing at Stack Overflow, I had never needed to deal with someone else’s code, like ingesting and understanding huge swaths of code that may have been written many years ago in order to add in my own little contributions. So that was unexpected and very different. But I do really enjoy that as well, because it’s just another kind of puzzle. So it maybe is not exactly what I thought I might be doing, but I still really like it.
[00:24:33] SY: Yeah. Can you speak a little more to that? Especially as you’ve gone from associate software developer and now you’ve been promoted to software developer, what does that associate position look like? For people listening who are working towards that first job, that entry-level job, what was that experience like?
[00:24:54] KL: I think, for me, the most challenging part because I don’t have a formal CS background at all, there are frequently things in our code base that I look at and look at again and then look at again and then I’m just like, “I have no idea what I'm looking at.” So needing to translate that into something that I can understand and needing to expand my knowledge in order to understand the thing that I’m trying to do is definitely a big challenge. Also, writing production-ready code is another big challenge that is nothing that I had to worry about when I was just working on my own personal projects. Right?
[00:25:38] SY: Right. Right.
[00:25:38] KL: Like I have to think about things like performance and thinking about every possible little edge case, and I find that pretty challenging because there’s just always going to be something that I miss.
[00:25:53] SY: Yeah. Yeah. I get that. Coming up next, Kristina gives her biggest piece of advice to anyone thinking about taking the demotion to follow a career path as a developer after this.
[00:26:24] SY: Have you found that your experience, your background in design, in UX, has that helped at all in your coding journey? Has that played a role or is that just too different of a job to really bring into what you’re doing today?
[00:26:42] KL: I think it’s absolutely been helpful for many reasons. When I was first starting to code, my experience in UX helped me create games that were playable. And that looked nice because that was a thing that I’m familiar with. I was able to backdrop the skills that weren’t as built up with the skills that I already had. So just in terms of personal projects, having that experience helped a lot. From a work perspective, I also think it helps. Like if I’m working on the front end for something, then I’m a lot better at knowing if I need a designer to come look at something with me or knowing when something is slightly off or just being able to make design decisions on the fly and knowing that they’re going to be at least decent and also being able to have conversations with designers and UX folks in general more effectively because I know where they’re coming from because I’ve been there.
[00:27:45] SY: That’s a really good point. Yeah. You can appreciate their perspective and make some of those decisions. So knowing what you know now and kind of looking at your journey from taking that computer class you really loved in college to going into UX for a while, then switching to coding and kind of starting the process over again, if you could, would you do things differently?
[00:28:09] KL: I’m tempted to say that I would pursue software development earlier. But honestly, I think that going through this journey exactly as I did has given me a lot of interesting experience, has exposed me to a lot of things that I wouldn’t have been exposed to otherwise. I got to do a lot of travel as a researcher doing international research. There are things that I definitely wouldn’t want to trade just to start coding as a profession earlier.
[00:28:43] SY: What’s the biggest thing that you’ve learned from this whole experience of transitioning into this career, into your career?
[00:28:50] KL: The biggest thing that I’ve learned is that no one really knows what they’re doing. People are just making stuff up all the time. And even the most senior developers I work with get stumped all the time, and just knowing that I don’t have to have that absolute confidence is something that I’ve definitely learned to making this career switch and has definitely helped me as I go.
[00:29:19] SY: I think that was probably my favorite part of pair programming with the senior developer is when they got stuck. Oh, it made me so happy.
[00:29:27] KL: Yes.
[00:29:28] SY: It’s such a great… We always eventually figured it out, but that moment when they’re looking just as confused as I feel and they also have no idea what’s going on, it is extremely validating.
[00:29:38] KL: Yes. Oh my gosh.
[00:29:40] SY: It’s really nice.
[00:29:42] KL: The number of times I’ve asked a co-worker to get on a call with me, like, “I can’t figure this out. I cannot figure out why this isn’t working,” and I get on a call with them and they’re also like, “Huh!”
[00:29:53] SY: Yeah, yeah, yeah, the huh. What a glorious sound effect. It’s amazing. It’s amazing. Yes. I completely understand. So what would your biggest piece of advice be to anyone who’s considering taking a demotion starting over again to pursue a career in software development? Especially if they’re in a situation where their company isn’t going to pay for their learning and they maybe have to actually quit and kind of take that risk on their own, what advice do you have for people in that situation?
[00:30:26] KL: I would say that if you’re not happy with what you’re doing, then the sooner, the better for you to switch gears, because if you keep doing that same thing that you don’t like, not only will you be miserable, but you’ll be losing time that you could spend doing the thing that you do like.
[00:30:48] SY: Yeah.
[00:30:49] KL: It’s scary, like especially if you aren’t rich, it’s scary, which I definitely am not. I guess my thought was always like, “Worst-case scenario, I can go back and keep doing the kind of job that I was doing that I do have experience in that people have hired me for before.” If you’re in a place where you can afford to take that kind of risk, to me, it was definitely a no-brainer.
[00:31:23] SY: Now at the end of every episode, we ask our guests to fill in the blanks of some very important questions. Kristina, are you ready to fill in the blanks?
[00:31:31] KL: I am.
[00:31:32] SY: Number one, worst advice I’ve ever received is?
[00:31:35] KL: Probably to pick something and stick with it. If I had followed that advice, I would probably still be studying linguistics or be in academia somewhere instead of exploring the things that really interested me.
[00:31:54] SY: Number two, best advice I’ve ever received is?
[00:31:57] KL: The best advice I ever received was from my therapist in my early 20s was to quit being such a narcissist.
[00:32:08] SY: Oh my God!
[00:32:10] KL: Let me explain.
[00:32:10] SY: Are they allowed to say things like that?
[00:32:12] KL: We had a good relationship.
[00:32:14] SY: Okay.
[00:32:16] KL: But basically to stop thinking that everyone else is concerned with what I’m doing and is thinking about what I’m doing at all times. Maybe that’s just like the ego of you, but I was very concerned that everything that I was doing other people were judging me for. And after he said that, that really stuck with me. I still think about it all the time. Like, “Hey Kristina, no one is looking at how you’re dressed on the bus right now. Okay? So chill.”
[00:32:48] SY: I love that. That’s brilliant. Number three, my first coding project was about?
[00:32:54] KL: My first coding project that I finished was an interactive fiction game, the first game jam that I participated in, was called Watching. And it was about an evil being that speaks to you through your television.
[00:33:11] SY: Wow! Oh my goodness! That is intense.
[00:33:14] KL: Pretty weird. It had to be based on a theme. So the switch I did made it in a weekend.
[00:33:20] SY: Nice. Very cool. Number four, one thing I wish I knew when I first started to code is?
[00:33:26] KL: That I don’t have to know everything in order to make something cool.
[00:33:32] SY: How do you know when you’re ready to make something cool? At what point do you go, “This is where I’m going to stop and I’m going to just start building”?
[00:33:40] KL: You don’t know. At least, I don’t know. I just say I want to do this cool thing. Let me try it. And then if I can’t do it, then maybe I need to learn a bit more or maybe I just need to try a bit more, but there’s never, ever going to be a point at which you, I don’t know, shut your textbook and are like, “Okay, I am officially ready to do this school project.” That just doesn’t happen.
[00:34:02] SY: Right. Right.
[00:34:03] KL: Another thing that my therapist, that same therapist told me was that I will only have the confidence to do something once I have already done it, like after I’ve done it.
[00:34:12] SY: Oh, interesting. Oh, very interesting! Man, that’s a good therapist.
[00:34:18] KL: Seriously, the best therapist.
[00:34:20] SY: Great therapist. So many good nuggets. Well, thank you again so much, Kristina, for joining us.
[00:34:25] KL: Yeah. Thank you for having me. This was fun.
[00:34:34] This show is produced and mixed by Levi Sharpe. You can reach out to us on Twitter at CodeNewbies or send me an email, email@example.com. Join us for our weekly Twitter chats. We’ve got our Wednesday chats at 9 P.M. Eastern Time and our weekly coding check-in every Sunday at 2 P.M. Eastern Time. For more info on the podcast, check out www.codenewbie.org/podcast. Thanks for listening. See you next week.Copyright © Dev Community Inc.