- Listen on Apple Podcasts
- Listen on Google Podcasts
- Listen on Spotify
- Listen on Pocket Casts
- Listen on Castro
- Listen on Breaker
✍️ Want to support the podcast? Subscribe in your favourite podcast app and leave a leave a 5 star review here.
🎙 About the episode
Meet Ian Douglas 🇺🇸🇨🇦! Ian wrote his first line of professional code 24 years ago, in 1996. Since then, he's gone on to work at several notable companies like SendGrid and now Postman. Each time, he had to navigate the tech interview. It's not hard to imagine how Ian has a lot of real-world experience and wisdom to share! That was his motivation to write the The Tech Interview Guide (link in show notes). In this episode, Alex and Ian explore why technical interviews are fundamentally broken but how you can make the best of them anyway. Other topics include salary negotiation, loyalty to your employer, and Ian's recent LinkedIn #drama!
🔗 Connect with Ian
- Introduction (0:00)
- Removing the stigma from the interview process (01:39)
- Why technical interviews are kinda broken (3:16)
- What the heck does culture fit even mean? (08:57)
- How to answer “What is your biggest weakness?” in an interview (14:04)
- More on culture fit (16:08)
- The truth behind why companies hide salaries in job descriptions (18:52)
- Your previous salary has nothing to do with your new one (20:50)
- Ian’s experience interviewing at 27 companies (23:28)
- How to increase your callback % when applying to jobs, even if you don’t have much experience yet (27:39)
- Ian’s LinkedIn #drama (31:15)
- Rejection isn’t personal and you never know what’s happening internally (36:42)
- It all works out in the end (39:15)
- How to practice your interview skills in the real world (40:49)
- Get your foot in the door and the rest will follow (43:14)
- How much loyalty should you have to a company? (46:06)
- How Ian botched an interview at Twilio (46:29)
🧰 Resources mentioned
⭐️ Leave a Review
If you enjoy this episode please leave a 5 star review here and let us know who you want to see on the next podcast.
You can also Tweet Alex from Scrimba at @bookercodes and tell them what lessons you learned from the episode so they can thank you personally for tuning in 🙏
Ian Douglas (00:00): You know what, you're not in the job hunt alone.
Alex Booker (00:02): Hello, and welcome to the Scrimba Podcast. On this weekly show, I speak of successful devs about their advice on learning to code and getting your first junior dev job. I'm Alex and today, I'm joined by the experienced and wise Ian Douglas from Postman. As a new developer, you are sometimes looking for that one company to take a chance on you and give you your break. Once you're there and you become more experienced, more doors open every year. And by the time you have 25 years of experience like Ian, you find yourself in quite an advantageous position.
Alex Booker (00:39): I know this because in recent months, Ian applied to 27 companies, almost one company for every year of professional experience he has. He even had referrals to Peloton, Stripe, and Twitter, and while trying to find his next big opportunity, he wrote frequently and very publicly on LinkedIn about his experience for us to learn from. In the end, Ian had six offers, which I would be happy with, but doing the maths there, it means that 21 companies did not work out for one reason or another. Likewise, if Ian himself had six offers, he must have said no to five that he did not feel was a good fit.
Alex Booker (01:15): Although I'm referencing Ian's LinkedIn posts here, this conversation is a fascinating window into what the interview process looks like at all levels. Yes, you will learn from Ian's firsthand perspective having recently gone through the processes himself. But let it be known, Ian is a teacher as well and breaks this down in an actionable and inspiring way for all. Let's get into it.
Ian Douglas (01:39): There's so much stigma and often negative stigma about the interview process in the tech industry and how bad it is for lots of reasons. And we can do a whole episode on just what's wrong with the tech industry as far as interview practice. And typically what we see on social media sites like LinkedIn is either, hey, I got the job or, hey, I got rejected again. And it's like one or the other. And there are very few people that are just talking about like, hey, this is my journey. This is what I'm going through. This is what I've been through. This is what I've experienced all along the way.
Ian Douglas (02:11): Everything I post, I hope is finding its way to someone that can get a little bit of help, even if it's just a different kind of perspective. This was my journey. If that helps you, great. If it doesn't help you, that's fine too. Part of building up the whole techinterview.guide website was just to provide my perspectives of being in the industry for almost 26 years. Having been an engineering manager and doing lots of real interviews, couple of 1,000 mock interviews now, looking at somewhere between 12,000 and 15,000 resumes over my career and just offering my perspective on like, this is what I think the interview process could be, should be. This is likely what you're going to face.
Ian Douglas (02:49): And then having left my last role and being in the job hunt myself, gave a little bit of fresh perspective on what the interview process is like now versus what I've typically gone through in the past. As a senior dev, and in my case, a very senior dev, having a lot of experience definitely helps when you're going through the interview process. Finding that first job in tech is always the hardest. Convincing somebody that you really can do the job is really the hardest part of interviewing.
Ian Douglas (03:16): Once you have some professional experience, it's much easier to go through the interview process and convince somebody that you can do the job, because they can see from your resume or from your CV that you've got the experience. So you've got professional level experience. Until you get that, though, there's a much deeper lack of trust in the skill that you claim to have. Our industry is also one of the few where we have to demonstrate a lot of our ability to do the job in order to get the job.
Ian Douglas (03:42): One thing that I share a lot on my livestream and my podcast is you never hear of a doctor or like a surgeon going to a hospital to get a job and they say, well, go operate on that patient and if they live, you get the job. But that's what it feels like for software developers in our industry is like, okay, we want you to write some software to prove that you can do the job so that you can go write more software. But the software that we write in the interviews is so disconnected from what we do day to day.
Alex Booker (04:09): I personally love and I wouldn't have the career idea, if not for the fact that I had an opportunity to demonstrate my potential through a technical interview. Are you just advocating that the interview better reflects the job, or do you think the sort of technical interviews are not a good idea in principle?
Ian Douglas (04:23): I think because of how our industry is structured, we don't really have the idea of licensing similar to like a medical license or like a journeyman sort of licensing that you would see with more practical hands-on skills, like plumbing and carpentry. In our industry it's like, I've learned software development. Well, what kind of software development? Are you embedded systems? Are you operating systems? Are you web applications? Are you backend? Are you front end? There's so many different things when you say you're a software developer and that's part of why our interview process needs you to demonstrate what skill you actually have. And I think that that's a necessary part of our interview practice.
Ian Douglas (04:58): It's more that the interview process needs to be more in line with what we're doing day to day than just here's a LeetCode challenge or a Codewars, HackerRank kind of funny little, like go sort this array and okay, well, now you get the job, but your job isn't doing anything with sorting arrays. And some of the interviews that I did on this recent job hunt, it was exactly that. Like you walk in and they're like, here's a LeetCode challenge. I'm like, ah, all right. I'll struggle my way through it too. I mean, as a senior dev I hate LeetCode problems.
Ian Douglas (05:28): If it's in line with what your company does, then I get it. But I had a couple of experiences with some companies where they're like, hey, you're going to come in as a backend developer, you're going to be consuming an API. You're going to be building an API. Go consume some data, manipulate it, and then present that to our front end. And that was exactly their interview process as well. It's like, hey, I want you to write some Python code that goes and grabs this data, manipulate it, calculate some statistics, and then output it in a format that our front end could consume. I'm like, that's brilliant. This is why I'm here to interview at your company. Like, this is exactly what I do well. As a senior dev, I got almost goosebumps. This is exactly what the interview should be.
Ian Douglas (06:04): As a senior dev, I was able to say, okay, well, in a production environment, I would be considering air handling and exception handling, blah, blah, blah. But for the sake of the time in the interview, this is how I'm going to structure it. And the person's like, okay, that's great. They just wanted to hear that as a senior dev, I'm willing to do that kind of stuff in production, but it was exactly what the day job was going to be.
Ian Douglas (06:23): I read something just this morning that was talking about interview process. And one of the biggest things to understand is that most interviewers don't get training. And that in this person's words, "Interviews are spaghetti." It's this jumbled mess that nobody really knows what's going on. And so the interviewer ends up giving an interview similar to how they've been interviewed in the past, which is a LeetCode problem, or asked some sort of trivia about a programming language or something. It's not indicative of what you're going to be doing on the job. So, why do the interview that way?
Alex Booker (06:52): If you're an accountant looking for a job, for example, do you think the interview process is very different? Because your certification, it proves so many things about what you bring to the table, like that you've passed the assessment and that you had the discipline to pursue and complete it and do what was necessary. Whereas with coding, because there are so many different types of coding jobs and so many paths to get there, it's not unreasonable to assume that many companies miss out on awesome candidates because their interview processes are biased or confusing or not indicative of the job. Yeah. So my question simply is, if you think this is a problem quite unique to software.
Ian Douglas (07:25): I think if you go to an accountant interview, you already know what kind of accounting you're going to be doing based on the job description, are you doing a particular kind of business accounting? Are you doing tax accounting? Are you doing financial audits? There are very specific sort of branches of accounting as well. And if you are a certified accountant and you specialize in a particular area, then those are the jobs that you're going to gravitate towards. And it can be a lot the same in software.
Ian Douglas (07:50): If you study at Scrimba, for example, and you learn particular backend or front end kinds of application development, then you're going to gravitate towards those jobs where you can highlight your value to the company. And that's really what the interview's about. What is it about your background, what is it about your skillset that's going to make that company better, that's going to make that team better? That's really what you need to project and portray in any kind of interview inside or outside of tech. The interview process is them assessing your level of skill. Do you have the skill that they're looking for? Are you going to fit in on their team? And then you just providing value to them? That's really what they're trying to assess.
Alex Booker (08:26): You definitely need to demonstrate that you bring value to the company, but then you also went on to say, and I agree with this as well, that it is somewhat about proving your fit. At the end of the day, this is a team with which you will work most days of your life going forward, right? Like nine to five, five days a week. Ideally you will gel and substitute each other's weaknesses in the way that the team can be really efficient. I have to be honest, these things are very subjective, aren't they? There's really no way you can prepare for that. Well, tell me if I'm wrong, maybe soft skills come into this parts of it.
Ian Douglas (08:57): I think that the collaborative nature of working on a team and being part of a team is as important as the actual hard skill of, can you do a particular kind of coding or particular style of development? But it really does come down to the teamwork. You're going to be part of a team. How do you work on a team? As we say in America, do you play well with others? Can you get along? That's often why, as part of the interview process, yes, you'll typically meet with a recruiter and then a hiring manager, but then you're going to be interviewed by people on the team and part of their assessment isn't just, can this person code? They're also assessing, do I want to work with this person? Whether you're in a physical office and you're literally working side by side or virtually and remotely, like if I need to contact Alex, am I going to enjoy calling Alex on Zoom or whatever platform on Slack and having a conversation, or does this person drive me bonkers? That's all playing into their evaluation of you as a person.
Ian Douglas (09:55): So yeah, there is a notion of putting your best foot forward. And in that sense, it is a little bit like dating, I guess, where you want to show only the good things and not any of the bad qualities. But that also sets up a bit of false pretense of what are you really getting into if you get that job, because the company is trying to project their best image, you're trying to project your best image. And I think that sometimes within an interview, it's important to also see some of the qualities that also show that you're not perfect.
Ian Douglas (10:25): I've seen some technical challenges that have on purpose, some sort of tricky scenario, just to see what's going to happen if you can't solve this? How do you react to criticism? How are you going to react to feedback of like, oh, could you make that code a little bit better? Or, how could you make this faster or, oh, that code works in this scenario, but here's a new data set that you hadn't seen. What are you going to do now that it breaks? And just to kind of also get a sense of how are you going to debug? How are you going to handle things under even more pressure when you're already nervous?
Ian Douglas (10:58): But they're really trying to assess like, do I want to work with this person? Is this person capable of the technical skill, but then also, as you called it, the soft skill? Whether we call them hard skills and soft skills, I mean, at the end of the day, they're all the skills that you need to be a developer. And I think that what we call hard skill are sometimes more easily trained than the soft skill. One of the goals that I had at a previous job was let's focus on the person, let's focus on is there something about our interview process where we can make it more about the collaboration and the communication and the problem solving and how they fit in on the team and less about can they write really amazing, optimal code because we can teach to them that. It's a lot harder to teach somebody to work well on a team.
Ian Douglas (11:42): That was a goal that I had at a previous job. And then I left that job and I got a developer relations role at Postman, where again, we want to make sure we're working well on a team. We can always train you on the skill gap. And again, I think that that's an important change that we could also make to the interview process as well is make the interview more about what we call the soft skills, because the hard skills we can train. Especially for entry level developers, there's so much that you don't know. There are so many languages and frameworks and libraries and ways of doing things. And there's more than one way to do a thing. We can teach you that.
Ian Douglas (12:16): And I think companies need to have that mindset of all of those technical skills can be trained. Let's just focus on the person. Are they going to fit in on the team and are they going to be teachable and trainable? Can they demonstrate the ability to learn as part of the interview process? And if so, let's hire them, let's train them. Let's mold them into what we want them to be as an engineer on our team. And then we'll invest in them. We'll train them, we'll teach them what they need to know. I think that that would drastically change so much about our tech industry if companies could just shift that thinking a little bit.
Alex Booker (12:47): Coming up on the Scrimba Podcast, how Ian thinks about salaries as a hiring manager.
Ian Douglas (12:53): My responsibility to the business is to pay you as little as possible.
Alex Booker (12:57): If you are enjoying this episode of the Scrimba Podcast, please do us at Scrimba a favor and share it with your friends on social media, like on Twitter, for example, or in your community. Really, word of mouth is the single best way to support a podcast that you like. So thank you in advance. Next week, I'm talking with Jefferson Tang, a doctor, you heard me, a doctor who turned into a developer with Scrimba.
Jefferson Tang (13:21): I did the whole medical school for seven years and I worked as doctor for three years. And the given in my mind happened during COVID. I started spending a lot of time by myself and having time to think about things. And along the way I made some friends who were working tech the whole time. I never really understood what they were talking about, but I just enjoyed hanging out with them. And I guess one of the things that prompted me to switch to coding was I realized that somehow I'd always naturally gravitate towards hanging out with them sometimes a lot more so than people in my own field.
Alex Booker (13:51): That is next week on the Scrimba Podcast. So make sure you subscribe as not to miss it. Back to the interview with Ian.
Alex Booker (14:01): Companies will eventually ask you a question, what is your biggest weakness? Although I heard recently that a better way to phrase that would be to ask like, how can we support you? Like, what's one thing you need support with? Because that self-awareness could actually be an amazing trait.
Ian Douglas (14:14): Yeah. And it's important that you do have self-awareness on what you're good at and what you're not good at. That's my job as the interviewer to figure out what you know, and what you don't know. And as you mentioned earlier, figuring out whether the skills that you have fill a gap on the team well enough that we can hire you. And if you don't have certain skills, are those skills things that we can train?
Alex Booker (14:35): Because you can teach someone Python. You can't teach them a new personality.
Ian Douglas (14:39): Having been an engineering manager, I can tell you it's very difficult to adjust someone's personality. You can try as a manager to encourage them to change. It's up to them to want to change. If they don't want to change, or if they don't change in the way that the team needs them to be and whatever that could be about their personality, then as a manager, we have to make a hard decision to say, you're not fitting in on the team. Yes, you might be extremely clever. You might have a lot of domain knowledge, but if no one on the team wants to work with you, then we're not going to have you on the team.
Ian Douglas (15:09): I've interviewed people where they were clearly the smartest person in the room. And everyone at the company agreed that this person was very brilliant. They answered every question. They did every challenge we gave them. And when we got together to debrief, because we had several teams interview the person, we did this circular debrief, where we kind of went around the table and said, okay, is this person smart? Are they capable? Could we high hire them? Everybody said, yes. And then we went back around the table, said, who wants them on their team? Not a single person raised their hand.
Ian Douglas (15:36): And so we went back around the table going, why not? Like, why don't you want this person on the team? And we started adjusting the questions that we would ask at the debrief around the idea of who would be excited to hire this person? Who would be disappointed if we did not hire this person? Because that also brought out a lot of characteristics of the team, but also about the candidate themselves. And the main thing that we got about this one particular candidate is like, yeah, they're smart, but they knew they were smart and they were arrogant about it. And nobody wanted that on their smaller individual team within all of engineering. So we didn't make an offer.
Ian Douglas (16:08): So having the smarts, having the brilliance isn't enough. You have to be that culture fit. There's a story that I've told on my live stream a number of times about how I interviewed at Yahoo and the recruiter didn't tell me who the team was. And so I'm going through all the technical challenges and I did well on all the technical side. And then they started asking me about American football statistics, like who won the last Super Bowl. Who's your favorite quarterback? I don't know football. I'm originally from Canada and Canada's primary sport's going to be hockey. And I didn't study football stats on my trip to the interview. I was studying design patterns and PHP language at the time.
Ian Douglas (16:48): They're like, who got the last Heisman Trophy? I'm like, I don't even know what a Heisman Trophy is. And they're like, well, you know that you're interviewing with a fantasy football team at Yahoo, right? And I'm like, no, nobody told me that. Or I would've studied football stats instead of programming on the way to the interview. And so they didn't hire me, again, because I wasn't a good culture fit. I had all the technical skills, but I wasn't a good culture fit.
Alex Booker (17:09): Let me challenge you a little bit. If you were to sort of cram a bunch of knowledge about American football, but clearly you're not naturally interested in it, would you just be kind of like doing yourself a disservice if you ended up being successful?
Ian Douglas (17:22): Exactly. If I had known that that was the team and I studied football stats in order to get the job, I wouldn't have been bringing that passion to the job every day. That's also something that the company is really hoping for. They hope that you're super passionate about what it is you're going to be doing. Not just, okay, I'm going to show up, I'm going to write some code. I'm going to get a paycheck. For some, that is their motivation. Like, they're in tech because of the paychecks. And that's okay too. But I think if the passion is about the company and about the product, it makes a huge difference.
Ian Douglas (17:50): Getting this job at Postman, where I work right now, it was a no-brainer, as we call it. I saw the job post and I couldn't not apply for this job. I'm like, developer relations for Postman, are you kidding? I taught at a software school in the Denver area for almost four years. And part of what I taught was API design using the Postman tool. And so part of my interview process was actually submitting a video of me teaching API design, using their tool. And it didn't take very many interviews for them to make an offer saying, do you want to come join the team and teach other people about Postman? I'm like, yes, yes, I do.
Ian Douglas (18:25): It was like the perfect sort of union of what I wanted to be doing in a role with a product and a company that I've deeply appreciated. Bringing that passion every day, absolutely changes your perspective on doing the job every day, because it's something you really believe in as opposed to like, yeah, I really believe in that paycheck in the bank. Because you can go get a paycheck from anywhere, but if you're going to bring your passionate interest to the job, it makes a huge, huge difference.
Alex Booker (18:52): I often think that compensation is like a hygienic factor. You need to be paid enough that you feel valued and you need to be paid enough that you can sustain a lifestyle that allows you to show up to work, feeling fresh. And that might mean enough money to pursue your hobbies or to support your family or whatever. I'm just wondering, do you have some impression as to why companies sometimes obscure their salary offer on job ads?
Ian Douglas (19:15): I think some companies understand that geography makes a big difference for where you're located and the cost of living for where you live. When the COVID-19 pandemic first hit, we saw a lot of employees across many tech companies start to relocate out of very expensive areas to places that were less expensive. And there was a lot of news about their companies and a lot of the companies that made the news were the big FAANG companies and how they wanted to adjust the salaries of the people that were relocating in saying, okay, well, if you don't want to live in San Francisco anymore, you want to go live in some state elsewhere in the United States, where it's way less expensive, then we're going to adjust your salary accordingly. Part of why we're paying you this ridiculous salary is because it costs an enormous amount of money to live in certain parts of California.
Ian Douglas (20:01): I think part of why companies were hiding the salary range in their job ads was because they wanted to adjust it based on where you live. And so as part of the interview process, they'd say like, hey, where are you located? Oh, you're in that area. Meanwhile, they're looking up statistics on, okay, well, the average salary in that particular state is this amount of money. Some companies though are better about, hey, we don't care where you work. You're this valuable to the company at this level. So if you come in at an L5, you're going to make this much money. If you come in at a senior or intermediate kind of level, this is the pay band that we're going to offer.
Ian Douglas (20:35): My argument is you should be paid the same, no matter where you're located. Same thing with it doesn't matter about your gender or your skin tone, or what's in your DNA or your blood. Like just, I don't care who you are. If you can do the job, you should get the job and be paid the same amount of money.
Alex Booker (20:50): Or how much you were paid previously.
Ian Douglas (20:52): Yeah. That has no bearing at all. In some states in America, it's actually illegal for them now to ask for your salary history. They're not allowed to ask, how much did you make at your previous job?
Alex Booker (21:01): Like if you worked a retail job before, for example, and then you put your everything into learning to code, you build a whole new skillset and a whole new industry. Why would a company try and anchor you to your previous experience, unless they were basically exploiting you and trying to pay you as little as possible? Like, obviously that's not cool.
Ian Douglas (21:19): Yeah. And having been an engineering manager, my responsibility to the business is to pay you as little as possible because we are in the business to make money. And so, yes, there is some expectation that I need to hire you for as little as possible, but at the same time, I need to pay you market rate. Otherwise, you're not even going to take the job in the first place.
Alex Booker (21:36): That's right.
Ian Douglas (21:36): And so I think it's important that people applying for jobs in the tech industry understand their value for the skill and the experience that they're bringing from the technical skill point of view. But also understanding that when you come from a different background, like you mentioned, retail or food service, or like skilled labor, you are still bringing valuable skill to the job, aside from being able to program and write code in a particular language or framework. You're bringing so much other skill about working on teams, working in high pressure scenarios and other sort of tangible skills that are also going to be valuable to the company.
Ian Douglas (22:11): And you need to be able to understand how to communicate that as part of the interview so that they don't just say, oh, well, you don't have any professional experience. You're coming in with just a little bit of coding skills. So we're going to pay you this much. You can always come back and say, yes, but I also bring years of team experience. I bring years of knowing about this kind of industry, or I know about working with customers, or I know about working in high pressure environments.
Ian Douglas (22:37): The school that I taught at in Denver, we would do meetings with employers and say, what kind of background do you appreciate more from people coming out of a code school? The one theme that we got from a lot of employers is they really like people that come from food service industry specifically because they have so much teamwork involved. There's like what we call front of house. It's all the servers and actually interacting with the customers. They have to work with the back of house. Like all the food preparation people, they've got to communicate really well about the expectation of the customer. So there's that teamwork.
Ian Douglas (23:12): And then there's teamwork about who's serving which table and how do you get out of each other's way, literally as you're physically passing each other. And how do you manage juggling lots of priorities, as far as that table needs more water and that table needs their food because it's getting cold in the back. And so a lot of employers in our area that we're hiring students, they're like the first thing we look for are people that come from that food service background, because they bring so much more to the team.
Alex Booker (23:38): Let me ask you, Ian, because I was following you on LinkedIn and thoroughly enjoying your posts, as you basically live blogged your job search experience, something I don't think I've seen anybody do before. It was refreshingly transparent, actually, and very educational. I'm really happy you got a job at Postman. It's an awesome app, definitely. And it seems like an awesome company as well. Are you relieved the job search is over? Because from the outside looking in, it looked like quite an arduous and lengthy process.
Ian Douglas (24:08): I am relieved. The job hunt is really long and arduous, no matter what level you're at. It's easier for some, depending on the kind of work that you want to do. I think if you understand the kind of development that you want to do and what area of the tech industry you want to be in, it can be an easy transition, especially when you're already employed. Getting that first job though, I've seen people spend months or a year or more trying to find that first job, because it's about convincing a company that you really can do the job.
Ian Douglas (24:35): I had started interviewing late October into November and in America, November had lots of holidays with American Thanksgiving and so on. There were a lot of sort of gaps in when I was actually able to interview with companies. A couple of companies I was hoping for didn't work out. One of them paused they're hiring, one of them I messed up the interview in a really bad way. And then another one was a FAANG-level company.
Ian Douglas (24:56): And yeah, just trying to be really transparent about like, hey, you know what? You're not in the job hunt alone. Let me tell you my experience. Let me tell you my journey. And it got a lot of views and I got some thumbs up and likes and all that kind of stuff. And I don't do it for the accolades at all. I do it to help other people just to let them know you're not alone in this, that even as a senior level dev, we also struggle. It's not like, oh, I want a new job and I got a new job tomorrow. For some, it can be that way. If you have very specific skills that companies are looking for, then yeah, they're going to bring you over. And they're going to expedite things. For me, this job hunt was the first time, I think since I graduated college where I applied to many, many, many companies. I applied at 30 companies, actually a little more than 30 companies. I interviewed with 30 companies between December and about middle of January.
Alex Booker (25:47): So your callback rate was quite high, wasn't it?
Ian Douglas (25:49): It was for me because I brought a lot of skill, but at the same time, I also didn't really know what I wanted to do. I've got experience in software management. I've got experience as a software developer and architect, and I've got experience in developer relations and developer advocacy. And I wasn't really sure which of those roles I wanted to pursue for this next job. All I knew is I want this next job to be like a four or five-year job. Like, I don't want just another one-year stay or two-year stay. I want to be in it for a long time. So that was my primary factor of like, where can I see myself really fitting in for a long time at a company? And I had some people review my LinkedIn and they're like, yeah, your LinkedIn is all over the place. What do you want to be when you grow up?
Alex Booker (26:30): I read about that. Yeah.
Ian Douglas (26:30): That was difficult for me too. And so I was still applying for lots of different kinds of jobs, but I did take some time in December just to enjoy the holidays with my family. And then I got right back into the job hunt and then it was a full-time job at that point. And so a lot of my posts were just the transparency of you're not in this alone. Like I'm also going through this, let me just share my experience. And I called out some companies for really great interview practice. I called out some companies for really poor interview practice and negotiations and things like that. Again, because I wanted to be transparent about it.
Ian Douglas (26:59): As far as the callback ratio, it was higher because I've got a lot of industry experience. There's so many people trying to get that first job in tech, where I see those posts all the time. They're like, I've applied at my 200th company, my 300th company, I'm not getting any phone calls. Like, what am I doing wrong? And I so often want to reach out to every one of them going, you're not doing anything wrong. It's just a numbers game. But I think it comes down to something that I said earlier is, how are you conveying the value that you bring to the company? And it could be part of the resume or CV. It could be a cover letter. It could be the projects that you build that really make you stand out. And so understanding how to demonstrate your value to a particular company is really important.
Ian Douglas (27:39): And so one bit of advice that I talk about on the website techinterview.guide, and I bring up on my live stream a lot is when you're making a resume or CV, make a really, really long, really big CV, put every project, every skill, every job you've ever had on there, lots of bullet points of everything that you've ever done. Make a really, really big resume. When you are ready to apply for a job, make a copy of that, trim it back down to one page or two pages of only the most relevant content that that company needs to see about you. They don't want to see everything about your history on that CV. They only want to know what is the immediate value that you bring to my company. That's all they want to see.
Alex Booker (28:20): As I listen to you, and I personally am like nodding my head like, yes, I need to do this, I need to chisel away until I have something that looks awesome, I'm thinking of someone listening who is like, I can't even fill one page with programming accomplishments. Like, what do I do? What's your advice for them?
Ian Douglas (28:34): Especially if you're self-taught or if you've gone through a program like Scrimba or any kind of code school or any kind of online curriculum, the projects that you build are what's going to help you stand out to a company. If you only have a few projects, you're not going to stand out as well. However, there is a healthy dose of privilege in saying, oh yeah, just put all of your projects on a resume when you only have a couple of projects and you have limited time where you're trying to get a new job, you're trying to juggle applying for jobs and researching companies. You may be working while you're trying to find a new job. And I understand that not everyone has the time and the privilege to just work on endless numbers of projects, but the projects will help you stand out. Networking is also a really good way to get a job. If you are struggling to even fill a single page, my advice is don't make the font bigger to make it fill. And don't over explain things.
Alex Booker (29:25): You can use some big words, change the line heights, give it some margin.
Ian Douglas (29:28): But there is other experience that you bring that can be valuable to that company. And it's about finding those pieces of your background that you can present to them. Like, maybe you cut grass on the side, maybe you deliver newspapers. Whatever role you have or have had that feels very mundane, there are ways that you can extract value to a future company from previous experience. If you've not been employed, then yes, that does get trickier. And if you don't have a lot of project work, yes, that can be tricky. And if you've only studied a small tech stack, yes, it can be tricky. I understand that. Do what you can. I mean, if you've got like a half-page resume or half page CV, that's not going to be enough to demonstrate or to convince them to interview you so that you can continue to demonstrate the level of skill.
Ian Douglas (30:16): I would say, think really hard. Have other people think about the kinds of jobs and roles that you've had and see if they can help you extract ideas about what else you could put on the resume or CV that shows a company, the additional value that you're bringing, not just that you're limited technical skill, but also just the other, what we call well-rounded sort of experience that you have that makes you the person that you are and the value that that's going to bring to their company.
Alex Booker (30:42): There is this handy website called resi.ai. Compared to like a Word document or something that you might download and try and fill in, it kind of prompts you for different sections of your resume. Like a summary section, an experience section, a project section, an involvement section, I think, a skill section. I'm just thinking if I could build on your good advice, it would be to look at some templates and see what kind of prompts are out there, because they might just spark an idea about something you'd never really considered putting on your resume in the first place. So maybe that would help as well.
Alex Booker (31:15): You were talking a little bit about how on LinkedIn, you were complimenting some interview processes and you were even like calling others outs. And I think you wrote once about how you had a few offers and you wanted to learn from a company who had extended you an offer, or were interviewing you, how many phases were left in the interview process, and then they just kind of like removed their offer, right? Maybe I'm just an anxious person or something, but that felt like quite a tense experience. I don't think I would like to be on the other end of that. But then you went one step forever and you wrote about it in public. How do you think about that? Like, does it go through your head that like, the company's probably going to see this? Like, what are they going to think?
Ian Douglas (31:55): They rejected me as a candidate, so I don't care what they think.
Alex Booker (31:58): Good answer.
Ian Douglas (32:01): No, I joke. I joke. But let me fill in some backstory with that. So I had been interviewing with a number of companies and this one particular company, it was an engineering management role. By that point I had already decided in my mind, I was really going to go for a developer advocacy, developer relations kind of role, which is a lot of public speaking and education and training, along with engineering effort. This particular company, I had actually started to write the letter to them via email saying, "Hey, I've got a number of offers. I've decided that engineering management's not what I want to do. So thank you, but I'm going to withdraw as a candidate." And something that kind of stuck in my mind that was some job advice that I've given in the past as well is don't count yourself out. Don't resign from the job hunt because you don't feel you're capable.
Ian Douglas (32:46): And so I rephrased the email and instead of saying, I'm going to withdraw as a candidate, I reworded the initial part saying, "Hey, I have a number of offers in writing. I'm still interested in this role with your company. I'm just curious about remaining steps." Up until that point, they had interviewed me at a very superficial level, a very high level of what kind of engineering management do you want to do? They had a number of roles. They had director level roles, senior engineering manager, engineering manager. And I think at one point they discussed maybe a senior director type of role. The interviews that I had done with them were really exploring what kind of manager are you? What kind of management role do you want to have? And when I wrote to them saying, "Hey, I have a number of offers. What's remaining in your process?" Just trying to get a sense of time and so on. And they wrote back like within 10 minutes. They emailed me back and they're like, "Thanks. We're going to move on with a different candidate."
Alex Booker (33:40): Are they like, if it's not a hell yes, then it's a hell no type of thing? Like, what's that about?
Ian Douglas (33:45): Yeah. No, that's a great point. And some companies are like that. If they're kind of on the fence, as we say, if they're a little bit unsure and you say, hey, I've got offers. They're like, okay, go take that offer. Good luck. They would rather say no than hire the wrong person, which again, as an engineering manager, that's the number one thing on my mind, I want to make sure I hire the right person for my team. I don't want to hire the wrong person. Otherwise, it's a bunch of wasted money. I may cause conflict on my team. I have to make sure I hire the right person on my team.
Ian Douglas (34:12): So for this particular company, because they weren't even sure where I was going to fit in the company, and I told them I had offers, they're like, okay, that's fine. Move on. I think they could have worded the email a little bit differently instead of saying like, "Hey, we're going to reject you as a candidate." But they actually followed up later and they said, "Okay, well, here's really what happened. We realized," and it might have been because I had posted publicly about it, that they followed up in an email a couple of days later. This happened, I think on a Friday or a Monday and they followed up like the following day. I had responded to that email going, "Okay, well, thanks. Appreciate everybody's time."
Ian Douglas (34:45): You want to be gracious about it. You want to be grateful for the time that they've invested in the interview process, even if you get a rejection. They wrote back saying, "Well, here's the thing. We realized as we were interviewing you, that we actually needed a different kind of role, that we actually needed to incorporate different kinds of management layers. And so part of us interviewing you was also us realizing that we were interviewing for the wrong role. We actually didn't need that particular kind of management role in the company. It wasn't just you, it was also the role was the wrong role." And so they were also reworking what kind of role they were hiring for.
Ian Douglas (35:20): And so it was nice that we had a little bit of transparency back and forth with it. But yeah, I did post it publicly and I didn't call them out by name. I just said like, "Hey, it was a little weird that I was going to withdraw as a candidate, but I decided just to ask like, what's left in the process because I have some offers. And then they immediately respond with, 'We're not going to move forward with you as a candidate.'" But that's also why you don't lie to a company and try to bluff and say, oh yeah, I have this job offer.
Alex Booker (35:46): Sure.
Ian Douglas (35:46): Wink, wink, nudge, nudge. Like, can we accelerate your process? Because, again, if the company's not sure, or if you've only gotten a little bit into the process, like you say, unless it's a hell yeah, it's like, nah, if you've got an offer, go take that offer. And sometimes companies will say that too, if they ask like, do you have any offers? And you tell them, yeah, I have an offer from a FAANG company. They're like, all right, well, we're just going to shut you down here then, because we can't compete salary wise with a FAANG offer. So like, go take that offer. Good luck. You never want to exaggerate having job offers.
Alex Booker (36:18): And it's expensive for the company to keep that candidate in the hiring funnel. But to be honest, you're kind of blowing my mind because you said yourself that you weren't sure which profession to pursue exactly among your various skills. And so yeah, you were kind of dating around a little bit, I suppose, like trying to figure out what matched you. Meanwhile, the company was doing exactly the same thing, right? Like they were learning about what they're looking for exactly.
Alex Booker (36:42): And I'll just tie this all together because you also mentioned briefly how one company, you said they paused the role, right? And I think they were really cool to be upfront about that and tell you specifically what was going on. But all of this just goes to show that when you're a candidate, behind closed doors, you don't always know what's happening and it's very tempting or easy to assume that you did something wrong or maybe sometimes you know you have a vibe and it was obvious what went wrong. I admit that. But equally, you can't always jump to a conclusion. Like, it could be nothing to do with you. And you've put some really articulate clear examples to this. This kind of blow my mind. I'm quite excited for getting into all this.
Ian Douglas (37:18): It's very easy to tell people like, oh, if you get rejected, don't take it personally. It was just a business decision on their part. But for you, it is personal. You applied for that job. You really wanted that job and you got rejected. And for this one particular job where they shut down the hiring, I found out later on that they had moved that team under a different branch within the company. And so they were trying to figure out what that team was going to do. And so they needed to pause hiring. They didn't want to bring someone on the team with an expectation of that role, and then as they were moving that team to then tell that person like, oh, just kidding. This is what your role and responsibility is actually going to be.
Alex Booker (37:53): That's a good thing. Isn't it?
Ian Douglas (37:54): It was a responsible thing for them to do. It was disappointing for me as a candidate because I was right at the end of their process. They said like, literally there was nothing more to do than to extend an offer. They were still interviewing a few others and they were waiting to wrap those up, because they wanted to make the best decision they can. At the same time, as a hiring manager, I've also gone through interviews where, as soon as I see like, Alex is good enough, I'm just going to make an offer. I'm just going to stop the interview process with everybody else. Alex is good enough. I'm just going to hire Alex, or at least extend an offer to Alex and hopefully Alex says yes.
Ian Douglas (38:24): But yeah, it was a responsible thing for the business to do that for me as a candidate so that they didn't hire me under some false pretense of, what we call a bait-and-switch of like, we're going to bait you with this, but then we're going to switch it out to this other thing once you get the job. And so it was disappointing for me. And that was one of the jobs that didn't work out December and ended up getting me back on the job hunt. But that was also what helped me realize like, I think I was so disappointed by that, it helped me realize that no, that is the kind of role I really want to be doing. I really want to be in that sort of training advocacy kind of role.
Ian Douglas (38:57): And so when I started up the job hunt again, late December, early January, those were the bulk of the roles that I was applying to. And those were most of the offers that I had coming in, because I could clearly demonstrate that value and that passion of teaching and training and just the long history that I've had of mentorship and bringing that to a workplace.
Alex Booker (39:15): It's sometimes when we're like unhappy with our situation, when we reflect on why, and that starts to reveal answers about what we actually want to be doing. I would guess you don't really regret that experience in hindsight, because you seemed overjoyed actually to work at Postman and connect your experience, teaching it to now getting to educate people about the product. I'm just thinking, if you took that opportunity in December, say, you never would've worked at Postman, basically. So is it kind of a good thing actually?
Ian Douglas (39:43): In the end, it all works out, but it is a difficult journey to get there. I think the advice I would give people too, is if you miss out on opportunity, it's not typically a permanently closed door. When you're going to interview with companies, the primary thing that's going to help you in interviewing is practicing interviewing. So the common advice that I tell people is, the company where you really want to work, don't make that your first interview because you're not going to do well on those first interviews. Go interview at other companies, get some practice, get the nerves out a little bit, practice how you're going to present yourself so that when you do go interview for the job that you really want, you've got a lot more polished.
Ian Douglas (40:16): Postman was one of the last companies that I interviewed with. And by then I had very much polished how I could explain the value that I bring to the company. Of course, I had a training video of me showing, this is me teaching your product. I think that helped more than the polish. But having gone through those initial interviews and trying to fumble around my own words of how am I going to explain the value that I bring to the company, and then practicing that out with other developer relations roles was actually what got me most of the offers that I had in January. It was just being really well practiced.
Ian Douglas (40:49): And so make your first couple of interviews, companies, not that you don't care about as much, but companies that you're okay with not getting a job later, or if they make an offer, that you're okay saying no, because it's not really the job that you want. At the same time, any job offer is a good job offer. If it's your first job in tech, the first job offer you get, just take it no matter what. Once you get a year of experience, anybody else is going to hire you. It's getting that first little bit of experience. And so that first job isn't necessarily going to be your dream job. It doesn't necessarily have to be the biggest brand name, a FAANG kind of company. It doesn't have to be an amazing prestigious job. It just has to be professional experience.
Alex Booker (41:29): I like to remind people that it depends on your timeline. Doesn't it? If you have three or four years to get your first junior developer job, then maybe you can wait it out and get the perfect prestigious first job. But generally the less time you have, the more flexible you have to be.
Ian Douglas (41:44): Especially if you're studying software development, your first job doesn't even need to be a development job. I studied software development in college. My first job was tech support. I was barely doing any programming at all. And I was kind of miserable to be honest, but I was able to go to that next job and explain, hey, working in customer service and transitioning into kind of a pre-sales engineering role made me a better developer because now I understand better what the users are going through. If you need to take a first job where it's like a quality assurance, or QA, quality engineering, QE, kind of role or a customer support kind of role, the next role that you get, tell them you did that on purpose and say, I specifically went and got a QA role because now I understand more about how these systems communicate. I got that customer support role because I wanted to understand deeper user empathy. And that's why that's making me a better developer for this new role.
Ian Douglas (42:34): You should never feel that once you get a particular kind of role, that you're stuck in that kind of role. There is a bit of a stigma of like, oh, once you get a QA job, that's the only kind of job you're ever going to get. Or once you get a customer service job, that's the only kind of job you're going to get. It's not true. You are in charge of how you communicate that value to the next role. And you can tell the company, I did that specifically because I wanted a deeper user empathy, or I wanted a deeper knowledge of systems communication. And now that made me a better developer because et cetera, et cetera. Explain that that was on purpose. It wasn't accidental. It wasn't just, I wanted to get into the tech industry somehow. That might be your motivation now, but you don't have to explain it that way later.
Alex Booker (43:14): I could imagine that a really effective strategy could be to maybe get your foot in the door with one of the roles like you described. And then the minute you get the job practically, maybe after a couple of months, say, but relatively early in the process, you start to then look for the next job, which might be a junior developer role or something. What I'm describing is a candidate who is literally using the company as a stepping stone. It sounds efficient, but I personally would feel a bit bad about that. And I don't know if that's the right way of thinking about it actually. I was just wondering what you think.
Ian Douglas (43:46): There's a type of book called a Choose Your Own Adventure book, where, as you're reading through a chapter, at the end of the chapter, it'll say, if you want your character to make this decision, turn to page 72, if want to make that decision turn to page 103. A career in tech is often the same thing. The type of role that you have now, you get to choose how that's going to play into that next role and that next decision. You are in charge of the path that you take in tech. So I don't think you need to feel bad about it. It's your career. It's your decision. It's your lifestyle. You get to choose. Every job is a stepping stone.
Alex Booker (44:16): Companies also have a responsibility to provide you with the career progression you're looking for. In fact, the pusher of previous thoughts by work dads, graduates often worked in customer service. It was a technical software as a service product where users used an API, essentially. The support was like coding. They would do that as like their rite of passage for six months in part to learn the culture of the company, but also empathize with the customers. And I think actually fill a void in customer supports because it can be hard to hire really smart people to do customer support all day, every day. So it was kind of like a win-win-win, I think, but just an example of how they were promised the progression there. So maybe there's something in between where you can navigate that, that way.
Ian Douglas (44:56): Yeah, I agree. And I have seen companies that do a similar progression. And that first company that I started with out of college, their whole thing was if you want to get a job in our engineering department as a new graduate, you have to do tech support for two years. Two years is a really long time. And after a year I'm like, I just studied three years of software development and I'm just going to sit here and answer a phone for two years. Like, I'm not actually doing any development. I was worried my skills were going to like atrophy a little bit because there wasn't a lot of active development that we were doing. We were doing a little bit, but not as much as I wanted to be doing.
Ian Douglas (45:25): So yes, I have seen companies do that progression. At the same time, if you do change companies, you can often get a higher salary bump than if you just transition within the company. They'll say, okay, well, you've done quality assurance or you've done customer service. Now we're going to move you into this engineering role and we're going to give you a small raise. But that raise is often going to be much bigger if you change companies completely. You can often get 10, 15% raise as opposed to you might get a 5% raise if you transition between teams or hopefully you don't stay at the same salary that you were at while you're taking on new responsibilities, but not every company is really good about making sure that your pay is still market rate when you go into that new role.
Ian Douglas (46:06): So yes, I'm a big believer in have some loyalty to the company. If they're investing in you, have some loyalty to the company and stick around. But every job, every role really, I think, is a stepping stone pun on your resume. Like when I look at a resume, I'm looking at that trajectory and looking at that growth of what have you learned, how have you learned it over time. And whether it's at the same company or other companies, doesn't make any difference to me, as long as I see a progression of skill.
Alex Booker (46:29): If you're too loyal, that can also be a bad thing. The company might move on. Your interests might get left to one side. Knowing when to move on is also an important thing to be aware of. Just sort of last thing to wrap up. You mentioned about one interview process where you felt like you just dropped the ball a little bit. I sort of imagine that you'll feel that way for a very specific reason. I don't want to ask you about a negative experience then, in the podcast, but for someone listening, it's kind of uplifting to know that even senior people sometimes struggle in things.
Ian Douglas (46:58): The way that I was trying to handle a lot of interviews in October, November into early December kind of timeframe is, I was leaving a job and I didn't want too much of a time gap between jobs. I often give the advice, I don't quit a job and then have to go find a job. Like it's always a lot easier to get a job when you've already got a job. And so work at the job that you have while you're interviewing and applying at other jobs.
Ian Douglas (47:22): And so I had an expectation that one of these three roles was going to work out. And so I put in my notice at the company and then none of these three jobs worked out. One of them was on hold, another was a FAANG company, and then the third one was the one where I dropped the ball. And basically what happened is I had scheduled a whole bunch of back-to-back interviews and they all landed on Friday. In the morning, I had followup interviews with Amazon, later in the morning, I had a company called New Relic, and then later in the day was Twilio. Part of why I was applying at Twilio is because I had been at SendGrid in the past. And I'm like, oh, this should be an easy way to do what we call boomeranging and go back to a company that you've been at before.
Ian Douglas (47:56): And I was in a flurry of emails and Google Calendar invites and Zoom calls. And I missed an email that said, "Hey, when you do this Twilio interview Friday afternoon, it's a 20-minute presentation in a 45-minute call." Well, I saw the calendar invite for 45 minutes and I'm like, I need to make a 45-minute presentation where they wanted me to do some live coding. And so I made a 45-minute presentation. We get on the call and they're doing all these lengthy intros. And I'm like, I'm running out of time here to do my thing. And they're like, "Okay, well, let's go into your presentation." I'm like, "Just to clarify, it was supposed to be 45 minutes, right?" And they're like, "No, it's 20 minutes." And I'm like, "Oh, no." How do I compress a 45-minute presentation down to 20? Because they wanted to watch me live code.
Alex Booker (48:37): What did you do?
Ian Douglas (48:38): I ended up copying and pasting code that I'd already written. And I actually had it on a separate monitor here in front of me where, if I got stuck live coding, I could kind of glance at that. And so I'm like, "Look, I've already got this code prepared. Just for the sake of time, I'm just going to paste it in here." And then they immediately rejected me and they're like, "We wanted to watch you live code. And because you didn't follow the instructions on making sure it was a 20-minute presentation, we're not going to move forward with you as a candidate." And so it was totally on me.
Alex Booker (49:06): That's harsh.
Ian Douglas (49:07): Well, I had missed the email, because I was trying to juggle so many interviews and so many companies and trying to do it all within a compressed timeframe that it was my fault. It was entirely my fault.
Alex Booker (49:17): I would assume the fair way to handle that is like, okay, this application process is over because it feels a bit arduous to reschedule the whole thing. But presumably you're welcome to apply again in the future, if you want to, right? And go through the process again. I don't feel like that experience should rule you out.
Ian Douglas (49:33): Yeah. And at most companies, if you don't do well and they reject you, that's never a permanently closed door like, you are never welcome back here. Unless you do something really egregious, you can often reapply in six months or a year. When I got turned down at Amazon, they're like, "Oh, you can reapply, but we're not going to tell you why we're rejecting you." It's like, well, then why would I reapply? If you're not going to tell me how to do better, I'm going to have the exact same interview experience later on. I'm not going to get any better if you won't tell me why.
Alex Booker (49:57): Ian, thank you so much for joining me on the Scrimba Podcast. It's been a pleasure.
Ian Douglas (50:01): Thanks for having me today, Alex. I appreciate it.
Alex Booker (50:02): That was Ian Douglas, Developer Advocate at Postman and the author of the Tech Interview Guide. Thank you for listening. Next week on what will be the episode 59 of the weekly Scrimba Podcast, I'm speaking with Jefferson Tang, a doctor turned developer with Scrimba. In case you haven't already, make sure to subscribe as not to miss it. I'd also like to invite you to tweet me, your host, Alex Booker, and share what lessons you learned from the episode so I can thank you personally for tuning in. My Twitter handle, along with Scrimba's is in the show notes. See you next week.