Searching for My First Job in Tech
Three years ago, as I ventured into the final year of my Electrical Engineering and Computer Science studies, I pondered the daunting question: How would I secure a job in my field, specifically in programming?
Despite this being a common concern among my peers, the guidance I received was often vague and unhelpful. My friends were equally clueless, having yet to land their first jobs. My family, with no background in tech, couldn't offer any insights, and the brief advice from professors and acquaintances left me more confused than enlightened.
An exhaustive search online failed to yield a comprehensive guide tailored to someone in my position. However, I found helpful information scattered across various international forums and a few local online groups.
A Complete Guide to Landing Your First Programming Job
Fast forward three years, and I've accumulated experience working full-time for two companies and have undertaken numerous roles as a freelancer or partner. My career has spanned on-site, fully remote, and hybrid work arrangements, engaging with local and international companies. I've also guided friends to their first jobs, observed countless others embark on their tech careers, and engaged in discussions with those hiring and conducting interviews.
This guide compiles a detailed, comprehensive guide to securing your first job in programming. It's crafted to assist those in the predicament I faced three years ago. We'll delve into strategies for securing that initial role and address frequently asked questions related to the job search.
What Knowledge is Required to Land Your First Web Developer Job
Before we delve into strategies, there's a fundamental prerequisite: a basic understanding of the field to secure your first job as a developer. Developers typically fall into the following categories:
Education: Those studying at a university or college acquire knowledge from their academic curriculum.
Coding Bootcamps: This category includes individuals who have attended fast-paced, intensive programming training programs.
Self-Taught: Those who learned how to code on their own.
In today's programming job market, how you learn to code is not critical. What matters is your ability to be useful to the company you'll work for.
This is determined by the skills you possess. Without prior experience or projects to show to your potential employer, they will, as a last resort, look at your educational background to evaluate your capabilities.
In this case, a university degree might be favored over completing a coding bootcamp, and attending a coding bootcamp is considered more advantageous than being self-taught.
Following the strategies below, certification will be a bonus rather than a decisive factor. Therefore, ensure you have the right skills. How you acquired them will not matter.
Strategies to Land a Job as a Web Developer
When seeking a web developer position, it's advantageous to adopt the employer's perspective. Consider what criteria you would use to select a candidate and how you could distinguish yourself from the competition.
The strategies discussed below are designed to make you more valuable in the eyes of potential employers.
List of strategies to land your first programming job:
Showcase Your Code
Gain Work Experience
Engage in an internship
Build Your Resume
Create Profiles on Job Search Platforms
Send Out Resumes
Create Content in Your Field
Build Your Platform
1) Showcase Your Code
On your personal GitHub, someone can see what you have worked on. Add a description to your profile about who you are and what you do.
Upload the projects you have worked on. As many as you can. Projects you did in school, in your free time, and projects you created with friends.
For each project, include a detailed readme explaining what it does, why you created it, and how someone can use it.
Your employer needs to be able to see your work. Don't worry if your projects could be better. The point isn't to show that you write perfect code. No one expects that from you. The essence is to show that you write code and how you have built things on your own.
This transparency demonstrates your technical skills and ability to document and explain your work effectively.
2) Gain Work Experience
The most significant advantage when searching for a job is to have work experience. The paradox with the first job is that you can't have work experience before you first work somewhere. However, this is only partially true. There is a possibility of gaining work experience on your own.
What I did was to create various websites for people close to me for free. I made a website for my family's business. I created my portfolio and the portfolios of my friends. I helped friends and acquaintances with their projects. I worked without pay in start-ups of friends and known people. I undertook my projects from scratch. I participated in projects online by following various courses and challenges.
Thus, before I sent my application for my first interview (for an internship), I had projects I had worked on. I had already collaborated with other developers and non-technical people. This made me stand out compared to someone who had just finished university. Also, I had created my portfolio, where I showcased these projects.
3)Engage in an Internship
An internship is an excellent way to gain work experience. Often, at the end of the internship, a job offer will be made if you have performed well. If you have the opportunity for an internship, take advantage of it. Look for a company that can help you develop and where collaboration is possible after your internship ends.
In case you don't have the opportunity for an internship, find a company that interests you and ask them to let you work there, even for free, as long as they teach you things about the field. Many colleagues are against this view. 2-3 months of working in a company is one of the best things you can do to find a job faster.
*Note: In most places where you offer to work for free, they will pay you from the outset or propose to pay you once they see that you are contributing to the team.
4) Build Your Resume
The advice you'll hear from everyone is the importance of preparing your resume. There are various types of resumes and plenty of templates you can follow.
What I recommend is creating something that truly represents you. Avoid lengthy resumes that stretch over three pages. Recruiters typically spend at most 10 seconds on your resume. Therefore, convey who you are and what you have to offer.
If you need inspiration, mine is available here.
5) Create Profiles on Job Search Platforms
Most job opportunities nowadays are secured through the Internet, especially in our field. Create profiles on platforms such as LinkedIn, Indeed, Monster, etc. A Google search can reveal more options, but following this guide, the aforementioned platforms are more than sufficient.
6) Send Out Resumes
Now that you've registered on these platforms and prepared your resume, submit applications to any job that interests you. Don't be discouraged if you see experience requirements. You can still land the job without it. The key is to have foundational knowledge and to explain to the company why they should hire you.
7) Seek Employment
Take a more proactive approach by asking for work yourself. Make a social media and LinkedIn post stating that you're looking for employment. Share the same post in Facebook groups and programming forums.
Send your resume to companies that interest you, even if they do not have open positions. Explain that you seek employment and are willing to work hard and learn.
Reach out to recruiters and company managers with messages or phone calls. Ask acquaintances to introduce you or connect you with people in the industry.
Network with other developers. Meeting people in the industry can significantly increase your chances of finding a job. Attend related events and meetups. Join relevant communities on Facebook, Twitter, LinkedIn, Discord, etc.
There are many places to meet developers, including live streams on Twitch and YouTube. You can connect with industry professionals there as well.
9) Create Content in Your Field
Publish material related to your field. Write an article about a new technology you've learned. Create a tutorial explaining the technologies used in your latest project. Post photos from events you've attended. Make a video discussing a challenge you faced and how you overcame it.
Most people consume content on the internet, but few create it. This phenomenon is even more pronounced for those without experience in the field. The above actions will help you stand out in the job market.
10) Build Your Platform
Going a step further than creating content is to build your platform. Constructing your platform is one of the best portfolio projects you can have.
It's more than just a demo project that will never be used. Beyond the technical requirements to design, build, and maintain your platform, it's actively used.
Since writing material gives you an edge in the job market, imagine what having your platform will do for you.
How to Secure Your First Job Interview
Following any or all of the strategies previously discussed will immensely aid your job search, not just for landing your first role but throughout your career. Implementing these tactics almost guarantees you will secure interviews. The next step is ensuring you succeed in those interviews.
Job Interview Tips
Navigating through a job interview can be a topic on its own. Here are essential tips to consider within the scope of this guide:
Understand the Employer's Needs
Remember, your potential employer is also in need of a great employee. Viewing the interview as a collaborative effort towards a common goal can set a positive tone.
Research the Company
At a minimum, be familiar with the basics about the company you're interviewing with. It demonstrates interest and preparation.
Prepare for Common Questions
Anticipate and rehearse answers to standard interview questions.
Practice Your Presentation
How you introduce yourself and convey your qualifications is crucial. Practice to ensure clarity and confidence.
First impressions matter, so dress suitably for the company culture and the position you're applying for.
Pay attention to your body language and tone. Being calm and collected can make a significant difference.
Remember, you're speaking with another human being. Courtesy and respect go a long way.
Build a Relationship
Ask about the company, your potential role, and any advice the interviewer might have for someone in your position. This can help establish a connection.
Choosing Between Remote and On-Site Work
The decision between remote and in-office work hinges on numerous factors, including your preferred work style and personal and professional needs. Remote work brings unparalleled flexibility, reducing commute times and expenses and offering a broader range of lifestyle choices.
Conversely, working in-office can significantly enhance your relationship-building with colleagues, increasing interaction and creativity. It's a setting that naturally fosters collaboration and innovation.
For newcomers to the workforce, in-office engagements can accelerate their growth. The office environment is a rich learning ecosystem. Overhearing problem-solving discussions and participating in direct dialogues can be incredibly educational. Furthermore, it simplifies the process of asking questions and finding mentors.
I prefer a hybrid work model that marries the best of both worlds. This typically involves spending 2-4 days in the office each week while dedicating the remainder to remote work. This approach optimizes professional growth and personal flexibility, offering a balanced solution in today's dynamic work landscape.
Finding Work as a Developer Abroad
Yes, finding work as a developer for companies abroad is possible. The tech industry is global, with many companies seeking talent regardless of geographical location. Proficiency in English and working effectively remotely can significantly increase your opportunities.
While some positions may be fully remote, others might require occasional visits to the headquarters. Typically, these opportunities are not aimed at junior positions.
How Much Time Will it Take to Land Your First Developer Job
The time it takes to land your first developer role varies based on your skills, the job market demand, and how actively you pursue job opportunities and networks. While some may find a job within weeks, others might take longer. Adopting the strategies outlined above will significantly reduce the search time.
Entry Developer Salary Expectations
Your salary expectations for your first developer role will depend on various factors, including location, job type (remote or on-site), specialization, and market demand for your skills.
Conduct market research to understand salary ranges for similar positions. You can utilize platforms like glassdoor, payscale, etc. Be realistic but prepared to negotiate based on your skills and the value you bring to the company.
Experience and skills are more critical early in your career than a high salary. You'll be in a stronger position to negotiate higher pay as you prove your worth.