How I landed my first job as a Software Engineer without a CS Degree in one month

Photo by Ian Schneider on UnsplashI still can’t believe it! One year ago from today, I was wondering whether I should pursue a Computer Science degree, study Software Engineering through a coding bootcamp, or become a self-taught software developer. In…

Photo by Ian Schneider on Unsplash

I still can’t believe it! One year ago from today, I was wondering whether I should pursue a Computer Science degree, study Software Engineering through a coding bootcamp, or become a self-taught software developer. In March 2022, after roughly a month of search, I received two job offers to work as a Software Engineer on the same day, one from a Wholesale industry company and another from the Information Technology sector, which is part of the Australian LinkedIn Top Startups 2021. I ended up accepting the latter.

My primary purpose is to tell you what I did during my learning period and my job search to land a Software Engineering position one month after finalising my Software Engineering studies. Hopefully this will help you if you are considering studying Software Engineering or you are already looking for jobs.

This article has two main sections, “What I did during my learning period” and “What I did during my job search”. I encourage you to read both sections, but if you only want to know the strategies I used that are strictly related to my job search, you can skip the first section.

What I did during my learning period

Photo by Ferenc Almasi on Unsplash

Before I tell you what I did, I must mention that I opted by studying in a coding bootcamp as a part-time student. If you want to know why I decided to study Software Engineering, read this article I wrote in May 2021. I did not pursue a Computer Science degree because I already have a degree. I wasn’t ready to commit to many years of study for another degree.

Alright! Now let’s get to the point. The seven things I did during my learning period were:

1. Study and practise at least 25-30 hours a week if you’re a part-time student or 50–60 hours a week if you’re a full-timer.

Coding is not easy, especially if you have never coded before. Coding is something you cannot master if you’re not committed to it. I spent 25–30 study hours a week as a part-time student during my learning journey. If you’re a full-time student, double it up.

As a part-time student, in 10 months, I learned JavaScript, React, Redux, Bootstrap, Material UI, Semantic UI, Ruby, Ruby on Rails, RSpec, SQL, AWS S3, Git, among others. I won’t say I have a deep knowledge of each, but it was enough to land my first job as a Software Engineer.

2. Practise, practise and practise!

It’s not enough to read the documentation or follow a tutorial or code-along. You must practise what you have learned. I realised that practice is the key to being able to master new programming concepts. If, for example, you’re learning for loops, read the theory about it, follow a tutorial or code-along and then do some exercises about for loops.

3. Even if you don’t understand the whole theory, start doing projects as soon as possible.

I realised that it’s not a must to know everything before you start to build an app. In most cases, just knowing the essentials is enough. I promise. You’ll learn way more from your projects than the other way around.

What I suggest is to follow the tutorials, code-along and practise. If you don’t understand the whole thing, skip it and go to the next topic. In many cases, things start to click later, and even if they don’t, you’ll come back to all of them when you begin to work on your project. I guarantee that projects are the ultimate source of learning.

4. Document your projects and code with meaningful names

This is probably not the most relevant aspect during your learning journey but becomes highly relevant when looking for jobs. I encourage you to document your projects and code with meaningful names so that it becomes a habit from now. Your commit history is also essential; give decent details of your changes each time you commit your code.

I didn’t pay much attention to this during the beginning of my learning period, and I changed my approach thanks to my mentor’s advice.

5. For each project you’ve done, write an article

In my opinion, writing an article will help you if you want to build some presence on social media and the Internet in general. Up to this moment, if I search my full name on Google, the first found result is my LinkedIn profile, and the second is my Medium profile. Recruiters interested in your profile might look for you on the Internet in the future. Seeing that you took your time to write articles about your learning journey is probably a positive thing. These are the articles I have published so far.

6. Keep yourself motivated

Sometimes it’s hard to keep up with your studies. Everyone has their own problems, and committing to many study hours every week can be daunting. After I learned JavaScript and the React library, I was in a moment when I needed a break. Breaks are not bad as long as you don’t lose track of your goals, but these can sometimes lead to procrastination.

I found a very interesting hashtag called #100DaysOfCode. They want you to tweet what you have coded (not just learned) each day for 100 days, allowing you to have a day off every two weeks. They have a community that supports each other, and committing to #100DaysOfCode can avoid procrastination as there will be others waiting to see what you did during the day.

If you’re studying independently, I encourage you to find people who are also learning the same tech stack. Having a peer behind you and motivating you to go on can help.

Another activity I did (and still do) was listening to podcasts of people who turned into Software Developers after working in other industries. They constantly remind you that becoming a Software Developer is possible despite your age or previous background. I recommend LearnToCodeWithMe and CodeNewbie podcasts.

7. Find a mentor

One advantage of studying from an education provider is that you’ll be assigned a mentor or instructor. They’ll not only help you when you’re stuck, but they’ll also provide you with real-world insights that will be helpful for your future career as a Software Engineer. Pay attention to how they think and approach when solving coding problems. It helped me a lot during my learning process.

Additionally, they can help you with your job search. I found a mentor on ADPList after I finished my course, who provided me with some of the tips I will mention in the next section, “What I did during my job search”.

What I did during my job search

I’ll share what I did to land a job after receiving two job offers in one month of search. I used LinkedIn for almost all of my job applications.

Photo by Souvik Banerjee on Unsplash

1. Portfolio website

The first thing I did was create a portfolio website. This portfolio website doesn’t have to be fancy. HTML and CSS are the only tech stack I used to build mine. You can help yourself with templates out there.

The portfolio website should have an intro about you, contact information, links to your projects and source code with tech stacks, your study and work experience, including a link to download your resume, and links to articles you might have written before. Check out my portfolio website.

2. Resume

I assume you don’t have much experience, so your resume should have only one page. You should include an intro to yourself, the technologies you know, your education and work experience focusing on achievements if anything not related to Software Engineering. I encourage you to use colours on it as it might catch the recruiter’s attention. I suggest looking at Canva for resumes. I think the boring black and white classic resume will not stand out.

3. LinkedIn profile

For your LinkedIn profile, I strongly recommend Danny Thompson’s LinkedIn Series. You definitely have to watch those videos.

The LinkedIn videos give you the following recommendations:

  • You should include a professional-looking profile picture. You don’t have to wear a suit, but the background should be plain. Include a banner as well.
  • The headline should include the job title you want and the principal technologies you know, separated by pipe keywords. For example, “Software Engineer|JavaScript|React|Ruby|Rails.”
  • Your description shouldn’t be too long or too short. It should be easy to read by recruiters. So avoid using long paragraphs and try to get to the point. In there, feel free to include more technologies you know.
  • The featured section must include your portfolio website and projects with preview images. Danny suggests not to have your resume in the featured section.
  • If the education and work history sections are not related to Software Engineering, they should focus on achievements. The work history achievements should be quantifiable. E.g. contributed to an increase in the company sales by 40%.
  • If you’ve been a volunteer, include it.
  • Try to get recommendations from your connections if possible.
  • Try to pass the LinkedIn assessments related to your tech stack. In my case, I did the JavaScript, React and Ruby on Rails assessments.

Now that you have your portfolio website, Resume and LinkedIn profile ready to go. I’ll tell you the strategies I used when I was applying for jobs, which are included in the remaining aspects.

4. Cover Letter

Your cover letter should be personalised and include:

  • Something that you like from the company you’re applying to.
  • How your soft and hard skills can benefit the company.
  • Why you are the best candidate. What added values you can bring that others can’t.
  • Include your LinkedIn and portfolio website.

That process is tedious but needs to be done if you don’t want to apply for 100 jobs and not receive any responses because of being too generic.

I realised that LinkedIn job application submission forms usually don’t ask for a cover letter. I recommend that you include your resume and cover letter in a single file if that’s the case.

5. LinkedIn premium

Many people might have a different opinion about this, but in my case, having LinkedIn premium was the most important factor to get recruiters to come back to me, and I’ll explain why.

LinkedIn premium allows you to send a limited amount of InMail messages depending on your package. InMail messages is a premium feature that will enable you to message other LinkedIn members without connecting. That is very powerful as you can contact the recruiters. Keep in mind that you have a limited number of InMails, so make sure you reach those you like the most.

Some job descriptions on LinkedIn include the recruiter’s LinkedIn profile. What I did was, after I apply for a job offer that provides the recruiter’s profile, I’d send them an InMail message. I’d let them know that I applied for the offered job position in that message. I’d give them a quick intro of myself, why I’m interested and a link to my portfolio website.

This is an example of how I reached out to one recruiter:

Reaching out to a recruiter through InMail after having applied for the advertised job

Out of 7 recruiters that I contacted via InMail, 5 came back to me by message. Out of those 5 that came back to me by message, 3 gave me a call, and out of those 3 that gave me a call, 2 ended up sending a job offer. I don’t think this is a matter of coincidence.

The following is an example of a recruiter that came back to me:

Recruiter coming back to me after presenting myself through InMail

6. Screening process

From podcasts that I listened to, I learned that you should be energetic, positive and confident if you receive a screening interview. Some of these calls are just by phone so that the recruiter can judge you from your words and tone. I know you’re interested in the job position, but you have to ensure the interviewer receives that interest from you.

Successfully passing the screening process and being invited to the coding challenge

7. Coding Challenge

I had to solve a coding challenge after the screening process in the two companies I received a job offer. Coding challenges can take some hours or days, depending on the complexity of the tasks. There are some key aspects I had to consider in my code as per the challenge requirements:

  • Readability: your code should be easy to read. Use meaningful names and help yourself with tools like ESLint and prettier. Comment your code by briefly explaining what it does.
  • Scalability: if there are new requirements on the project, how much of the code should be changed to adapt to those requirements. The lesser the lines required, the more scalable the code is.
  • Documentation: your code should be well documented. Make sure you include instructions, context, architectural elements and decisions, trade-offs, assumptions made, etc. This article was helpful for me to have an idea of what to include in the documentation.
  • Commit history: it should be thorough. It should help the reader understand the development of your project.

8. Technical Interview

The company I ended up accepting the job offer requested a technical interview a couple of days after successfully submitting the coding challenge. The interview was divided into two sections. The first section was a pairing session consisting of a live extension exercise. The second section was a Technical Q&A where we discussed Agile development, Continuous Deployment, and Software Quality.

From the feedback I received after the technical interview, I firmly suggest constantly telling them what you’re going to do. The interviewers want to know how you think, more than if you end up solving the live extension or not. Even if you need a moment to think, let them know that. Don’t make the interviewers try to figure out what you’re doing.

9. Final Interview

I had a final interview with the CEO and Tech leaders from the companies that sent me a job offer. It mainly consisted of getting to know each other and some questions about working in teams, Agile development, and dealing with challenges.

Invitation to the final interview

The great news!

On 03 March 2022, I received two job offers in a 2-hour timespan:

Offer 1:

The first offer I received on 03 March 2022 at 3:50 pm

Offer 2:

The second offer I received on 03 March 2022 at 5:59 pm

I chose the second one as it was more aligned with my career goals.

One year ago, I barely had an idea of what coding consisted of, and now I’m about to start my first job as a Software Engineer!

I hope this article brings some value to your studies and job search, and I wish you the best of luck! Please hit the clap button 👏 so others might stumble upon this article!


How I landed my first job as a Software Engineer without a CS Degree in one month was originally published in Level Up Coding on Medium, where people are continuing the conversation by highlighting and responding to this story.


Print Share Comment Cite Upload Translate
APA
Harold Torres Marino | Sciencx (2024-03-29T09:05:59+00:00) » How I landed my first job as a Software Engineer without a CS Degree in one month. Retrieved from https://www.scien.cx/2022/04/06/how-i-landed-my-first-job-as-a-software-engineer-without-a-cs-degree-in-one-month/.
MLA
" » How I landed my first job as a Software Engineer without a CS Degree in one month." Harold Torres Marino | Sciencx - Wednesday April 6, 2022, https://www.scien.cx/2022/04/06/how-i-landed-my-first-job-as-a-software-engineer-without-a-cs-degree-in-one-month/
HARVARD
Harold Torres Marino | Sciencx Wednesday April 6, 2022 » How I landed my first job as a Software Engineer without a CS Degree in one month., viewed 2024-03-29T09:05:59+00:00,<https://www.scien.cx/2022/04/06/how-i-landed-my-first-job-as-a-software-engineer-without-a-cs-degree-in-one-month/>
VANCOUVER
Harold Torres Marino | Sciencx - » How I landed my first job as a Software Engineer without a CS Degree in one month. [Internet]. [Accessed 2024-03-29T09:05:59+00:00]. Available from: https://www.scien.cx/2022/04/06/how-i-landed-my-first-job-as-a-software-engineer-without-a-cs-degree-in-one-month/
CHICAGO
" » How I landed my first job as a Software Engineer without a CS Degree in one month." Harold Torres Marino | Sciencx - Accessed 2024-03-29T09:05:59+00:00. https://www.scien.cx/2022/04/06/how-i-landed-my-first-job-as-a-software-engineer-without-a-cs-degree-in-one-month/
IEEE
" » How I landed my first job as a Software Engineer without a CS Degree in one month." Harold Torres Marino | Sciencx [Online]. Available: https://www.scien.cx/2022/04/06/how-i-landed-my-first-job-as-a-software-engineer-without-a-cs-degree-in-one-month/. [Accessed: 2024-03-29T09:05:59+00:00]
rf:citation
» How I landed my first job as a Software Engineer without a CS Degree in one month | Harold Torres Marino | Sciencx | https://www.scien.cx/2022/04/06/how-i-landed-my-first-job-as-a-software-engineer-without-a-cs-degree-in-one-month/ | 2024-03-29T09:05:59+00:00
https://github.com/addpipe/simple-recorderjs-demo