Sept. 27, 2021

Startups vs Big Tech Company as a Software Engineer (Interview Process and Career Growth)


I brought on the CEO of Formation (an ex-Facebook software engineer) who helps junior software engineers progress and prepare for mid to senior level interviews. She had a ton of expertise and experience to share with the industry. We talked about the different types of software engineering teams, at different sized companies, and how to prepare for them. If you find yourself nervous in interviews and don't really know what employers are looking for, this section of the podcast should be really insightful for you. She also shared what the progression to becoming a senior software engineer looks like at these different types of companies. We not only talk about how to prepare in the short-term, but also paths you can take for long-term career development as a software engineer. This podcast episode was packed with experience and advice. I hope this helps!

Host/Guest:
Don Hansen - https://www.linkedin.com/in/donthedeveloper
Sophie Novati - https://www.linkedin.com/in/sophienovati

---------------------------------------------------

🤝  Join our junior friendly developer community:
https://discord.gg/H69QqZ8MVJ

🔥  Want more personalized help from me? Here are the paid mentorship and review services I offer:
https://calendly.com/donthedeveloper

❤️  If you find my content helpful, please consider supporting me by becoming a channel member and get access to additional perks. Every little contribution helps and is actually used to pay my bills.
https://www.patreon.com/donthedeveloper

---------------------------------------------------

Disclosure: Some of the links below are affiliate links. This means that, at zero cost to you, I will earn an affiliate commission if you click through the link and finalize a purchase.

📚  Web development books and other products I recommend:
https://www.amazon.com/shop/donthedeveloper

Transcript
Don Hansen:

All right. Welcome back to another podcast episode where we help aspiring developers, good jobs, and junior developers grow with me today. I have Sophie from formation. We are going to be going over tons of tips, um, for technical interviews. Um, she, she has a lot of experience in this area and we're gonna be talking about. You know, things that she has seen that software engineers have done, uh, in the technical interviews, both good and bad. We're gonna dive into kind of just the landscape. I wanna also give people a feel for, you know, what it's like to, you know, become a software engineer, but also to progress as a software engineer, because sometimes you, you hear, you know, junior, mid, senior level, um, and you see different types of tech teams on. Across like different types of companies. And, um, I think Sophie has a lot of experience navigating this landscape and giving tips to everyone. So we're gonna dive into all of that. I think it's gonna be really helpful, but like usual, let's go ahead and jump right into our intros. Welcome Sophie. How you doing?

Sophie Novati:

Pretty good. Pretty good. How are you doing

Don Hansen:

today? I'm doing good. Today's a good day. So today is a good day. so I'm not gonna cheat. Uh, we were talking beforehand. Um, I'm not gonna cheat and just copy over your intro. If you wouldn't mind, would you go ahead and introduce yourself one more time? Yeah,

Sophie Novati:

of course. Yeah. So hi everyone on the show, um, name Sophie, um, I guess to take you. To kind of the beginning of my journey, I, um, graduated from Carnegie Mellon university, um, with a computer science degree, started my career at, uh, Facebook as a software engineer. I was there for a couple years before, um, going to next door. Um, and I was, I was at next door for four years. Um, and B both at Facebook and at next door, I. Interviewed count hundreds of software engineers. And I just kept seeing the same types of skill gaps between, you know, what my teams were looking for and, uh, our interviewees, um, the, the problem got so bad that I was actually like trying to, um, trying to mentor people as a way of bringing people into the company, um, which is kind of how. Got involved in this space in the beginning. So while I was at next door, about two years in, I started mentoring at a couple of different bootcamp programs, um, and a couple of interview prep programs. Um, and I was just finding that there were so many solutions really focusing on kind of that zero to one journey, like teaching people, the first basics of how to code, but was getting people nowhere near the engineering rigor that, you know, I felt I got in my. Schooling. Um, and also what, you know, the, my teams were looking for at, um, at nextdoor and at Facebook before that. Um, and so, yeah, I actually, uh, left, uh, nextdoor after two years of doing this mentorship work on the side to, um, run my own program, um, was called build school. And, um, what we were trying to. Uh, what I was trying to do there was really kind of instill the types of engineering skills that people needed to not just code, but build, um, uh, do engineering in, in, in real production environments. Um, so I did that for about two years. Um, and, uh, during those two years, Realized. Um, it's really obvious now that how systemic this problem is, and, you know, thinking about the number of engineering roles that we have yet to fill as an industry, um, I realized that we needed, um, a solution that, that scaled, um, and so about two years ago is when I, uh, founded formation. And, uh, you know, we're really focused on, um, bridging this specific gap in the market. So helping people who already know how to code, who are really motivated to kind of crack the, those top tier type of companies. Um, and we work with people, uh, with a focus with people coming from underrepresented non-traditional backgrounds and helping them accelerate their careers into some of the best companies in the world. So, yeah, that's that's me. Um, but ha happy to kind of answer any questions, uh, that you have about interviewing about becoming a more senior engineer. All of it.

Don Hansen:

I really appreciate that, Sophie. Yeah, I it's always, um, and I told you this before. It's always amazing hearing the stories before. You formed the company before you dedicate all of your time into it. And it sounds like you really wanted to solve this problem. It sounds like you volunteered a lot of your time to solve this problem. Um, so I mean, kudos to you. Um, I actually have heard good things about formation. I've heard that it has grown a little bit over the, the past year. Um, maybe I'm wrong, maybe I'm right, but I've heard good things and I. You know, I get a lot of, um, a lot of decent feedback from my community. And honestly, that's kind of why I wanna bring Y because people have, you know, seen you and your partner, um, interact and help people in a meaningful way. But you had mentioned that you interviewed hundreds of engineers. So what are some of. Let's I think I wanna dive right into this. What are some of the common things you see engineers, um, do in interviews that really hurts them in the technical interview? Let's dive into that

Sophie Novati:

first. Yeah, man. um, I could literally talk about this for hours and hours and hours and not repeat anything that I say I have so many, so much to say on this topic. We have 45 minutes. okay. Let me try to condense it down then. Um, but I think, yeah, I think the very first thing that people do wrong is they think that the technical interview is all about. And so the first thing that they do when they receive a question is dive straight into the code , um, which might seem like a like natural place to start. Um, but that's pretty much almost. To be honest, like it almost like an instant fail, because at that point you haven't really taken to the time to explore the problem and kind of discover the boundaries and constraints of the problem to take the time to weigh some of the different pros and cons of different, multiple different approaches to solving the problem. And you're just kind of. Starting to code right away without considering any of those things. Um, and you know, as an engineer, you're gonna spend very little time writing code . Um, most of the time you're gonna be spending is figuring out what code you want to write. um, and you know, I'm sure you can. Relate to this to some degree, but it's like at the end of the day, we don't have that many lines of code. It's like not limited by our typing speed. Right. It's really about, you know, how well we can define the, the problem, understand the problem that we're trying to solve and, you know, coming up. uh, with the best possible solution, um, that meets all of the constraints of the problem. So, um, yeah, I could, I could go on more about this, but essentially instead of starting to code, I would start by asking questions, walking through tons of examples. Um, getting, uh, trying to come up with even multiple different approaches, um, analyzing. Uh, both through both, you know, runtime analysis and space complexity analysis, but also like, you know, coding wise, like how, how much time and how, like how, how much complexity is warranted on this problem before doing anything related to, to coding? I would say that's probably like. The single, I don't know. I say this a lot. I always say this is the biggest mistake people make and it's like a bunch of different things, but I I'll pick that one for, for the day.

Don Hansen:

okay. That's a good one. Um, me personally, I am someone that I've has dove into the code right away, many, many, many times

Sophie Novati:

it's a natural reaction and I wouldn't fall cheaper it in any way. Yeah.

Don Hansen:

well, and I don't think it's helpful

Sophie Novati:

sometimes, you know, you just know what you're doing and it's okay,

Don Hansen:

too. that was not the case.

Sophie Novati:

gotta give you an out here.

Don Hansen:

that's okay. Um, my viewers make fun of me in many other ways. I I'm used to it, but, um, you know, I had to learn that I really did, and I, I feel like. not only because I, I kind of, um, I kind of was hinted towards the interviewer, potentially looking for a different solution. And I, what I could have done was just explored different ways to like, first of all, show that I understood the problem. It showed different ways that I could potentially solve it. Um, and I didn't really learn until my most recent software engineer interview to, um, I kind of, maybe you can say if this is good or bad, but I, I would just give multiple solutions and see which one the interviewer wanted me to tackle it with. Um, maybe there was like a certain complexity. There was an expectation rather than wasting both of our time. Um, I would, I usually would let them choose by giving them multiple options. Do you feel like that's a pretty good strategy?

Sophie Novati:

Yeah. Um, well, first of all, um, you, you know, an interview is a conversation , and it's, it's not just a one way conversation. So, you know, it's also a test of like collaboration right. Of how we solve this problem together. Um, another thing I guess I would say though, is that. I I often say in, in an interview setting, the interviewee is the engineer in the room, right? They're the ones tasked with solving the problem at hand. And, um, I, I often say that the interviewer's job really. Their, their role in this exchange is to present the prompt, be familiar with the problem and really just witness the engineer, do to do, to do the work. Um, and I, I kind of think that's kind of an empowering position to be in. um, I think that a lot of people in interviews, um, I have like a short video of this up too on LinkedIn somewhere. But, um, the, the quote that I have from this video is that, you know, uh, interviewees sometimes need too much permission to do anything in an interview. um, where it's like, Hey, do you want me to add another test case? Hey, do you want me to do this approach or that approach? And, you know, as an engineer, sometimes it's also about like, being able to make recommendations right. And to, to make decisions and suggestions and to, to move things forward. Um, so a lot of the times I think the best questions to ask as an engineer is questions around the constraints of the problem. Right? Cause that's not something that you can decide, right? Like, um, You know, if, if, um, if there is, um, the, the data is gonna come to you in a certain format, you can't decide it's gonna come in a different format. So questions on of that kind are always good. Um, but when it comes to implementation, um, I think, you know, it, I, it is a conversation with the interviewer, but you can also feel free to, to create, um, a suggest. Right as the engineer in the room. So like, you know, I think approach a, has this advantage and approach B has this one, um, you know, given that the, this, the data sample size is gonna be pretty small that we're working with. I think, you know, approach a will work fine for us, but what do you think? Right. Um, and then you can have a collaboration and back and forth. Um, but you'd also, don't have to, you know, let the interviewer like, make all the decisions for you.

Don Hansen:

yeah. I, I think that's really good advice. So, I guess I'm gonna use myself as an example, cause I've, I've done many bad interviews and I'm slowly, still getting better. So, but I, I think a lot of these problems people can relate to as well. Um, when you might even see this with like senior engineers, but when people are really nervous in the interview, How, how do they go about like on the spot overcoming that, is there a way that they can interact with the interviewer in a way that, um, might even just like signal to the interviewer? Like, I might know this problem, but I'm just really nervous. Like how, like, what is the next thing? When people start getting that mental block or getting really nervous, is it practice beforehand? Like tons of practice interviews? What's your advice with that?

Sophie Novati:

Yeah. So sorry. Can you hear my dog?

Don Hansen:

Yeah. It's

Sophie Novati:

okay. Can edit this out. Sorry.

Don Hansen:

Um, I told you I'm bad at editing, but I will try okay,

Sophie Novati:

well maybe this is just gonna have to stay in the video then. Um, yeah, so I actually really like this topic, um, of like, of getting nervous. So, first of all, uh, I don't know if it's really obvious, but I'm extremely, extremely nervous for this conversation really.

Don Hansen:

Right. You're

Sophie Novati:

doing so well so far. This is this, this is a conversation that it's like, you know, I'm supposed to be the expert on this thing and it's being recorded and it's gonna be somewhere on the internet and people can look at it forever. Um, you know, five or 10 years down the road when like I've developed like better opinions about things. People might still re reference back to this. This is a terribly nerve-wracking moment. Um, Maybe if it doesn't come across as I'm nervous then, um, I guess the, the conclusion to be drawn for me is that actually, you know, you're not usually coming across as nervous as you, you, you think internally, so, um, it's all, it's somewhat kind of in your head. Okay. So then the second point is, um, uh, for me, I'm like a very naturally nervous person. Like I like get nervous literally for like one on ones. Like, um, I'm like, am I gonna be able to give this person the right advice? Like, um, Literally I'm nervous for everything. Um, and one of the things that is helpful to me, and again, like, I, I don't think, I don't necessarily think this would be helpful to everyone, but for me, one of the things that I really, uh, encourage myself to do is actually to not. Try to overcome the nerves and not try to battle with that feeling. Um, because it creates this kind of like conflict in me where I'm nervous and then now I'm feeling bad about being nervous and then I'm trying to fight it. And that makes me a little anxious as well. and so instead, you know, I really just tried it. Like, of course I'm gonna be nervous. Right. That's, that's very, very normal. Um, and just kind of sitting and being comfortable with that. It's totally okay. And I think it's way more comfortable to just be like, okay, with, of course I'm gonna be nervous for this situation. No amount of practice is ever gonna make those nerves completely go away. Now that being said definitely practice. Um, like, um, I think. Definitely, you know, um, regardless of there's many, many different interview types, never be practicing for your interview during your real interviews, that will definitely help. Um, but when you kind of encounter those inevitable feelings of nerves during the interview, just be like, oh, There they are. Um, and, um, I don't know. I personally find it more helpful than trying to like squash those feelings cuz it's just counterproductive for

Don Hansen:

me. I think that's really good advice. Um, and I've definitely experienced that as well. The more I think about it, the worse it gets, that's just how anxiety works. Um, but yeah, I it's basically being comfortable being uncomfortable and that takes practice. Um, and that. Kind of training your mind and correcting it when you get in that like thought process. Um, okay. That's good advice. I think it's gonna be really helpful to a lot of people. So, you know, you. Seen tons of interviews. But when we were talking, you know, before this podcast you had mentioned, um, you had expanded kind of just what I thought of the differences between different types of tech teams and you know, what those interviews were like, but you, um, you made a comment about like even Fang, potentially being like kind of a, uh mid-level in terms of like the, uh, expertise. Of the engineering teams. And you had talked about, you know, this, this new idea, like, um, in certain startups you might have more expertise going to those startups versus the Fang company. So everyone sees Fang as this like top tier end all be all position that everyone aims for, but it doesn't, it doesn't feel like you see the industry like that. So can you expand on that a bit?

Sophie Novati:

Yeah. So, um, F companies are great companies. So like definitely don't get me wrong there. I guess one of the things that I've been kind of fighting as a notion it for is, um, is the idea of having. Intention behind a career, um, you know, like kind of making intentional career choices, essentially. Um, I think that, I think that a lot of people that I interact with, especially people who come from non-traditional backgrounds that maybe have less confidence in their technical abilities, really. Like when I talk to them about their career. You know, I hear so much of just, I need a job and, um, you know, and there's different levels of like that being true. Like there's definitely cases where it's like, okay, I gotta pay the bills and that's one thing. But, um, then I think there's like, you know, you're in a, you're in a stable job, um, and you're trying to get a little bit better and you clearly have like the space to make a choice here. Um, and there's kind of this, yeah, there's this. This kind of universal opinion, it seems that like Fang is like the best that you can possibly do. And I think that I just like to challenge that so that, you know, people can really find a company that's right for them. And it is not always a Fang company. And I actually think it is a Fang company sometimes. Um, and one of. What I mentioned to you about like the middle of the road thing is around the difficulty of the interview. Um, and I think one of the reasons that people have this obsession with Fang is because it is perceived to have the highest caliber of engineering like that you can, you can get, um, and also the highest paying, whatever it is. Um, but the, so, so. You know, with information, we actually like consider Fang to be kind of middle of the road in terms of pure difficulty of the interview process. Like I'm not saying anything about the engineering team. Um, and the reason is because Fang companies are big and that means their interview processes need to scale. Um, which means that it is very hard for them to, um, do the types of things that smaller teams can do. And so a few things is one it's much easier to prepare for because it's very, very standardized. Um, and two for the number of engineers that they need to hire. Um, they. Uh, they just can't get as specialized as like a, a, a smaller team. I, I always think that I think the strongest, strongest engineering teams are always actually at the small companies, uh, That were typically founded by engineers that are solving a problem. That is a difficult engineering problem. And before they've started scaling up their recruiting operations, um, those are like by far way, way harder to get into than like a fan level company. And so I guess I have a small pushback on like, if, if you believe that Fang is the best in the world, it's like, it's actually not the best in the world necessarily. Um, and so, you know, it's worth some thought to consider, like what would be good for you? Um, so yeah, I, I, I think there, that was pretty roundabout. I can go into more detail on, on any of this, but maybe I can, uh, I can. Respond to your next question.

Don Hansen:

sure. Yeah, that was really good. And, you know, it's, it was really interesting hearing that because you know, with a lot of people that I mentor, um, the, the reason why I brought this up is because a lot of people are like, Gotta do Fang. Like if I'm gonna become a software engineer, I wanna be the best, gotta do Fang. And so I hear this a lot and um, sometimes it's just a conversation of whether they're actually going to enjoy it, if it's the right moment for them at this time. But you know, what you did was because a lot of people will push startups and startup culture. Away and they think it's, we'll start. I'm just gonna join a startup because it's easy to get into. Then I'll get into a fan company in reality. Um, I've worked with really brilliant engineers, like way over my head, way over my head. And the teams were absolutely amazing and I've never worked at a fan company, but I have worked on code with software engineers that worked at fan companies and, you know, There, I, I can tell you for certain, just because you're in a startup does not mean you're this low skilled engineer. And what I think that does is it opens the door to like way more opportunities than some people thought there were, especially for a good fit. And we could dive into, you know, finding the right company in the right fit later. But it does, um, it opens that door because some people just push startups aside. They're not serious. That's kind of just like a stepping stone. Um, so that's a really interesting concept and I think I, I really do hope more people consider companies outside of F and, um, I'm actually excited. We'll do this probably at the end, but I do want to hear your opinions on like, how to find if it's the right fit for you. But you're right. I do have another question for you. So, um, I had also heard, uh, well, I hear this all the time, but everyone has opinions on, uh, because everyone's trying to set milestones for themselves growth as a software engineer. What does that look like? So everyone has opinions of what a junior developer looks like. What a mid-level developer looks like. what a senior level developer looks like. And so when I originally brought that up to you, you're like, wait, hold on a sec. What kind of company, what team are you talking about? And so I think, um, I actually want to hear your opinions because you had talked about. You having, um, knowledge about like what the trajectory often looks like from kind of a junior to senior level? What, um, how software engineers should progress. Um, can you go ahead and elaborate on kind of just the growth and trajectory of a software engineer?

Sophie Novati:

Yeah, for sure. Um, I would summarize the, all of the growth trajectory, um, if with one word it's impact, um, it's, it's on the scale of the impact that you have on your team, your company, and on the industry. Um, and that's actually roughly the order. Of the impact that you, you have as an engineer. So when you first start as a, as a new grad or entry level engineer, you're really working on things at a task level. And so, you know, you may not even know why, if you need to have this task complete , um, but you're simply told, you know, you need to add an API endpoint to enable. Someone to be able to add or remove like a bookmark or something like that. Um, and, um, yeah. So, um, and then as you kind of progress, um, you start working on kind of a feature level, right? So you're not just like getting scoped out tickets that are on your plate, but you're thinking about, you know, like, okay, so I'm working on the ability. Um, I'm working on adding bookmarks on, on mobile maybe. Right. Um, and you take that as like a desired end state and you break it down into the, the individual task that need to get complete, um, and may do it yourself and may work with more junior engineer to get that done. Um, As you progress past the feature level of, of work as an engineer is when I would say you're starting to kind of enter the area of what people typically call a senior engineer, um, which is when you start having kind of. Ownership over areas of the product. There has to exist some Sable chunk of code, for which if there's a problem at that, in that area of code, you are the defacto go-to person. It's like, oh, there's something wrong with bookmarks. You know, go to go to Don. He'll be able to help you out with that. And when you kind of get to that area and you are the primary maintainer of this area, right? Someone someone is sending a, um, is trying to make a change to the code of you. Like you're like defending your code. You're like this code is too bad. I'm not letting it through when you kind of have that level of ownership is when you're, um, I would say like the third level, um, and equivalent to maybe senior. So beyond that though, there's actually so much room for. Right. Um, I would say this is still to, to me early stages in your development, as an engineer, beyond that, you're starting to have, you know, impact outside of your immediate product area. And I would say that you're writing code or abstractions or frameworks that impact somewhere on the order of, let's say a hundred engineers in an organization. Um, and this is really like, obviously you have to be at a pretty big company to, to. Be writing code that impacts that many people, but like at a, at a large company scale at a Fang level scale, like you might be building like a small UI component framework that a hundred other engineers are now using to build features in their product. So that's kind of like progressing beyond that. Then beyond that, I would say you are building stuff that impacts the engineering engineering organization company wide, right? So you might be having impact on how code reviews are done at the company. Um, and I would say that you are, you are. The top, very few people in the company at a particular skill set. Right. And I think this is actually, I think, an a time when engineers also start to kind of specialize a little bit more. Right. So you might be the best person to debug or like work on like front end, like, um, performance optimization, right? You're one of the few people in the company who's the very best at that type of thing. Uh, yeah, so I think that's kind of the fifth level. And then beyond that, you are actually. Writing, you know, frameworks that is having an impact on like the industry, uh, uh, like as a whole, right? So you might be giving tech talks. Um, you might be like, you might be building, you know, the people who, who built react at, at Facebook, right. That's, that's something that has impacted the industry. Um, you might be, you know, uh, championing, um, hiring process changes, um, as an. Right. So, and, and trying to create industry wide change on, on hiring practices. Um, and yeah, beyond that, there's like different degrees of how much impact that you had on the industry. Um, and so I would say there's, there's still room be beyond that for more and more and more impact, but yeah, starting from like task level, like building an API all the way to like inventing react, there is like a lot of stages of growth as an engineer.

Don Hansen:

Yeah. I mean, that certainly opens my eyes and that's not talked about a lot maybe because, well, I've, you know, I've worked at three startups and this kind of conversation and even the resources I would seek out really didn't talk about this longer timeline and you know, I've always had, um, you, you really like broke down. Diving into specialization, then also expanding impact. I like your focus on impact, cuz eventually like your impact continues. To grow. Um, and when you mention the idea of, well, maybe you are creating a framework, like react that impacts all these other software engineers. And that's, I mean, that stuff like this kind of opens up doors and gets people to think about what they could be doing in 5, 10, 20 years. And you don't hear about a lot of this, so this is really cool to hear. So do you feel like the paths. Um, or the impact that you can have? Well, let's start with this. You had mentioned like at a startup, you know, once, you know, at a startups, maybe, maybe like a mid level or, um, at a mid level, a mid stage or late stage startup, you might get a hundred, 200, 300 employees or something like that, but where do do you feel like you can expand on your impact for software engineers? Um, what am I trying to say? I can't ask this. Do you feel like your, the amount of impact it stops scaling? If you continue just working at startups and you don't experience that growth?

Sophie Novati:

Um, yeah, so I think so my, my previous answer, I think was actually. it's like the perfect description. Oh my gosh. Being very, not humble here. Um, of, of a career directory at, um, a super large company, um, I would say like, um, at a Fang level company, this is like very textbook how people develop. Um, so I do think that the answers should be modified, um, for a, a startup. Now I think that. Uh, you know, we are a startup right now and we're, we're looking for, um, engineers of course. And, um, the types of skills that we like. We, we don't blanket, we're not blanket targeting all like FA level engineers. Like if, if a Fang level engineer came and apply, like they don't necessarily like, would be a good fit on our team because I think that the challenges are actually quite different. Um, so. Like, I think, um, at a startup, what you're doing a lot is you're making a lot of, um, uh, you're having more impact in terms of you, you can actually have a company wide impact earlier, right. Um, because, um, and when you're starting at a, at a, uh, at a startup, um, you can actually start. Um, progressing in your scale of responsibility at I think an accelerated pace because of that. Um, at, at nextdoor, for example, um, we weren't super large. Uh, it was there when we were 80 engineers and we were. Somewhere between 102 hundred when I, when I left. Um, and I got to do a lot of really cool things that I would not have gotten to do at Facebook. Well, like at least at the speed, um, one, like I set up the entire kind of code review process. wow. Um, yeah, I, I was very, very big into code review. I mean, code review is like how every engineer gets feedback and one of the most important elements of an engineer's growth. Uh, so that was something I was really passionate about two, I set up, um, this program called the engineering, the, the buddy program, which, um, I was very into, uh, at next door. We had a notoriously, terrible onboarding process where it took an engineer a week before their dev like environment even start, run and ran properly. wow. Um, it was really bad. Um, so anyway, we, I set, I set up, I ran this. Program where every new hire would get paired with a buddy that wasn't part of their reporting management chain that they worked with on their first week to get everything set up. And as another person that they can ask questions to. Um, again, continuing my theme of just like always being really interested in mentorship and helping people, um, grow, um, even within the company. Um, and these are both like kind of company wide impact things that in the buddy program is still like intact today, congrat um, it was one of the things I handed off, uh, to, to a person before I left. And I even, I met with this person for like, For, for like dinner and stuff, like for a year afterwards, just to like check in on the buddy program. And it was really cute because he actually, he left, uh, next door eventually. And before he left, he, um, he introduced me to the person that was taking over the buddy program from him. sorry, this is too much to tangent, but anyway, um, I got to do like, and there's like lots of examples of projects like this that I got to, that I got to do. And. Yeah, I think that's actually one of the huge advantages of being at a startup is like you would have to wait so long and progress so far before you're like empowered to make that kind of decision, um, at a larger company.

Don Hansen:

Well, again, congrats on the buddy system. I mean, it sounds like it's still used and, um, it's kind of funny that he handed it over to you once he was leaving.

Sophie Novati:

No, he, he introduced me to the next person that he handed it off to so that I still knew who was running the buddy program at next door. Did you

Don Hansen:

check in with that new.

Sophie Novati:

As well. Um, I actually have, I haven't since, since then, but okay.

Don Hansen:

So you finally, yeah. Okay. Um, it's it's, it's got its own wings now. good. it's grown up. Okay. Yeah. Um, that's, that's pretty cool. Um, I, I, I really like this focus on impact, you know, I think I'm kind of curious about your opinion before I jump into the next topic, but, um, What would you say? What would you say? A lot of engineering managers and maybe this is a generic question, but what would you say the engineering managers at startups are looking for in their interview process? Compared to much, much, much larger companies. Um, what, like maybe that's a generic question, but do you notice any very large differences and maybe even advice for each one?

Sophie Novati:

Yes, definitely. So I would say, um, I mean, there's never any blanket statements that can be applied to all companies at all, but I would say that by far I've noticed that like larger companies will test for. More computer science fundamentals and smaller companies will test more for practical skills. Um, there's a lot of good reason for this. Like at a smaller company, there's fewer resources for mentorship. Need the person to just start working and like delivering value more quickly, um, at a larger company it's like, fine. If you know, you're not doing anything until like six months in, like, it's fine if you ramp up for that long. Right. Um, so that's one difference. Another one is that at larger companies, the code base is usually so massive that you're not really using any external dependencies, like just like vanilla, like you've built so many levels of abstraction on top of what is out there in the world that you are learning the company's frameworks, not like something that's already readily available. So the company assumes they're gonna have to train you on all of these things. So the more important thing is that you just have the fundamentals and it doesn't really matter what skills. You kind of bring to the table, cuz you're gonna need to be trained up on it anyway. Um, versus a smaller company you're usually like just using vanilla, like just using vanilla react as is, you know, like you're using all of these different frameworks, um, and not making as many massive changes to them. Um, Yeah. So I guess I, I think that's like one of the, the biggest, um, differences in, in terms of how you prep for it too. Like I generally, um, uh, like recommend that people kind of choose a path between these two within their there's like lots of more like fine tuned things, but this is like a big major early fork in the road. It's like, if you wanna invest more in your fundamentals or you wanna invest more in like practical day to day skills.

Don Hansen:

Okay. that's. Um, I think that gives me a healthy perspective between the two. Um, so we, you know, we talked a little bit about it, but it feels like it's kind of your mission to prepare people, but also educate them. On the opportunities they exist. So they choose one that's right for them. And, you know, we had talked about different companies, different interview processes, different, um, kind of just different ways, career progressions at different types of companies. And. I think my question when I was starting off would be like, how do I find out what the right path is for me? How do I find out if I'm really going to, you know, cuz I'm gonna probably have to invest a lot of time. If I do want to get into, um, a much larger company, a fan company or, you know, the skills that I'm gonna be learning to prepare for the interview are gonna be different with the startup. How do I figure out which is the right path for me and how to choose the right company?

Sophie Novati:

Yeah. Um, I think that's the best question. Um, and I think a question that I, I wish more people would ask and answer for themselves. Um, yeah, actually kind of, um, also kind of going back to earlier when we were talking about like Fang versus not Fang, like I think one of the, one of the nice things. FA companies is that they're generally vetted. Right. So you're not gonna get anything too terrible. um, and versus you can definitely get some, some terrible situations with startups. Right. Um, uh, but so when you're, when you're going for a startup, there is more work that you need to invest to kind of vet the company. Right. And, and if you do that, then you can get to a situation that's actually much, much better than kind of a generic solution. That's not too bad. Right. Um, So, so yeah, I think, um, definitely no simple answer. And one of the things that I believe in very strongly, as well as, um, one of the things that we pay a lot of attention to at formation is, is answering this question. Well, it's very, very hard. Um, So, um, it is kind of like, what does success look like for each individual person at the end of this job, job hunt and it's um, yeah, again, just going back to, it's not it's by far not always thing. So I think that, um, there's like different questions that need answering at different points of the process. Um, so. To start at the beginning of the process or kind of the job hunting funnel. Um, there's a few like big questions that need to be answered to kind of start filling your funnel with like a list of potential companies. So I'll call this the top of funnel. Um, and so a few, few big questions is one is like the general role. And it's crazy to me that even this, some people have no like, no, like opinion on it's, like front end versus back end versus, uh, You know, like more uh DevOpsy um, and I guess there's full stack in there. There's lots of different, um, titles. I don't wanna get into all the details of all the difference between them here, but, um, that's like one thing. And by the way, I actually think it's somewhat okay to not have an opinion on this and just be kind of, um, and just be kind of, um, Open to different roles too. Sometimes I see people like forming opinions on this almost because they feel like they should. But when I poke around, I can tell they actually don't care. Um, but if you do care, I think it's important to kind of state that and make it very clear to yourself. So kind of picking the role that you want. Um, the next one is like definitely the size of the company. Um, you know, the, like between, let's say at least between three buckets of like big, medium, small. You can split that into more granularities if you want, like maybe massive and tiny. Um, but, um, I, I think that the differences in your day to day life are so drastic between these different, different options that I feel like it's beneficial to have. Even at least a light opinion on this. Um, the, the final one, which I think is actually the most under, like, I don't know, valued decision is like the industry. Um, and it's just so interesting to me because it's like, this is the problem you're gonna be spending like the next few years of your life on and going back to impact, right? Like your job as an engineer, like is, is not gonna be just delivering task. Like very quickly, you progress past that, right? And you are gonna be building things that impact people's lives. And, um, in order to do that, well, you, you will understand every nook and cranny of the industry that you choose. Like if you choose to get into FinTech industry, you're gonna get. Like, you're gonna be at a point where you should and at any good engineer should be able to talk, um, talk for hours on end on the details of how very specific trades work and, um, you know, if you're gonna get into like, Health tech in, uh, you're gonna go hours on like how the insurance industry works, right? Like, and if you cannot get that into that problem, you're, it's gonna be difficult for you to, to have that scale of impact. So, um, now I don't think that it's like I'm a little bit odd and that I have such a specific thing I wanna work on. And I don't think that that's necessary either. Like, I think, I think that, you know, You know, if I were to imagine a different career for myself, I could probably imagine a few areas that could put, could peak my interest. I'm like personally, super into productivity as an example. And so that's an area where I would be able to have a lot of impact cause I'm so interested in it. Right. So, okay. So the top of funnel, these are okay. Few of the areas and there might be some other ones, but now you, if you answer these questions and you're gonna have a huge funnel of companies that like could meet your criteria, um, and then you can kind of get into some of the more specifics. I won't go too much into detail about this, but. One is like digging into the caliber of the engineering team, especially if they're small, right? Like literally looking at the founding team, like, were they technical, um, looking at the LinkedIns of the other engineers on the team? Like what were their backgrounds prior to joining this company? Um, how much is technology the core of this company? Right? Like, like thinking of a retail company versus a company. I don't know a lot of the social media companies where it's like tech is the core of the company. Um, that makes a huge difference. Looking at, you know, the investors who, who, you know, their, uh, their track record and reputation, um, and, uh, even location preferences. This is becoming big in like the new remote world, right? Like if you're gonna only if you're gonna wanna be remote or if you wanna be specific cities or whatever, um, and. That's kind of like the middle where you start weeding companies out, and then there's kind of the end of the funnel. So ideally, you know, you're in a situation where you get to choose or you get to kind of later stages at multiple companies, and then you can consider things like who is your gonna be your direct manager, you know, who are gonna be the other engineers on your team? I think this is extremely undervalued as well. It's like the people that you're gonna be working with are gonna. So much impact on your day to day, like more than the tech stack, more than the problem, like your team, right? What's the code review culture. How are you gonna get feedback? Um, and of course, you know, your compensation, the diff the different amounts of upside that you're expecting from your equity package and all of that. Um, so yeah, kind of different stages of the funnel. Like there should be different questions that you're asking yourself.

Don Hansen:

Yeah. Wow. Um, I'm just, that was a long answer. that was a good answer. I'm just consolidating it.

Sophie Novati:

Thank you.

Don Hansen:

I, so. I like, I like your suggestion. Um, and I'm of course I do this with any, every interview I'm breaking my promise. We are over an hour. Uh, do you have about, okay. All right. Perfect. Um, so two things, um, if I can remember them, the first one you had mentioned this idea of. It's completely fine for you not to be opinionated, especially initially. Yeah. And being open to positions. And I really like that. The number of people that are trying to become full stack developers because they feel like. That's the best position to get. You're gonna be most marketable to which isn't necessarily true, but you know, that's a common misconception for people just trying to learn the full stack. It's not because they want to build an entire application and touch on all parts of the application. It's because they think it's gonna get them. A job. And so I like that you do kind of like dig in with people and figure out, do they really care? Like how opinion opinionated are they with this? So I really like that. But you also, honestly, you also focus on something. I made a huge mistake with when I was applying for developer positions, I looked at the stack, the stack is important and I wanted to get more comfortable with JavaScript. Um, I. really cared about the interaction with my hiring manager, which I think also think that was a really good step, but I also told myself, first of all, I didn't enjoy any of the products. I didn't care about the industries at all. And I thought that wouldn't be a big deal. And what that caused me to do is like when my hiring manager, like at a hiring manager that got fired, I had a engineer that I actually joined a company he left. And when those kind of things happen, I'm left with like managing, you know, part of a product I could care less about. And that actually has an impact. And that's probably, you know, when I look back on it, that's really why I kind. Switched positions as often as I did. Um, cause I did it once a year, uh, for three positions total. But you know, if you really don't love the product, um, if you don't at least enjoy solving the problem that your tech solution solves, um, people underestimate that. I mean, I really like that focus on the industry and I wish I would've heard that advice a long time ago. Yeah.

Sophie Novati:

Well, it's definitely not too late. it? Isn't so it sounds like, it seems like you're doing things that you're really passionate and like excited to, to work on now. So I think you figured that out on your own.

Don Hansen:

Yeah. Yeah. And eventually I did. Um, but. That might, um, cuz you know, some people, when I'm thinking about it, they, they shy away from their old industry because they're used to this position. That's not a software engineering position. They probably got into their industry because you know, like a health industry because you enjoyed helping people. And um, then you realize there's a lot of really, really. Basic tasks that you're doing every single day. And it's not like you thought it would be, and you're not really helping people in that industry. Like you thought you would. There's a lot of those stories. Mm-hmm and then, um, you know, especially for people becoming software engineers, maybe they do still love the industry. Maybe they just want to impact it in a different way. Um, so maybe this is also kind of, um, um, I guess, a message to like really consider if you could become a software engineer. In the industry that you're just trying to find a different position in. Um, so I sometimes I just think out loud, but I, I, I think that was really impactful and I think that's gonna be really valuable for people. So with all of that said, um, I wanna wrap this up because I, I really appreciate your time. There's a lot of good information. I'm probably gonna be thinking about it after the interview, but I have one final question for you. If you had one final piece of advice to give two developers in general could be vague, could be specific for one, just one. What would be the most important advice that you could give be?

Sophie Novati:

Um, this is gonna, this is gonna be kind of. almost repeated advice from this, this previous segment, but, um, but strive to love what you do. Um, and I say strive because, um, I think, I think that's like actually part of the journey is, um, you constantly have to be striving for it. Um, like you have to be, um, putting effort towards investing in the skills. And that are gonna be putting you in a position where you can be doing work that you love. Um, and I guess the slight twist on it for this segment is, um, is, is, you know, in order to love what you do. I think it's important to, um, I guess take care of yourself. Um, and, uh, this is, this is we didn't get to talk about this at all, uh, this segment, so I'm just tying it in somehow here, but, um, you know, I think that. Um, I see a lot of like frantic, desperate job seekers that are not taking care of themselves enough and feel that they need to be, um, putting themselves through an ordeal. Um, Th that is difficult and like uncomfortable for the sake of feeling like they're tr trying their best. Right. Um, and so, you know, I think that if you want to be the best, then, um, you have to realize that in order to do your best, you have to be in your best state. Um, which, you know, is the most generic advice I can give, but basically sleeping well, eating well and exercising. Um, that's um, . Yeah, that's the only way that I think you can set yourself up to, to do, be feeling the best and doing the best and then loving the work that you do. So, yeah, that'll be my

Don Hansen:

advice. I like that. That's really wholesome advice. That's good. Okay. That's it. So we're at the end of our episode, let's go ahead and do our outro. If people wanted to reach out to you or, um, you know, it sounds like what you're doing at formation is really impactful if they wanted to get more involved with that. Um, what could you share with us? . Sophie Novati: Yeah. Well, first of all, honestly, happy to take questions directly from anyone who thinks that I can be of help to them. Um, I think the best way to connect with me is probably on, on my LinkedIn, which is just my handle is just Nova. Um, my email is also just Sophie at, uh, formation.dev. Feel free to reach out to me there. Um, honestly, You heard my intro, but I genuinely got into this industry because this is where I see myself having my biggest lifelong impact. And it's all I wanna do. I've mentored at various many different programs and, um, And have, you know, spend a lot of time thinking about where the solutions aren't, aren't meeting the needs today. Um, and, um, for me, you know, there's this person that is really motivated to become a truly great software engineering who wants to work on some of the toughest and most interesting problems. And I feel that that person isn't being served by any of the solutions that I could find today. So. You know, if you're one of those people, I'd love to work with you at formation. Um, and you can obviously apply or also just reach out to me directly. Um, but even if not, um, this is honestly what I live and breathe every single day. And so, you know, anyone in your community, Dawn, um, if there's any way I can help, just, yeah. Feel free to shout out and let me know. I really appreciate that. And, um, do you remember when I asked you, um, are you doing this interview after. and you, you said no, I'm, I'm still working and I ask you what time you were working till what time was that?

Sophie Novati: so I said 11:

00 PM, but I really have to, uh, kind. uh, uh, explain that because, um, I'm extremely kind of, simultaneously against workaholic culture , which is like, kind of, um, this goes back to honestly what I just said, which is loving what you do. Um, like I do not condone working until those hours, if you are pushing yourself through it and you do not enjoy it. I genuinely like sometimes like people try to, you know, tell me, Hey, like stop working, you know? And I'm like, please, I really just want to, like, that's all I want to do. Um, and so that's the reason I work until those hours. But, um, But yeah, that's, uh, that's definitely my day to day schedule.

Don Hansen:

Yeah. So, yeah. And it, it wasn't meant to call you out for working too much, but I mean, like you said, it's something that you really care what you do. So you are willing to put those hours in. You found that not a lot of people find that in their lives. So, you know, it really does feel like you genuinely. Care about what you're doing. So I'm basically just saying you walk the walk, which is impressive. Um, but Sophie, I think this is gonna be really helpful. Um, stick around for a couple minutes, but thank you so much for coming on and doing this with us.

Sophie Novati:

Thank you so much for yeah. Having. We believe, see.