How I Landed My First Job, And How You Can!

How I Landed My First Job, And How You Can!

A story & guideline of dedication, discipline, and dreams that turned into reality.

It all starts from a dream. Dream to achieve something, become something, and conquer something. I dream a lot. And I dream big!

This blog is about how I landed my first software engineering job and how you can. It has all the steps I took towards my dreams and lessons for you. In the end, I also have a section for all the learning resources as well.

I always wanted to write this guide for all the great and talented minds out there who don’t have guidance about building careers in tech. These steps are not just for me but a complete bundle for building a successful tech career.

When I was a kid, I used to play games on my Pentium 4 with 512 MB of RAM, and I used to imagine myself building those games. I had no idea about software engineering because, at that time, I didn’t have access to the internet. But my curiosity was touching the sky. πŸ’₯

When I graduated from the school with a Biological Science background (I never wanted to do it.), I decided to move my education domain from Bio to Computer Science. I was admitted to college and wrote my first ever computer program in 2015.

#include <stdio.h>

void main()
{ 
    printf("Hi, My name is Rehan Sattar");
}

When I was introduced to programming and computer science, I loved it. I decided to move forward with my studies as a computer science student and learn programming and software engineering.

122-work-from-home-2.png

And the Journey towards the dream began from this point! πŸš€

⚑ Start Of Learning Journey

In 2016, I got admission to the NED University Of Engineering And Technology Pakistan, a leading university in the engineering sector of Pakistan. I got enrolled in the Bachelor Of Computer Science And Information Technology.

109-map-location.png

After getting into university, I had many domains in front of me in the field of computer science, such as Web & Software Development, Data Science, Artificial Intelligence, Machine Learning, and so on.

πŸš€ Pickining The Domain

At this stage, I had no idea which domain I would choose for my career progression. Until I attended a seminar in November 2016 by my first ever mentor, Sir Zia Khan, he gave us tremendous insights about general web development and software development and how we can grow in this domain.

At the end of His seminar, I decided to move forward with the Web & Mobile Development as my main career domain.

✍️ Lessons

  • Direction is the most important element in your career. If you don't know what you want to do, you will end up creating a mess.

  • Do some research about all the domains related to your career. And pick any one of them and start working on it.

πŸš€ Practicing & Learning Plan

I enrolled in a Web and Mobile Development course alongside my university. The course was for about one year, only on weekends (so that my university studies are not affected), and the curriculum was:

  • HTML, CSS & Bootstrap
  • JavaScript
  • Advance JavaScript
  • React
  • React Native
  • Node
  • Express
  • MongoDB
  • MERN Stack Web Project
  • MERN Stack Mobile Project
  • Certification

112-installing.png

✍️ Lessons

  • For quality results, planning is important. It's an amazing practice that you can follow throughout your career.

  • Planning helps us to be accountable. To take small measurable steps towards the end goal.

  • Sit down, take out a notebook or a pen, and start brainstorming. Make a schedule and a plan for your learning.

πŸš€ Setting Up The Goals

Most people think that they already have goals. But what they really have are hopes and wishes. However, hope is not a strategy for success, and a wish has been defined as a β€œgoal with no energy behind it.”

At this stage, I wanted to set the goals and expectations for my next two years’ journey as a learner. I wanted to practice as much as possible and master web development.

I created a plan for my next two years of learning and practice. You can think, why two years? Why not six months or a year?

Reasons:

  • I was a university student, And I didn’t want to overburden myself with many studies. I wanted to enjoy my university life too.

  • I was learning from a physical institute, not an online course. Therefore the pace was not managed for me. However, I don’t recommend anyone to go to physical boot camps until and unless online learning is not working for them.

  • I wanted to practice consistency and discipline while learning and growing. And these things take time.

It would be best if you plan your learning correctly. You can make an outline or small estimations about your learning goals and work on them.

✍️ Lessons

  • Set small and meaningful goals.
  • Goals Examples:
    • In this week, I'll complete my blog.
    • In this month, I'll complete the nodejs course.
  • Don't overwhelm yourself too much. Try to make yourself consistent.

⚑ Going Little Extra

While learning and practicing, I wanted exposure. Exposure to the world of software engineering and web development. I wanted to explore different local & international tech companies and communities.

✍️ Lessons

  • Do something extra that can add a cherry on top of your career sweet.

  • This is not necessary, but a huge plus point for your portfolio.

πŸš€ Extra Activities

To get the exposure, I involved myself in extra activities such as volunteering at university events, helping the team in building the websites and pages for events, and much more. I was trying my best to know the potential of this domain by experiencing it at a lower level.

✍️ Lessons

  • Search for any volunteer work, that you can easily do without getting burned out.

  • Let people know about you, and your work.

πŸš€ Participation In Tech Events & Seminars

The second and most effective way to gain exposure is to attend tech events and participate in them. I was crazy about tech events and I used to attend almost every event in my city related to my domain.

I also started participating in hackathons and other tech events. I never won one, but it was a great source of getting exposure to the world of tech.

✍️ Lessons

  • Attend online/onsite tech events. Network with people. Know the extraordinary people.

⚑ Personal Branding

When I could build small to medium-scale projects, I decided to market myself on different social platforms. The reason behind this marketing was to be noticed by the companies and recruiters.

At that time, I was unaware of the term Personal Branding although I was doing one. When people like your work and projects and get a sense of what you can offer, they might reach out to you to provide opportunities with freelancing gigs. This can be valuable work experience as you look for jobs.

✍️ Lessons

  • In Urdu, we have an adage Jo dikhta hay, wo bikta hay! Means what people buy is what people see.

  • If you are not letting companies and recruiters see you, how they will buy you? πŸ€—

πŸš€ Sharing What You Know

The easiest way to market myself was to share what I knew. I started a youtube channel where I created small videos and courses on web development. This was a significant hit, and people started noticing me and knowing me as a web developer.

Later, I started writing small posts about different topics in web developments on Facebook (I wish I could have done this over LinkedIn). Sharing what you know is an easy but impactful way to market yourself.

✍️ Lessons

  • Make small learning posts on LinkedIn, Facebook & Twitter.
  • Share tips, tricks and any sort of valuable content on these platforms and grow your audience.

⚑ Networking

Networking is nothing but an exchange of information. When you meet people, you share ideas & experiences. And learning from others' experiences is a powerful way to enhance your decision-making processes.

day29-selfie-boy (1).png

Networking also enables you to build confidence and practice communication in public. Communication is an essential skill, and I was lacking in it. I wanted to be a good communicator with a positive attitude and confidence.

✍️ Lessons

  • Networking is important to anyone who wants to grow professionally as well as personally.

πŸš€ Social Platforms

I started sharing my ideas and tips on social media. I was sharing my solutions, problems, and recommendations about web development. When I had immediate feedback, both positive and constructive, I was making progress towards betterment in terms of communication and sharing ideas in general.

This helped me soo much in gaining the confidence to talk. To share the knowledge that I have. Getting feedback is an excellent way to become a better version of yourself.

✍️ Lessons

  • The big social media sites like LinkedIn, Facebook, Instagram, and Twitter are very good resources for networking.

  • Share your work, and get feedback. Make progress.

πŸš€ Meeting / Following The Extra Ordinary

Need some motivation? Meet the extraordinary people in your domain!

Talking to the experts has helped me stay motivated on the roadmap to becoming a software engineer. When you are constantly learning and not making any earning progress, there is a huge chance that, at some point, you might get frustrated or demoralized.

There are two effective ways to cater to this situation:

  1. Mentorship
  2. Meeting Extraordinary

I couldn’t afford any mentorship. Therefore, I decided to meet and follow the great minds in my domain. I was constantly following them on social media, attending their events, and trying to get knowledge as much as possible.

I was automatically motivated to do the same when I had many examples of great engineers making money, sharing knowledge, and creating impact.

✍️ Lessons

  • If you have the chance to get a mentor for yourself, do it.
  • If you don't have a mentor, follow quality mentors online. And try to work on their advice.
  • This is a long-term investment. You always need suggestions and advice for seniors throughout their careers.

⚑ Community Work

After observing one common trait among the extraordinary engineers, most were doing community work. I decided to do the same.

I become part of two communities:

  • React Karachi
  • DevnCode

Both of these communities have helped me soo much in gaining knowledge about technical event organization, knowledge sharing, and community building.

✍️ Lessons

  • Try to do community work in any form possible.
  • Some of the community work examples:
    • Open Source
    • Stack Overflow
    • Writing Articles
    • Tech Talks
    • Event Organization & Volunteering

πŸš€ Landing My First Tech Talk

I always wanted to become a technical speaker. I used to see extraordinary people speaking at different tech events and wanted to do the same. This was not for a job search but for an internal passion for sharing knowledge.

Finally, the day arrived, and I got to speak at the local React Karachi meetup. I delivered a talk on React Component Patterns, and the community loved it.

From this point to the present date, I have spoken at seven technical events, conducted two workshops, and two podcasts πŸ˜ƒ πŸš€


⚑ Getting The Interview Call

After the talk, I was highly noticed in the local JavaScript community, and one of the community leaders of DevnCode contacted me for an open role of Junior JavaScript Developer in his workplace.

I immediately applied and got the interview call.

✍️ Lessons

  • I got the call, but there is a huge chance you don't get it. In this case, you have to apply.
  • Go to youtube, search for How to search jobs via LinkedIn & Other Social Platforms and start applying!
  • Prepare for interviews along the way :D

πŸš€ Process

The interview was divided into four stages.

  1. Phone screening
  2. HR Round + Culture Fit
  3. Technical Interview
  4. CTO Interview

πŸš€ Preperation

I divided the interview preparation into three steps:

  1. Revision of Basics Of Computer Science.
  2. Web Development Interview Preparation.
  3. Behavioral Interview Preparation.

I revised all computer science fundamentals like programming concepts, data structures & algorithms, object-oriented programming, and database management system.

Then I revised all the web development knowledge, including HTML, CSS, JavaScript, React & Node.

As the last step, I prepared myself for a behavioral interview by practicing some questions online.

✍️ Lessons

  • Do not overwhelm yourself in interview preparation.
  • Try to remain consistent throughout your job hunt, and practice regularly.
  • Pick any roadmap, and practice according to it.
  • Practice on Leetcode, hacker rank, and other competitive coding platforms.
  • Again, take it easy and don't overwhelm.

πŸš€ Attitude Towards First Interview

This was my first ever professional interview; I was nervous but excited at the same time. All my efforts were paying off now; it was the time for me to give my 100% regardless of the outcomes because I knew I had built powerful skills, and now I was ready for the market.

I tried to remain calm and positive during my first interview. I decided that I’ll be honest with the interviewer. And most importantly, whether I fail or pass, I’ll learn something.

✍️ Lessons

  • Be who you are. Honesty plays a big role in interviews.
  • If you don't know the answer, don't try to fake it. Just tell the interviewer humbly that I'm sorry, I don't know about this.
  • It's completely normal to feel nervous during interviews.

⚑ Interview Process & Job Offer

All the interview rounds went very well, and I got an offer from the company as a Junior Software Development Associate 😍

It was a dream coming true. All the efforts and struggle paid off. I immediately told my family and friends about the job, and they all were happy. We all celebrated my success. And all of this happened in my 5th semester in 2019 (Still two years from graduation). Therefore, my teachers also appreciated me.

Alhamdulillah! (praise be to God) 🧑


⚑ Conclusion

This article was not a story, but a whole Systematic Approach for you to land your first job and build long-term growing habits.

In a nutshell:

  1. Find your domain
  2. Set Goals & Learning Plans
  3. Learn Learn Learn.
  4. Share and Brand Yourself.
  5. Do community Work.
  6. Make use of social platforms for job applications.
  7. Prepare For Interviews.
  8. GO GET YOUR DREAMS!! πŸ’₯⚑

Learning Resources (Full Stack Web Developer)


That's all folks! 🀝

πŸ‘‰ Follow me: Github Twitter LinkedIn Youtube

Β