Practice
Data Structures and Algorithms
Machine Coding Round (LLD)
System Design & Architecture (HLD)
Frontend UI Machine Coding
Resources
Career Advice and Roadmaps
Data Structures and Algorithms
Machine Coding Round (LLD)
System Design & Architecture (HLD)
Backend Development
Frontend Development
Project Ideas for Software Developers
Core Computer Science
Companies
SDE Jobs & Internships
Interview Questions
Compare Companies
IDE
Online IDE
Collaborative IDE

Get a Software Engineering Job/Internship - Ultimate Guide

Gaurav Chandak
Gaurav Chandak
Disclaimer: This article was written few years ago and may no longer be relevant as software engineering has changed a lot in the last few years. This is what may be more relevant now: Future of Software Engineering - Gaurav Chandak

This article was originally published on GitHub as Get a Software Engineering Job/Internship - Ultimate Guide

Let's divide the job search process into 4 stages:

  • Searching for and applying to jobs
  • Getting your resume shortlisted
  • Clearing interviews
  • Getting an offer letter

Let's look at what do you need to do at each of these stages. Note that each of these require significant work that needs to be done way before the job search process starts. Details about those are also mentioned below.

Searching for and applying to jobs

  • How to apply for off-campus placements (jobs/internships)?
  • How to get job referrals on LinkedIn?
  • How to get a recruiter's attention on LinkedIn?

Getting your resume shortlisted

  • Since most job openings receive 100s to 1000s of applications, it is not possible for a company to interview everyone who applies.
  • To reduce the number of interviews, Recruiters and Hiring Managers shortlist only those resumes which stand out or matches the most to the job roles.
  • Having common basic projects on your resume or having a 3* rating on CodeChef is still better than having nothing related to programming. But note that these things won't help you stand out as 50% of the applicants would have the same thing.
  • Few things that can help your resume stand out:
    • Good ranks in programming contests
    • Demoeable projects that actually solve a problem and whose code is not easily available on the internet
    • Decent open-source contribution
    • Good research work
    • Being from a Tier-1 college. Not much within your control.
    • Having worked at a big tech company previously. Not applicable for freshers.
  • Make sure that your resume follows the best practices: Resume best practices for product-based companies
  • Confused, what to do?: Competitive Programming or Open Source Contribution?

Clearing interviews

Note that 2 things are extremely important here:

  • Learning: You need to learn all the major concepts that is expected of you as a programmer/developer
  • Practice: You need to focus a lot on practicing to build expertise on the concepts that you learn

Learn how to code & build strong foundations

  • Intro To Programming in C/C++
  • Which programming languages/technologies should I learn?
  • SDE Kickstart | Become a solid programmer | Paid Mentorship & Learning Program

Interview Prep Roadmap & Tips

  • SDE I Interview Preparation: The Ultimate Guide
  • How to crack interviews at product-based companies?

Focus on Problem Solving, Data Structures & Algorithms (Most Important)

  • What is a Problem Solving, Data Structures & Algorithms Interview Round?
  • How to prepare for the Problem Solving, Data Structures & Algorithms Interview Round?
  • Is competitive programming necessary to crack interviews?
  • Common Mistakes to Avoid in Competitive Programming

Prepare for Machine Coding Round

  • What is a Machine Coding Round?
  • How to prepare for machine coding round?
  • How to practice for machine coding round?

Prepare for Behavioral Round

  • Ace the Behavioral Interview | STAR Technique

Prepare for System Design [For senior roles | 2+ years of experience]

  • Best resources for System Design
  • System Design Primer

During the interview

  • How to ace the Problem Solving, Data Structures & Algorithms Round? | DOs & DONTs
  • How to ace the Machine Coding Round? | Step-by-Step Guide

Getting an offer letter

  • Everything about an offer letter
  • Compare salary and levels/roles across top product-based companies
  • Salary Negotiation Guide: Why and How to do it
  • Got the job, now what?
---

If you find this guide useful, please star it on GitHub and share it on social media, whatsapp and any other programming community.

You can follow us on our social media handles for updates:

  • WhatsApp: Free Newsletter on Programming, Interview Prep and Job Search [Highly recommended]
  • LinkedIn: Gaurav, Sagar, workat.tech
  • Discord: Community to have discussion, ask doubts, find resources and be a part of the community
  • Instagram: Quizzes, Challenges, Memes, etc on Programming, Interview Prep and Job Search
  • Facebook: Community Group, Page
  • Twitter: workat_tech, Gaurav, Sagar
---

Programming communities you should join:

  • workat.tech discord community
  • SDE Skills discord community
2
Gaurav Chandak
Gaurav Chandak
Gaurav is the co-founder of workat.tech and has previously worked at Flipkart and Microsoft. He intends to actively contribute to the future of education through workat.tech.
Related Content
SDE 1 Interview Preparation Roadmap for Product-Based Companies
How to crack interviews at top product-based companies? | Skills required for product-based companies
Resume best practices for product-based companies | Latest Tips
SDE Bootcamp - Become a software engineer at a product-based company
Practice Data Structures & Algorithms
Learning Resources
Interview Prep Resources
Blog
  • Career Advice and Roadmaps
  • Data Structures & Algorithms
  • Machine Coding Round (LLD)
  • System Design & Architecture
  • Backend Development
  • Frontend Development
  • Awesome Project Ideas
  • Core Computer Science
Practice Questions
  • Machine Coding (LLD) Questions
  • System Design (HLD) Questions
  • Topic-wise DSA Questions
  • Company-wise DSA Questions
  • DSA Sheets (Curated Lists)
  • JavaScript Interview Questions
  • Frontend UI Machine Coding Questions
Online Compilers (IDE)
  • Online Java Compiler
  • Online C++ Compiler
  • Online C Compiler
  • Online Python Compiler
  • Online JavaScript Compiler
Topic-wise Problems
  • Dynamic Programming Interview Questions
  • Linked List Interview Questions
  • Graph Interview Questions
  • Backtracking Interview Questions
  • Arrays Interview Questions
  • Trees Interview Questions
Company-wise Problems
  • Amazon Interview Questions
  • Microsoft Interview Questions
  • Google Interview Questions
  • Flipkart Interview Questions
  • Adobe Interview Questions
  • Facebook Interview Questions
DSA Sheets (Curated Lists)
  • Top Interview Questions
  • FAANG Interview Questions
  • Most Asked Interview Questions
  • 6 month DSA Practice Sheet
  • 3 month DSA Practice Sheet
  • Last minute DSA Practice Sheet