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

Tips on how to get a PPO from Internship to Full-Time Employee

Radhika Chandak
Radhika 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

So many people on LinkedIn and YouTube talk about how they bagged an internship at FAANG. A lot of websites/channels try to help you get an internship by providing everything from tips to full-fledged preparation assistance.

I am not writing this to do any of that. I am going to talk about what you should do after getting an internship. I will provide tips on how to get a PPO and convert from an intern to a full-time employee.

An internship is all about working on projects with an impact on a lot of people and a potential impact on the business of the company. It gives you a very raw and hands-on learning experience. Working on systems that have a huge impact on people can be fascinating for many.

For most of the students, the main purpose of getting an internship is to become a full-time employee (FTE) at the company by getting a pre-placement offer (PPO). Getting a PPO is based on a lot of factors like knowledge, talent, overall personality, teamwork to name a few. This article will cover some basic tips that will help you get one step closer to conversion (PPO).

Before the internship

Before the internship begins, there are a few things that you can work on to have an edge during the internship.

Product

Get a basic idea of the company's product. If there is a public website/app, you should go and play around with it. If not, just google and read about what the company does.

For bigger companies with multiple teams and products, you may also want to talk to the hiring manager to get a better idea of the specific product that you would be working on. This will help you feel less overwhelmed when you join.

Tech stack

You will be asked to learn the technologies used by the team/company during the initial weeks of the internship. You can save that time by asking about the tech stack from the recruiter or the hiring manager and brush up on it before joining.

Apart from faster onboarding, it will also leave a good impression on the team. It will also showcase that you are curious and have a learning mindset.

Git

Almost all tech companies use git as a version control system. It is an essential tool that every developer should know how to use. Learning the basic commands should be pretty easy. Make sure to be familiar with Git before joining.

During the internship

During the internship, you are supposed to learn and showcase the best of your abilities. There are a few things that will help you perform better as an intern.

Responsibility

Do not consider yourself as an intern. Work as if you are already a full-time employee. Learn from and mimic your teammates. If you can showcase that you are already working like a full-time employee, it would make the PPO decision much easier for your manager.

Attentiveness

Before you get your project, you will be mostly given a basic idea of the product you will be working on. You should pay attention during those sessions. Getting a good grasp of the product is very important to work on it. Do not be afraid of asking questions during such sessions. Seeking clarity is a skill that might take you closer to your goal.

Clean and well-designed code

Write clean and well-designed code. Something as simple as using meaningful variable names instead of single-letter variable names will go a long way. Creating proper classes and functions will make your code better.

At most companies, any change is reviewed before it can be merged into production code. During these reviews, you might get certain comments on how you can improve your code. Learn from those comments and do not repeat your mistakes. Making the same mistake multiple times might be a red flag.

Doubts

While working, you will have doubts. Do not hesitate to ask doubts but make sure that you do your research before that. Google is your friend. Learn how to use it well to your advantage. At many companies, you would also have access to internal documentation which might help you with your doubts.

Do not expect to be spoon-fed. The role of a mentor is to guide you in the right direction. Do not go with your doubt without proper research. Document it, if possible.

Sometimes when you run into problems, you will turn to the internet for answers. If you find a solution online, do not copy-paste the code blindly. Rather, try to understand how the piece of code is solving your problem before pasting it.

Other tips based on my experience

Apart from these technical internship tips, here are some tips that can be used in any kind of internship.

Use a good note-taking app

While working you would come across a lot of new things. Maintaining all your learnings in a note-taking app will help you save a lot of time. During my internship, I didn't take notes in the beginning and it became really difficult to look for things after a while.

Keep a note of all the tasks that you're doing however small it is. Many companies ask an intern to document all the work done during the internship. Towards the end of the internship, you will most likely forget the smaller tasks. Many of which might be meaningful enough to be added to your doc.

Use your personal email address for the note-taking app so that you can have all the notes even after the internship is over.

Continuous Feedback

Try to ask for regular feedback from your mentor and/or manager. If possible, set up a bi-weekly 1-on-1 meeting so that you can get regular feedback.

Consider any feedback as an opportunity to learn and grow. Make sure to work on the feedback. It should reflect in your work. Working on the feedback and improving as an employee can have a very positive impression on your mentor/manager.

Soft Skills

  • Be a team player - This is a quality that every company looks for in a candidate.
  • Network and learn - Try to interact and learn from other members of your team/company who you might not be working with directly.
  • Do not mention that "I have a doubt" or "I need help". Say "I want to discuss". The words you use can make or break things.
  • Try to participate in different team-building activities to create a better bond with the team.
  • Do not be afraid of sharing your opinion on things. Make sure not to over-step when you are not sure or don't have data to validate your reasoning.
  • Stay confident - Avoid self-loathing in front of your colleagues. If you're not confident in yourself, why would your colleagues or your manager feel confident in you?

I hope that this article was able to help you understand more about how to succeed as an intern. All the best for the internship!

-----

Join our discord community to have healthy discussions on programming, interviews and job search.

Further Reading:

  • Got the job, now what? by Chirag Jain, SWE III at Google, Ex-Uber, Ex-Directi
  • Level/Role and Salary Comparison
  • Everything about your offer letter
  • Salary Negotiation Guide: Why and How to do it to get a better deal and earn more
Radhika Chandak
Radhika Chandak
SDE 2 at Amazon; Past: SDE 1 at Zenefits
Related Content
Got the job, now what? | Growing in your software development career
Everything about your offer letter (CTC, Base Salary, Bonus, Stocks, etc)
Salary Negotiation Guide: Why and How to do it to get a better deal and earn more
SDE Bootcamp - Become a software engineer at a product-based company
Practice Data Structures & Algorithms
Learning Resources
Interview Prep Resources
Community
Join our community
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