//

“Grokking the Technical Interview”: Neha Srivastava, Senior Software Engineer at Attentive (Video + Transcript)

June 7, 2023
VIDEO

Neha Srivastava (Senior Software Engineer at Attentive) shares crucial insights on what hiring managers are really looking for in a technical interview. Gain valuable tips on how to handle difficult questions and scenarios, and take your interviewing skills to the next level and land your dream job in tech.


WATCH ON YOUTUBE

Like what you see here? Our mission-aligned Girl Geek X partners are hiring!

Sukrutha Bhadouria: Next session, we have Neha Srivastava here with us. Neha is a senior software engineer at Attentive. She’s an experienced engineer with over a decade of experience in various Fortune 500 companies. She is passionate about diversity and inclusion in the technology workforce outside of work. She also runs a decolonial feminist nonprofit called Shaktitva. Welcome, Neha.

Neha Srivastava: Thank you so much Sukrutha for this introduction and this opportunity. I’ll start sharing my screen a little bit and then we can get started. Hope everyone can see me. The topic of my conversation today is rocking the technical interview for women and minorities.

Neha Srivastava: The content of this presentation is likely relevant for anyone who’s looking to give a technical interview, but I will focus a little bit on special challenges and tips for women and minorities, mostly because unfortunately, the interview experience can vary dramatically in the industry if you’re a woman or a person of color.

Screenshot at .. AM

Neha Srivastava: I will share some of the tips that I’ve learned over the course of my decade-long career and hope that it helps. Okay, so in this presentation, we’ll go over each of the interview process rounds when you’re interviewing for a technical role, and we’ll go over those in detail. Please feel free to connect with me on LinkedIn. If you have thoughts, feedbacks, or questions about the presentation, I’d be happy to help.

Neha Srivastava: Alright, so the interview process. There are typically about six or seven stages in a technical interview, starting from the time the recruiter receives your resume to all the way to offer negotiations. In these upcoming slides, I’ll go over each of those rounds in detail.

Neha Srivastava: One thing to note here is that the interview process can vary quite a bit across companies. Some companies are looking to hire for a very specific role. Typically, this is common scenario in like early stage startups, or even up to different series. Whereas others may be trying to find a good engineer that meets the bar, and they’re confident to come up with a team fit later on. Now, depending on the either of the scenarios, the order and the nature of the interview may vary.

Neha Srivastava: Let’s get started. The first round is the resume selection. This is the first introduction you have to a certain company. Generally recruiters receive tens to thousands of applications to a specific role depending on the company size and market conditions, particularly these days. As you can imagine, the competition is much higher now, unless it’s a huge company, most of the resume selection will happen manually, which means this is your first impression on a company will be made through your resume.

Neha Srivastava: There are many great resume improvement guides out there, so I won’t go into too many details about that. The key point I want to make here is that your resume should be tight and focused – one that gives the reader a good overview of your experience in the US. Typically a one-pager resume is preferred, and I would recommend that the experience section should be thoughtfully crafted.

Neha Srivastava: What I mean by that is that it is entirely possible that you cannot fit all of your experience in this space you have in the resume, especially projects. If you worked in a company for say five years, you probably did so many projects not possible to write down all of that in here, so one has to be mindful of what to mention in the bullet points under each experience.

Neha Srivastava: My recommendation – pick your most impactful project. One where you did most of the work, or where you were in a central decision-making position, or anyone that you can discuss in depth and mention that project by name. If the project didn’t have a name or if it was a mouthful, make up a name. The rest of the experience can be through bullet points.

Neha Srivastava: For example, let’s say you worked at a company where you did several projects, but one project, the notification system, was if you were the tech lead for this, or you were the sole/primary developer on this, etc. Now you can phrase it this way. Point one, developed the notification system for this company, for this particular software. Point two, optimize software on-call processes, contributed to different projects throughout the company for various improvements. You can mention technologies and intersperse this with more details.

Neha Srivastava: Why am I suggesting that you give a name to at least one project or mention one project by name? It’ll give you excellent talking points for the next two or maybe more rounds if you get selected. Resume-crafting is a skill and you may have to go through several iterations to make it perfect. Use tools to get there, use AI tools like GPT or Bard to really fine tune the language.

Neha Srivastava: A few friends and I worked on a project called Resume Analyzer on the side and it’s available for you to use at resume.precruit.ai. This connects you to GPT behind the scenes, and it’ll give feedback on your resume, so you can upload a PDF and you can see how that resume fares. Please do give it a try. This is a work in progress and we’d appreciate any feedback you may have through our Discord community. If it’s a little bit clunky, please bear with us.

Neha Srivastava: Next is the recruiter round. If your resume had its intended impact and you got selected for interviewing, you may get an email for a recruiter to schedule the first round. This is called the recruiter screen sometimes. As the resume does not tell the whole story, the purpose of this round is for the recruiter to get to know you a little bit, get a sense of your communication skills, and also your experience. They want to get a better understanding of your competencies and your background. It is generally an ad hoc conversation with the recruiter, but if you’re actively interviewing, it’s likely you’ll be doing this many, many times.

Neha Srivastava: I would recommend preparing an introduction speech, one that describes your past work succinctly and puts them in broader picture. I would also suggest mentioning your career goals that you are looking achieve. It should not appear you’re reading from script. The speech can be in whatever format, such as bullet points or sticky notes, anything in talking to the recruiter. You may also want to briefly mention a project that you worked on, or the recruiter may specifically ask you about one in the conversation.

Neha Srivastava: Pick one from the ones that I mentioned in the resume that you have added a name for. Use one of the recent ones, preferably from your latest experience. Again, this is preferred but not necessary and talk about it in depth. The tool that I talked about, the Resume Analyzer, it also has a tab for introduction speech as well. Do check it out and let us know if it’s helpful.

Neha Srivastava: Last but not the least, you should make sure to discuss level and compensation expectations in with the recruiter in this round itself. This is very important. Some companies have a generic interview process where they’ll tell you that they’ll decide the level based on how the interview goes. That’s fine, but you should still mention what level and range of compensation you’re targeting so that everybody’s on the same page at the beginning itself.

Neha Srivastava: How do you come up with those target compensation and expectations? Do market research to understand what developers at your level are paid in the industry. This is not based on how much you’re currently making, but rather based on the role being offered. In some states, recruiters are prohibited from asking your current compensation. Use that, ask for an expected range if t’s not already in the job description without offering your current salary details. Be clear and nonchalant about it.

Neha Srivastava: Sometimes this is more common with women and and people of color, but sometimes people think that if they ask for less money, they’re more likely to move forward in the interview process.

Neha Srivastava: This is a misconception. It is important to understand that companies already have a set budget assigned for this role long before the job description is even posted on internet. In some states, New York, it has now become mandatory for companies to advertise salary range for a given job. If the job description did not mention any salary range, ask the recruiter straight up for it, then decide whether it meets your goals or not. If it’s a broad range and your expectations are within the range, then mention that with something like, my compensation expectations are in the range of X or Y, and if it’s on the high and it’s on the higher end of the range that you described in the job description, make things very, very clear right from the upfront. Hopefully that helps.

Neha Srivastava: If this works, you’ll be moving forward possibly to a hiring manager round. Now, this is where things get a little bit… the variations occur between companies and the formats they use. So in this round, in this situation, this will be your first technical interview. Every company schedules it differently, so this round may happen before, after, or same day as the technical screen. You will typically be speaking to an engineering manager or a team lead who’s likely gonna be your immediate manager upon hiring or someone of an <inaudible> level. I’ll asterisk this with the caveat that this is only in a scenario when they’re looking for to hire for a specific role. Generally, if companies are looking to fit you for a role at a later date, so this round may not happen at all, but just in case it does, and these some tips might be helpful.

Neha Srivastava: It’s important to understand what the goal here is for the hiring manager – to get a good understanding of you as a developer, your competencies, and your experience. It is similar to recruiter round in some ways, but in this round you would wanna be very, very technical. You want to talk a lot about technical details. I recommending picking a recent project as a tool to explain your experience. It can be the same project you used for the recruiter round, but you should be prepared to explain the vision, the business rationale of the project, the tech stack you used in this project, and the technologies you used. Give clear and concise descriptions about your role in the project.

Neha Srivastava: Be prepared to justify your technical decisions if asked about them. And if you were the decision maker specifically, the more senior you are, the more details you need to know and discuss. When you’re discussing the project, bake in the contributions and wins through specific phrases in this sentence. For example, you could say like, one option in this project was to use Cassandra for its database. Or you could say, since I was the tech lead of this project, I chose Cassandra for its database because it seemed like it was the most suitable option given the kind data we’re dealing with. Now, of course, you’ll explain the kind of data that you were dealing with, but this is an example. This way you draw a mental picture for the hiring manager about your level of involvement in the project.

Neha Srivastava: Mention wins and stats about the project in hard numbers. I would reiterate this. Women and people of color tend to skip talking about their wins, and they’ll sometimes unnecessarily generalize those wins. This is cultural, and we won’t go into the psychology why we do this, but don’t do that. Be clear about your wins, quote numbers and statistics and to quantify the impact of your project. You have to talk in hard numbers. Talk about the business impact of your project.

Neha Srivastava: Mention any accolades or awards or recognition that you may have received. Maybe you got mentioned at the engineering all-hands for this work, or maybe you got a chance to do demo the project and company all-hands. Don’t be shy about mentioning these things. It helps the hiring manager to know these things when they’re making a decision, because this helps them understand you better. Now, very often you may be asked about challenges that you faced in the project. For this, I recommend picking a challenge where you’re the hero of the story.

Neha Srivastava: They’ll ask about a technical challenge, but it’s possible to not have one. In fact, don’t be shy in mentioning that the project was well planned out and so there wasn’t much that you hadn’t anticipated and there wasn’t much drama around the release. That’s a good thing. In such a case, perhaps you can mention a procedural challenge – some challenge in the requirement-gathering phase where you may have done some research and presented options to stakeholders to clear a log jam, maybe about a certain requirement that wasn’t clear and was hampering the process or something like that.

Neha Srivastava: Most important thing in this round is to be open and honest. You’re building a rapport with somebody who may end up being your manager. Don’t make up things that didn’t happen, but talk freely about the things that did. This round will also help you build that initial image, which will help you in the career if you do get accepted and if you do end up working with them. All right.

Neha Srivastava: The next round is the tech screen. This is arguably the most anxiety-inducing round in the tech interview. For this reason, a lot of people fall into the endless cycle of spending anxious nights on code and waking up in the morning feeling even more unprepared than they were before. I recommend avoiding that.

Neha Srivastava: The prep for this round is important, but you have to prepare smartly. Remember, you’re not learning how to code during the prep. You already know how to code. You just need to brush up on the topics you haven’t touched in a while. Personally, I find the content of educator.io or algoexpert.io more useful in preparing for this round. Then raw lead code, battle of the nerves. Text screens are not a referendum on your abilities as an engineer, and it is key to maintain your morale throughout the process.

Neha Srivastava: This round is only for interviewers, so make sure that you can code. Now the other thing about this round is that you’re expected to talk about your thought process before you start coding. You would be expected to talk about the problem, ask clarifying questions, and come up with possible solutions for the problem. Then you can start coding any one of the solutions. You’re not expected to narrate your coding, but you’re expected to explain your approach and even discuss its pros and cons.

Neha Srivastava: Here’s the thing – expect to know about the time and space complexity of the solutions you design. If this process is generally difficult for you, mock interviews with friends or strangers can help. There is a site called pramp.com where you can go and get paired with a developer for free to practice your coding round. There are paid options for mock interviews as well, but I don’t recommend them as they’re very expensive. But if you feel like you need additional resources, that’s still an option.

Neha Srivastava: Now, you may or may not know the answer to the question that’s being presented, but that’s, that’s how it’s going to be in your day job as well. They’re not expecting to hire people with encyclopedic knowledge. Just show that you can work through a problem you’ve never seen before because that’s what they’ll expect an engineer on their team to do in their day jobs. You don’t have to ace it, you don’t have to design the best test solution there is.

Neha Srivastava: You just have to work with the interviewer to set the expectations of the problem. If it’s a hard problem and you didn’t get to a working solution, that’s fine. As long as you’re able to process the problem, come up with options, and you were able to show that you understand the concepts involved, it’s fine. Do not fret over knowledge of syntax or libraries. In fact, these days most interviewers are okay with it. If you asked to Google a particular syntax or library usage, but ask before doing that in the interview. Just do your best. You’ll be surprised at how good you are when you’re not nervous.

Neha Srivastava: Next is the system design round. Now it can be a part of the interview process as a tech screen or as part of the onsite or both. The more senior you are, the more important this round becomes, even more than the screen, arguably. The intent here is to understand your ability to architect technical solutions out of abstract or vaguely defined requirements.

Neha Srivastava: Part of the process is to ask the right questions, clarify requirements, and even make assumptions. It’s a very technical, communication-heavy round. You’re expected to use a whiteboard if it’s in person, or a whiteboarding tool like Miro to draw out your designs and organize your discussions. I would recommend familiarizing yourself with some of these tools if you don’t already know them for preparation, there’s some great material out there, use it. I personally like AlgoExpert for this prep because there are a lot of recorded videos that show you how to even approach the problem in this round.

Neha Srivastava: Once again, you’re expected to talk while you think. Explain your choice of technologies. Make quick back-of-the-envelope calculations to show that you can quantify problem. The more logical and nuanced your thought process, the better to show off your problem-solving abilities. Now, if you’re a senior engineer, it is likely that you already do this in your job, so it should not be a completely new process.

Neha Srivastava: However, the trick is to understand how to take a process that takes days or weeks in real life to something you do in an hour. Well, the answer is loads of assumptions. Assume, clarify, move on. If you’re someone who’s targeting a senior role but have not done this, prepare using study material and do mock interviews.

Neha Srivastava: Now, the onsite. If you clear the screens, you’re onto the big leagues. The onsite interview is one they’re likely invite you to spend about half a day in the office. It can be a virtual onsite for remote-first roles. It will likely consist of meet-and-greets, a couple of technical rounds, and manager rounds. Personally, the technical problems on the onsite may be of a higher difficulty level than the tech screens, and these rounds will tend to carry more weight in the hiring decision. I found that companies and teams perhaps more commonly in smaller companies, they tend to ask more realistic problems in these rounds. They’ll give you a representative challenge from their actual business use case. However, the intent of the onsite is to basically assess how you would fare as a teammate for most companies. While the technical screens were about your individual achievement and competencies, the onsite is more about understanding whether you’re a team player and a culture fit.

Neha Srivastava: One of the rounds can be include behavioral assessments even without explicitly saying so. For example, in a tech screen, in the earlier process, the interviewer will be focused on your technical solution. In this round, the technical onsite, this technical solution is definitely important. But so is your behavior as a potential teammate. They’re trying to get a glimpse of what it would be like to work with you in real life.

Neha Srivastava: The quality of your technical solution is important, but again, your behavior probably is more. They want to see if you can take feedback from interviewers and improve or build upon a solution that you’re proposing. They also wanna check for some red flags. Are you unnecessary defensive of your design or can you make mistakes? Can you admit to make that you made a mistake? And whether you can move on to improve the design. The ideal candidate here is confident, able to present and justify the technical choices, but also take feedback, change the design and improve on it.

Neha Srivastava: The next round is – this is very important and not a lot of people talk about it and it’s not very often discussed, but I did wanna discuss this. If you’re in the offer stage, congrats, but it’s not done. If you get an offer that meets your expectations and level, that’s great, but if you get a we like you, but then remember that there is more work to be done, you do not have to accept the offer as it comes, you can still negotiate.

Neha Srivastava: The best negotiation tactic there is to have options, so you can be prepared to walk away. Line up your interview so that you give a few onsites close to each other so that the offers come in around the same time. In the first call about the offer, listen carefully and take the time to think about it, and compare it to other offers that you may have.

Neha Srivastava: If you are being low-balled – if they come in with an offer which is below your expectation – stand your ground, tell them that you like the company, but you have competing offers and that makes your expectation that that meets your expectations. And so there, you’re likely not going to pick them unless they raise this offer. Once again, be prepared to walk away because you have options.

Neha Srivastava: Stand your ground. Low-balling on money and title unfortunately happens a lot to women. There’s a depressing statistic that 30% of the women above the age of 35 are still in junior positions compared to just 5% of men. Less than 50% of women in the range of 24 to 35 are senior developers as compared to 85% men. This is partly in because of the industry’s epidemic of low-balling women and minorities.

Neha Srivastava: Don’t accept the status quo. Push for the level you expect to be at. Make a stand for your career and be prepared to walk away. Now, a lot of people wonder that if they push too hard on the numbers, then it may or title, then it may ruin potential relationships with the team.

Neha Srivastava: Here’s the thing. Firstly, it’s quite likely that your teammates and even your manager have no idea of what compensation you’re being offered or about the negotiation, especially since IC and EM tracks deviate. In mid-level, it’s possible that as an IC you may end up getting paid more than your manager. Most likely HR does not disclose pay levels to managers.

Neha Srivastava: The possibility that your negotiations will impact your team rapport is low. However, let’s say the team does know, then you have to think that if it’s the kind of team that gets upset when you asked to be paid at market-rate, is the the kind of team that you wanna work with? This is a huge red flag. All in all, the mantra is stand your ground and be prepared to walk away.

Neha Srivastava: Lastly, here are some of the resources I mentioned throughout the presentation. I’ll share the slides on my LinkedIn, perhaps so you can have them or you can take notes now. The technical interview process is unfortunately extremely tiring, taxing, and painful for everyone, so the key is to manage your morale and confidence. Managing your morale throughout the journey is extremely important. Sometimes I literally leave notes for myself to remind me that I’m enough and to not get bogged down by the process. Do that if it helps you and thank you.

Sukrutha Bhadouria: Yeah, thank you Neha. Everyone should take a quick screenshot or just go to your LinkedIn. Really appreciate this talk and all the content you’ve shared with us. Thank you.

Like what you see here? Our mission-aligned Girl Geek X partners are hiring!

Share this