When you’re learning to code, whether teaching yourself on the side or attending an immersive bootcamp, you have enough on your plate already. So, if you’re trying to make a career change on top of that, it can be overwhelming!
I get it - I’ve been there too. When I finished General Assembly’s 3 month in-person Web Development Immersive bootcamp, I immediately started as a Developer in Residence. I was thrilled because I had the opportunity to work with students and help them learn and master some of the same material I had just learned. However, on top of working full-time, I was also looking for my first full-time software engineering role, so my days were packed. I usually spent a few hours each morning at home focusing on my job search, then spent a long day at work helping students, then came home at night and followed up on tasks related to my job search. It was exhausting!
But, I successfully secured my first software engineering role and started a month after my Developer in Residence contract ended. So, even with my busy schedule, I made it happen, and you can too!
The first step to finding a great engineering role is landing your first technical interview. In my experience, the best way to get to the interview stage is to leverage your existing network or start building one from scratch. Here are two strategies to keep in mind, whether you’re just starting in your career shift or looking for your next developer role:
1. Build your professional network
First, take a moment to think about people you already know who are software engineers. Browse through your LinkedIn contacts (if you’re not on LinkedIn, I highly recommend joining) and see if anyone you’re connected with has a job title that you want to learn more about.
If you’re just getting started with LinkedIn or don’t have any contacts in the industry yet, that’s ok! Especially if you’re looking for your first coding job, I recommend that you take the time to meet and talk with people in your new industry. If you’re attending a bootcamp, they will often have resources for events where you can connect with other developers. Pick a few to attend, and make sure to introduce yourself to at least one new person at each event. If you’re new to your city or don’t know many people in the industry where you live, Meetup is a great resource for finding events you’re interested in attending.
Aside from attending events, another way to connect with developers is by reaching out to them directly. If there’s a company you’re interested in, you can use their website or LinkedIn profile to find out who works in your area. When you find an engineer, look them up on Github and check out some of their projects. Then, try reaching out to them! You won’t always get a response, but when you do, usually people are happy to help.
Remember to be respectful when asking for someone else’s time - always offer to meet them somewhere that is convenient for them (in fact, if you can suggest a place to meet that’s convenient to their office, that’s even better!), and always come prepared with questions. When I ask for coffee meetings, I like to bring a notebook with several questions written down in advance. It helps me to organize my thoughts prior to the meeting and be able to take notes during the meeting as well. It’s also incredibly impressive when you show up to a meeting and are already prepared with questions.
Here’s an example of an email script you can use to reach out to someone you’re interested in chatting with. Remember to be genuine and be yourself!
Subject: Hi <NAME>, I’d love to learn more about <COMPANY> Email: Hi <NAME>, [Add a few quick opening sentences - if you’re emailing someone cold, introduce yourself. If you know them already, remind them who or what your connection is.] [Add a few sentences about why you're interested in the company - maybe it's their product, tech stack, or mission.] I'd love to take you out to coffee and learn more about what it's like to work there. I'm available this Wednesday (<DATE>) at 5:30pm or Thursday (<DATE>) or Friday (<DATE>) at 8am. [Give 3 dates/times that you are available - it makes it really easy for them to say yes!] Let me know if one of those days and times works for you when you have a chance! Thanks, <NAME> p.s. If you're too busy to meet in person, I'd be happy to send some questions over email, just let me know! [Adding this p.s. ensures that even if the person is too busy to meet you, you may still be able to get a few questions answered over email. Phone calls are also great in lieu of in-person meetings.]
Take care to personalize the email, as it will show and help you stand out, but don’t write a novel. Remember, you want to make it easy for whomever you’re emailing to simply say yes! Some of the best emails I get are from people who found one of the projects I worked on when I was at General Assembly.
Once you’ve scheduled an in-person meeting or phone call, take time to brainstorm a few good questions. If you’re asking questions over email, use your top 3-5. Here are some sample questions you could ask during a coffee meeting:
- What are the top 3 technical challenges the company is facing right now? - What are the top 3 non-technical challenges the company is facing right now? - What do you like most about working for <COMPANY>? - What do you feel most needs to be improved at <COMPANY>? - How would you describe the engineering culture at <COMPANY>? - What is the structure of your engineering team? - What is your tech stack? (You'll often be able to find the answer to this by searching the company's job postings)
As you start to meet with people, you’ll learn more about the different types of engineering jobs out there, so don’t forget to take notes! Not only will this help you get a sense of the job market and what skills are most in-demand, but it will also help you narrow down what kind of role you’re most interested in.
2. Get referred for promising roles
Once you’ve bootstrapped your network and done some research to figure out what kind of role you’re interested in, it’s time to start the job application process.
At this stage, most people would simply start submitting their resume to job postings left and right. This usually leads to anger and frustration when they rarely, if ever, hear back from any companies.
Instead, I recommend the networking approach. Remember the developers you met at events or for coffee earlier? By doing that, you were building your network with people in your new industry!
Referrals are the key to getting your resume noticed within a company, and increase your chances of landing an interview at all. Aside from my very first job post-college (which I actually got from replying to a Craigslist post!), all of the positions I’ve moved on to fill have come from referrals - that’s the power of relationships! When you know someone, whether it’s a childhood friend, a former roommate, or just an acquaintance you met for coffee once, you have a connection and a potential foot in the door.
But, referrals require relationships to be built, which is why spending the time to build those relationships first is very important.
Ramit Sethi has an excellent guide to building your network and one of the techniques he discusses is the “Closing the Loop” technique. This is one of my favorite techniques because it’s a great way to continue to build relationships even after an initial meeting with someone.
“Closing the Loop” means adding value before asking for help. Once you’ve met with or had a call with someone, but before you ask for anything from them, you’ll want to immediately thank them for their time and then (within 1-2 weeks) add value to them in some way. Whether it’s sharing an article you thought might be interesting to them, introducing them to someone else you know who could help them, or just writing to let them know that you’re a fan of their work, there are a lot of ways to add value. Many people start out by asking for a favor, which is a huge turn-off. Later in your career, when your time becomes more valuable and you’re in demand, you’ll see what I mean. In fact, maybe some of you already feel this way!
So, let’s say you’ve built a few relationships by having initial calls and meetings and have successfully added value to these new contacts - how do you go about asking for a referral? First, research the open roles at their company to see if there are any that seem like a good match for your skill set and interests. When you find some, you can then reach back out with your ask. Here is an example script you can use - I recommend continuing to use the same email thread as your original email:
Hi <NAME>, After learning more about <COMPANY> from you, I think I could be a good fit there. [Add a sentence about one of the challenges you’d be excited to work on based on the notes you took during your initial meeting/call.] I found a few roles that I would be excited to jump in to. Would you be interested in referring me for any of them? Here are the roles: - Role 1 with link - Role 2 with link [NOTE: I wouldn’t choose more than 3 roles. At a smaller company, this likely won’t be a problem, but at a larger company, sometimes there will be many roles that you would consider. Narrowing it down to 3 or fewer that seem like a good fit shows that you’re focused in your job search and are targeting specific jobs rather than any open role.] Let me know what you think when you have a chance. If not, no worries at all, but if so, let me know if there’s anything I can do to make the process easier for you. Thanks, <NAME>
Landing your first technical interview is much easier said than done, and this post only scratches the surface of how to get started. Overall, building your network and asking for referrals is a process of trial and error, and you won’t always succeed, but that’s ok! The more you put yourself out there, the more comfortable you’ll be with failure when it happens (and, trust me, it WILL happen).
If you’re just starting your journey to learn to code, or are simply looking for your next developer role, I’d love to hear from you. What is your #1 challenge? Let me know by emailing me at email@example.com.