How to land your first developer job
Getting that all-important first developer job isn't easy, especially if you're a self-taught programmer without university-provided career services or internships.
As the founder of a code-learning platform, I have witnessed hundreds of people globally make a successful break into the tech industry, many of whom had no CS degree or support from a school. Those who succeed often use non-obvious strategies that go beyond the conventional advice of crafting a solid resume, building a portfolio, writing a cover letter and so forth.
In this article, I'll share the six most effective techniques I've seen work so that you can follow their footsteps and increase your chances of success as well.
Lean into your non-technical background
One of the most effective strategies is to combine your previous professional experience with your newly acquired coding skills. This works well because companies prefer hiring candidates who have industry knowledge, understand their customers' needs, and are easier to onboard. Another benefit is that it's likely easier for you to find someone who can give you a warm referral if you already have a network in the given industry.
Adrian Zamora: From a local hotel to a global tech giant
A great example is former Scrimba student Adrian Zamora. He transitioned from working for a hotel in Costa Rica into coding email templates for TripAdvisor, a public tech company based in the US with over $1B in annual revenue. Adrian knew a lot about marketing and selling to tourists, which came in handy at TripAdvisor.
I've also seen students from backgrounds like healthcare, marketing, and the military leverage their industry knowledge to land their first developer roles. In some cases, they were even hired by their current employer, who knew they were reliable and trustworthy, making the transition less risky for the company.
If you have industry experience and connections, make sure to leverage them, as they are one of your key competitive advantages.
Follow up and stand out
If you're still waiting to hear back regarding a role you've applied for, consider contacting people who work there, ask for warm intros, and make sure to follow up on any conversations.
Stefania Rosca: Why a 'no' can mean 'not now'
The best example I have seen of using this technique comes from Stefania, who got her first developer job at Adevinta.
When she saw that Adevinta was hiring graduates for junior developer positions, she didn't just send an application. She also did the following:
- Connected with their employees on LinkedIn.
- Interacted with the company on Instagram.
- Asked a previous colleague who knew people at Adevinta to refer her.
Despite all of this, Stefania actually didn't hear back from them. So she followed up with one of their recruiters she had interacted with on LinkedIn. It turns out that the job had been given to someone else. However, the recruiter told Stefania that she was exactly the profile they were looking for as a candidate, so it was a mystery why she hadn't been invited to an interview. They told her she'd be kept in the pipeline for future roles.
After a few weeks, Adevinta posted a new job ad. But no one reached out to Stefania about it. So she emailed the recruiter again. But by this time they had left the company, so Stefania had to track down another recruiter at Adevinta, who finally invited her to an interview.
As part of the interview process, she went above and beyond by recording a video explaining one of her projects (this is a phenomenal idea in itself). Eventually, Stefania got the job. If you'd like to hear her full story, you can check out this podcast interview.
Sometimes people think you just apply and that's it. And then if you get a rejection, that's the end of it. But sometimes it's not. A 'no' can mean 'not now'. So I kept pushing because I really wanted to work in this company - Stefania Rosca
Build a dedicated project for the role
Most applicants don't go the extra mile when they apply for a job. This means that you will stand out from the crowd if you do.
In the previous section, we learned how Stefania recorded a video of one of her projects to showcase it to Adevinta. That is a great example, but you can push the envelope even further and build a dedicated project tailored specifically for your target company.
Andy Brocklesby: Developed a gym website for the agency interview
While Andy Brocklesby was interviewing for a local digital agency, he built a custom website for a gym in their area. In addition to showcasing his coding and design skills, this demonstrated high motivation and a business mindset, as this gym was a potential customer for the agency.
They never asked me to build anything, but I did it anyway. I knew the industry they worked in so I built a front end static website to present at the interview - Andy Brocklesby
Andy received the offer letter the morning after he was interviewed. He also shared his journey on LinkedIn under the #100DaysOfCode tag, so you can learn more about this project in the posts he wrote at the time.
The SIBA hack
Another version of this technique is what I call the "SIBA" hack. It's short for "Solve Issues Before Applying", and it essentially means that you identify and fix an issue with the employer's website before you apply for the job. Then send them a deployed version of your fix.
This is almost guaranteed to get the company's attention, as it proves that you're able to provide business value without any handholding. You can read more about the technique in this LinkedIn post.
Kick-start your career with freelance work
Freelance work has a lower entry threshold compared to getting your first full-time role. If you're struggling to land a job, consider looking for freelance opportunities instead. Once you've gained some experience, it'll be easier to transition into full-time employment.
There are two main ways to get your first freelance gig: finding your own clients and using gig marketplaces.
Find your own clients
I would recommend trying to find your own clients before going onto gig marketplaces, as this route has less competition. If anyone in your network needs a website, app, or software assistance, that's an ideal starting point.
Scrimba teacher Tom Chant got his first coding gig because his mom had consulted for a school that needed a developer to add a feature to their website. The task was straightforward but pivotal—he created a database that made the school's archive searchable online. This opened the door to a local museum that needed help. Although that job was small, it was another stepping stone and it wasn't long before a nearby historical library reached out. What started as a few small tasks eventually grew into a long-term collaboration, with the library relying on Tom as their go-to web developer/consultant for several years. They still call on him to this day whenever they hit problems!
Back in those early days, another unrelated opportunity appeared just because Tom mentioned he was available as a developer. A colleague who ran a side hustle taking international students on tours of the region needed a website. He wanted a platform to showcase his itineraries and manage bookings directly online. That also became a regular gig, lasting several years.
If you don't have anyone in your network who can help you land your first gig, try reaching out to local businesses without websites — or with poorly designed ones — and offer your services to help improve their online presence.
You'd be surprised at how effective it is to pick up the phone or visit a business in person. It is probably outside your comfort zone, but that is exactly why it works. Most aspiring developers never do it, so those who do reap all the benefits.
Explore gig marketplaces
The second way to start freelancing is through gig platforms like Upwork and Fiverr. On these platforms, freelancers bid for projects, and competition can drive prices down, resulting in offers that might make you feel underpaid. However, the real value lies in gaining the experience and building your portfolio. This early experience can set you up with the background you need to apply for more desirable jobs.
Anthony Moreno: From Upwork to Amazon
Anthony Moreno from the US kickstarted his career on Upwork by specializing in email templates. He logged over 400 hours before being hired by Activision Blizzard. For the past couple of years, he's been contracting as a Senior Email Developer at Amazon.
Anthony's journey illustrates how focusing on becoming an expert in a niche field from the outset can lead to remarkable results. You can hear Anthony's full story on the Scrimba podcast.
When you do freelance work—whether it's free or paid, through gig sites or your own clients—you should grow this experience into a portfolio that you can show to prospective employers.
Be active and helpful in open-source communities
The advice of "contribute to open source" is often thrown around in junior developer circles. However, it is somewhat vague. When I was trying to get my first job, I remember thinking: "but I'm just a newbie, how can I possibly contribute to open source software"? It felt too intimidating and complex.
Luckily though, contributing to open source doesn't have to be limited to coding. Taking part in other ways is just as valuable. You can make meaningful contributions and develop essential skills by engaging with communities and building relationships, even if you're not diving deep into the codebase. A great place to start with this is the MDN Community, where they guide you in making your first contributions, be it updating documentation or code.
Another way of approaching this is to take part in the application of open-source technologies and be active and helpful in the communities surrounding them, rather than the development of the technology itself. At Scrimba, we have hired almost everyone in the company—including our developers, coding instructors, and operations staff—directly from our community.
Mikey Oz: From passion to full-time job
As an example, Mikey Oz joined as a developer after learning Scrimba's home-made programming language (Imba) and actively participating in our Discord community. We noticed him sharing cool Imba projects, helping others, and in general being enthusiastic about the technology. Here is one of the many messages Mikey posted in the community before we hired him:
Our CTO at Scrimba sent me a message about Mikey a few months later, saying, "He seems quite versatile and productive. Feels like a no-brainer to give him a try."
With this impression, it was easy to give him a shot. We offered him a two-month trial, which he nailed, and he's now been with us for more than two years.
Are there any particular programming libraries you enjoy working with? If so, I'd recommend you to do the following:
- Join their Discord server.
- Share stuff you're building.
- Get to know people.
- Be helpful by answering questions.
The final point is the most important, as it demonstrates your knowledge while also generating positive karma and building a network, all at the same time. The more helpful you are, the more likely it is that you'll be approached by someone for doing paid work.
Engage in in-person communities
Getting involved with in-person communities can also unlock opportunities. I have experienced this first-hand — it helped me land my first developer job.
Fresh out of a coding bootcamp, I attended a startup event arranged by the CTO of the startup I wanted to work for. Since we had crossed paths a few times before, I felt able to ask him directly about the roles they were hiring for, and we agreed to continue the conversation later. You can read more about my journey in this blog post.
All big cities have regular events and meetups for the tech industry. The more you get involved with these, the higher the chances that you'll bump into opportunities. Head over to Meetup.com to search for events in your area.
Start with a coding-related role
If none of the above tips do the trick for you, and you're struggling to secure a developer position, then you should consider starting in a related role and try to transition into development over time. I've seen this happen several times at Scrimba.
The main reason you might be able to get a related role more easily than a pure development job is because your coding skills should help you stand out from the competition, as many other applicants likely won't have programming knowledge. Consider pairing this with other strategies, such as leveraging your non-technical background or going above and beyond in your application.
Additionally, it expands the pool of jobs you can apply for. If development roles are scarce, entering the field through a related position can be a great way to get your foot in the door.
So what are these roles exactly? They are typically jobs in which you are surrounded with code and software, but you don't necessarily write it yourself. Here is a short, non-exhaustive, list:
- Network technician
- Systems technician
- Quality assurance specialist
- Sales engineer
- Various analytics roles
- Developer advocate
Once hired, you should actively seek out opportunities to take on coding-related tasks so that you can transition into a developer role.
Mix and match to increase your chances
To sum up, breaking into the tech industry isn't a walk in the park, but with a targeted approach and by using your unique background, skills, motivation, and opportunities, you will gain an edge over the rest of the application pool.
It's crucial to pick strategies that play to your strengths. For instance, if you're short on professional connections or work experience, highlighting a non-technical background might not be your best bet. In that case, you'd want to start by focusing your energy elsewhere.
Keep in mind that you don't have to stick to just one strategy. In fact, combining several will really amp up your odds of landing that first job. Take Stefania, for example. She didn't just use one approach; she combined multiple strategies. You should consider doing the same.
Best of luck with the job hunt! If you'd like me to give a virtual talk at your school or university on this subject, feel free to send me a message on LinkedIn or an email.
Scrimba is MDN's recommended course partner for learning their MDN Curriculum.