Most people are switching careers into tech and most often they’ll concentrate on learning how to write code and build projects, optimizing on making their GitHub profile, and maybe networking. It’s important to take time to prioritize preparing for job interviews and job applications.
If you're looking for a job don’t be afraid of the technical processes or worry about failing. Just apply for roles if you’re considered for interviews to give it your best whether you’re accepted to the next steps or not consider this as a learning process and odds with a possibility of landing a good role with a company with a good culture that favors developers like you
In this template, I’m going to compile a number of resources and templates one can use to prepare all requirements needed in the job application process and job interviews.
Job Applications
Most companies hiring developers requires one to submit their resume, cover letter, LinkedIn profile, portfolio, and GitHub profile in the job application forms or if they are to be sent via email. If you’re a budding software developer looking to apply for jobs you take your time to prepare these 6 profiles effectively as you continue learning or when you feel you’re comfortable and want to start applying for jobs.
1. Resume
sites you can use their templates to make your own resume:
- Resume.io offers resume templates & has a free trial plus paid plan.
- Flow CV: resume builder that is free and one can download their resume after adding all needed sections.
- Google Docs: you can make a copy of the resume template and make needed changes to create yours on a google docs document. At the end remember to provide access(view) to whoever will have access to the link.
- Resume Genius: sample for web developers and also a resume builder.
- Indeed resume-builder
Some employees prefer having a link to your resume to avoid restrictions on space limits when it comes to the pdf form of resume. Having options between downloadable & live versions (link) of resumes is also an idea it helps you become flexible when it comes to job applications.
What makes a good Resume for a developer (Resources)
Resumes should obviously show your:
- name, link to your GitHub, personal portfolio, LinkedIn, and email address.
- education
- experience
- skills(programming languages like JavaScript & tools like GitHub)
- projects(about 3 projects: small description, live version link or GitHub repository link and language/tools used)
The resume should be limited to one page especially if you don’t have a long experience and it’s also believed that recruiters prefer short and detailed resumes.
Resume articles
- How to write a killer Software Engineering résumé - source Freecodecamp
- 11 articles on Resume - Freecodecamp: this collection gathers for those who looking for their first-ever developer role and experienced ones even those with a non-engineering background.
- Resume samples and templates to inspire your next application
2. Cover Letter
Some job applications require you to write down a cover letter and attach it to your job application. For some job applications, the cover letter is optional. Some experts believe that cover is a way you express yourself, your understanding of the company(mission), relationship with the mentioned role(mention that you’re either front-end, back-end, or full-stack developer - in line with the ad if you’re skilled on that line), show your expertise by mention one project and how you used given programming language or your stack, bring in aspects of datelines(project time-frame), communication & collaboration if it was part of it, this will show your professional skills are in line with technical ones.
Google Docs is a way place you can write your cover letter, you can also find cover letter templates and make a copy to suit your role and area of expertise.
Cover Letter articles
- 3 articles on Cover Letters - FreeCodeCamp
- Job hunting article collection - FreeCodeCamp: covers cover letters, resumes & portfolios needed in most tech job hunting process
- How To Write a Cover Letter (Plus Tips and Examples) - indeed
3. LinkedIn Profile
Amongst all social media platforms, LinkedIn is known to be the professional social media platform that is associated with professional profiles, job posts, a place you can network with fellow people developers or find employees of the certain company you’re applying or even for recruiters to check your profile and confirm if what is in your resume corresponds to your LinkedIn profile or if you’re a good candidate for them.
As someone who is actively looking for a job or looking to have a long career in tech, it is good to maintain your LinkedIn profile and let them speak on your behalf. Some hiring managers reach out to potential employees through LinkedIn not necessarily through job applications.
All sections of your LinkedIn profile should be optimized from Headline(specify keywords: Full-stack developer or Front-end developer followed by languages & maybe open-source), Add Section, Profile Picture, Featured, Experiences, Volunteering, Education, Licenses & Certifications, skills(programming language/technologies & tools you’re familiar with), Recommendations(let your close network in developer/tech community write you a recommendation), Publications(add some technical articles), and Projects(add past projects & their description preferably GitHub repo links or live version link attached)
LinkedIn profile curation resources
- Danny Thompson - LinkedIn Series: YouTube Playlist
- How to get your first developer job on LinkedIn - FreeCodeCamp
- Amazing LinkedIn Profile - FreeCodeCamp
4. Personal Portfolio
Personal Portfolio is a project that shows little about you, most of the past projects that you’ve built while learning how to write code, skills & technologies that you’re familiar with, copy of your resume, contact information, links to your GitHub/LinkedIn/Twitter/Blog(Medium, Dev, Hashnode or personal blog of choice). The structure of a personal portfolio differs depending on the template of your choice but what’s important is for your portfolio to show projects their live version links & GitHub Repository link or GitLab Link.
A personal portfolio could be a web page made out of HTML & CSS or CSS framework like Tailwind CSS/Bootstrap or made out of JavaScript library/framework, or those of Python depending on what you’re comfortable with.
Personal Portfolio Resources
- How to build own developer portfolio using HTML, CSS and JavaScript - FreeCodeCamp
- 12 Freelance Developer Portfolio to inspire you - FreeCodeCamp
- 14 developer portfolio to get inspiration from - Medium
- 63 web developer portfolio design examples - Pinterest
5. GitHub Profile
GitHub is the commonly use code hosting platform. As a developer mostly while learning how to write you’re advised to also use git & GitHub or other code hosting platforms, by committing your own code or contributing to open-source projects.
If you’re new to git & GitHub you can check this playlist on YouTube by NetNinja and crash course by FreeCodeCamp to help you get better since most workplaces operate using GitHub for collaborations in teams and for CI/CD. Also helpful for contributing to open-source projects.
A good GitHub is considered as one that has:
- own readme file on the overview page which is created by default by creating a GitHub repository whose name is your GitHub username. With this you can write more descriptions about yourself, projects you’re working on, areas you need help on or where you’re willing to help or collaborate on, your interests apart from coding, and maybe a chart that shows your languages or random avatar/animation effects.
- ReadMe files on each project
- has a lot of activity(green squares)
Here are some good GitHub profile samples
- 10 standout Github Profiles - DEV
- Free Course to help you make your Github profile stand - Eddie Jaoude
- Customize your Github Profile using markdown - Eddie Jaoude
Job Application Platforms
Portfolio, GitHub profile, Resume, Cover Letter, and LinkedIn profile are top requirements for the job application process. On top of this actively take time to apply for many jobs both on-site and remote roles on:
- Twitter follows trends like #techishiring and active tech twitter community and hiring managers/CTOs who frequently hire for their teams. Also, the Twitter search feature is so efficient you can search frequently keyword like hiring junior developers, hiring software developer,s and saving so that you keep checking the latest tweets
- Indeed
- GreenHouse
- Glassdoor
- Angellist
- Stackoverflow jobs
- Tabulio
- Tamborin
- BambooHR
- ZipRecruiter - 500 startups
- via email, if company requests for those interested in a certain role to send their application to given email
- company website
- Referrals/networking
Once you send a job application the process keeps continuing until you get an offer. Keep sending up to 10 - 15 applications weekly if it's possible. Whenever you send an application you’ll expect feedback from the company either:
- an invitation to join the interview process which could be a phone-screen or technical interview
- take home-assignment which is common for start-ups and mid-level companies
- a rejection email (take it positively, even reply back to them to thank them and ask areas where you can improve on or where you went wrong)
- ghosted: no email or feedback (this happens and it's okay)
- if it was the hiring manager who had reached out to you submit your profile and they don’t reply back within a week you can write to them a follow-up email just to be sure.
Interview Preparation Process
The tech interview process is formally about 4-5 steps: phone-screen interview, technical interview(part 1 & 2), on-site interview(with developer team), with company owners/management. This differs depending on the size of the company and their interview culture. What is important is for you to be prepared with your technical skills & coding challenges and how to answer behavioral questions properly.
Phone-Screen Interviews: (Behavioral Interview Questions)
This is mostly comprised of questions to help the interviewers know you better, tell you more about the role and it mostly comprises of behavioral questions.
The efficient way to get good at answering behavioral interview questions:
- checking through resources
- creating a google doc then write down the commonly asked questions on this interview like Tell about yourself, tell about a time you had worked under pressure among others.
- start answering each and every one of them using the S.A.R technique which tells the situation, action, and result.
- ensure you relate the question & answers to tech experience and if you don’t have an experience relate it to projects you were doing while learning or collaborating with others.
- practice the answers by yourself, before a mirror, or collaborate with a friend who is also preparing for job interviews (let them ask you and you also ask them).
- use pramp.com to practice with peers who also believe that preparing for interviews is a profitable skill.
Behavioral questions aim to measure your communication, adaptability, time management, motivation & values, overcoming challenges, conflict resolution, and teamwork.
- How to answer and ask questions intelligently in tech interviews
- 36 commonly asked behavioral questions on tech interviews
- How to prepare for a tech interview
- what to expect in an interview and 10 steps to prepare - indeed
Technical Interviews
This differs from company to company but if you’re interviewing for a front-end, back-end, or full-stack role. You should know your programming language or tech stack and probably that’s the one linked to the job you’re interviewing for. For example, React.js role, react and JavaScript questions will be asked together with some coding challenges/data structure & algorithm questions. For backend or the full-stack roles it could be node.js or python questions, questions about databases, and some async & await coding challenges for Javascript developers.
Read widely and go through the commonly asked question for the given role you’re interviewing. Check the tech interview questions for top companies as some companies use interview questions of companies like Google, Microsoft among others. Also do coding challenges on sites like Codewars, Hackerrank, LeetCode among others as some companies could send you links to questions from those sites.
These technical questions are mostly timed. You could be told to do it from home then submit it at the end of the given time. Answers could be linked to code(given code editor), Q&A either written, audio or video. Just be ready for any set.
Technical Interview Resources
- 10 most popular coding challenges websites - FreeCodeCamp
- 13 Common Technical Interview Questions (With Tips and Example Answers)
- 21 popular full-stack technical interview questions and answers
- common technical interview questions - FreeCodeCamp
- Front End Developer Interview Questions - indeed
- interview questions & answers - Indeed
- technical interview questions - Glassdoor
Onsite Interview
This step of the interview comes after the technical questions interview part for most companies. This might comprise of both behavioral and technical questions since you’ll be meeting with the developer team and they would like to know you and you also get a chance to know them better or about the job environment. It’s a chance for them to know if they can work with you or also for you to determine if you can work with them or for the company.
You should prepare well and remember the whole first impression. They might not worry much about dressing officially but just figure out what works well for you. Prior to the interview, they might go through your LinkedIn profile, GitHub Profile, and Resume which you most likely have made them look good by now.
While you’re there just know they already have a hint of who you’re and they have some questions to ask you also ran yourself with some questions for them like their tech stacks, how long they have been in the company, more about the company culture, what they have gained so far since they joined the company and communication channels they use.
onsite interview resources
- How to prepare for an onsite interview - indeed
- onsite interview questions - Glassdoor
- what I learned from doing 60 technical interviews in 30 days - FreeCodeCamp
- interview questions you should be asking: if you’re asked do you have any questions for us
Co-Founders/CTO interview
This is almost the last step of the interview before getting an offer. Here you might meet the co-founders of the company if it’s a start-up or midsize company. For some companies, you might meet the CTOs of that company.
For preparation for this step of the interview read more about the company: history, mission, vision & objectives. Check the company website and social media platform, check more information about the co-founders, and remember your experience from the on-site interview you might be asked to make note of your experience & thoughts.
co-founders interview resources
- 8 technical questions startup co-founders will ask you
- cofounders interviews - Glassdoor
- Top 30 chief technology officer (CTO) interview questions and answers for 2021
- CTO Chief Technology Officer Interview Questions
Getting/Accepting an Offer
After all steps of the interview process, the company might decide to give you an offer which you’ll be required to read through and advised to take sometime before accepting. This will involve more about salaries, work schedule and terms of the job either contract-based or full-time. Having read through the offer you can decide to accept, negotiate or reject. It's all within your power and rights.
Accepting an offer Resources
- How to accept an offer - indeed
- questions to ask before accepting an offer - indeed
- 10 rules to negotiating an offer - freecodecamp
- 5 Questions to Ask Yourself Before Accepting a Job Offer You Don’t Love - Glassdoor
- How to Evaluate a Job Offer
Sites to check Salary range
At times you’ll be expected to state a figure of salary you’re expecting to be paid. Always give a range not a specific figure. Also remember that you’re being paid for the time you’ve spent learning certain skills that you make you suitable for this role, even if you don’t have experience don’t underestimate yourself. Knowing salary range is important to determine what fits the role you’re applying for and the company in order not to under or overestimate.
If it's a remote job you’ll see the salary range for developers on the given role e.g junior full-stack, software developer, etc you’re interviewing for in the company’s country, not your own country. It’s a job within your country also check the salary scale of developers within your country.
Salary Calculator
- Glassdoor
- Dice- Salary calculator
- tech salary calculator
- payscale salary calculator
- StackOverflow: Calculate your salary
I’m hoping this template will be of help to you during your job application and technical interviews. You can get as many resources out there as this is just a hint of what you need. Comments and feedback are welcomed. We can connect more on Twitter or LinkedIn
Top comments (0)