Anvil Career
Back to Blog
CAREER PLANNING

How to Prepare for Your First Technical Internship

•13 min read

You cleared the interview. Now comes the part nobody prepares you for: the first two weeks, when you have a laptop, a login, and no idea what anyone is talking about. Most Indian engineering students walk into their first technical internship with zero corporate reference points — no older sibling who has done it, no formal onboarding training, and a college syllabus that stopped at data structures. This playbook covers the unglamorous specifics: what to do 1–2 weeks before Day 1, how to survive week one, how to read an unfamiliar codebase without drowning, Git and PR etiquette that keeps reviewers on your side, and how to convert the internship into a full-time offer. None of it requires you to already be an expert. It requires you to be systematic.

What should you do 1–2 weeks before your technical internship starts?

Start with the offer letter, not the code. Read it line by line: stipend amount and payment date, internship duration, whether the role is remote, hybrid, or on-site, and — critically — whether a PPO (pre-placement offer) is mentioned as a possibility. If the letter is vague on conversion, that is not a red flag by itself; many companies decide conversion based on headcount later. But you should know the terms before Day 1 so you can ask informed questions in week one.

Then install the toolchain. If the job description mentioned Java, install the JDK and an IDE. If it mentioned Docker, install Docker Desktop and run one container locally so the first team command does not blindside you. Install Git if you have never used it — a basic commit, branch, and push cycle is a standard expectation for interns, and walking in without it wastes your first week on mechanics instead of context. If you have never built a GitHub profile, start with building a GitHub portfolio that gets noticed; the same habits apply inside a company repo.

Finally, prepare a 30-second self-introduction. Name, college, branch, what you have built or studied, and one thing you are excited to learn. Write it down. You will use it in the team channel on Day 1, in standup, and in every intro call for the next month.

Pre-joining checklist

  • Offer letter terms confirmed: stipend, duration, location, PPO clause.
  • Professional email signature set up (name, role, phone).
  • IDE, language runtime, Git, and any JD-mentioned tools installed.
  • Pre-reading, access forms, or background checks completed if HR sent them.
  • Self-introduction written and rehearsed out loud once.

What should you do in the first week of a software internship?

Week one is about access and context, not output. Your goal by Friday is to have every account you need, a rough mental map of the codebase, and one tiny change merged — even a documentation fix. That last item matters more than it sounds. Shipping something small teaches you the team's entire PR process: branch naming, commit style, review turnaround, and who approves what.

On Day 1, introduce yourself in the team channel with something specific. "Hi, I'm Priya, joining as a backend intern from NIT Trichy. I've worked with Node and Postgres. Looking forward to learning from the team." That is enough. Do not write a paragraph. Do not apologize for being new.

Keep a running notes file — plain text is fine. Every acronym, every tool name, every person's role, every repo name you hear goes in. You will hear "raise a PR against the monolith, tag the on-call, and check the staging pipeline" in your first standup and understand maybe half of it. Write the other half down and look it up later. Pretending to understand is the single most expensive mistake an intern makes, because it delays the question by three days and the blocker by a week.

FIRST-WEEK PRIORITY LEDGER

DAYPRIORITYDONE WHENSTATUS
Day 1Accounts, laptop, access, team introYou can log into email, chat, and repoUnblocks everything
Day 2Read README, architecture docs, setup guideLocal dev environment runsHigh leverage
Day 3Trace one end-to-end user flowYou can explain it in 3 sentencesContext building
Day 4Pick a docs fix or tiny bugBranch created, change madeLearning the workflow
Day 5Open your first PRReviewed and mergedProcess unlocked

How do you read an unfamiliar codebase without getting lost?

Do not try to understand the whole repository. That is the fastest route to paralysis. Instead, trace one path. Pick a single user action — login, placing an order, submitting a form — and follow it from the frontend click to the database write. Use your IDE's "find usages" and "go to definition" relentlessly. When you hit a function you do not understand, read its tests; tests are the most honest documentation in any codebase.

Start from the README and the entry point (usually main.py, index.js, or Application.java). Then open the folder structure and write one line per top-level directory describing what it seems to do. Keep this in your notes file. Within a week, you will have a map that is 70% accurate — and that is enough to start contributing.

Four-step process for reading an unfamiliar codebase READING AN UNFAMILIAR CODEBASE Trace one path instead of trying to understand the whole repository. STEP 01 Start at README Read setup, architecture, and entry point. STEP 02 Trace one flow Follow a single user action end to end. STEP 03 Read the tests Tests show expected behaviour honestly. STEP 04 Write module notes One line per folder. Keep it in your notes file. Goal: a 70% accurate map in one week — enough to contribute without breaking things.

What Git and PR etiquette do interns need to follow?

Git is not optional. Every professional software team uses version control, and your ability to follow the team's workflow is part of how you are evaluated. The rules are simple and mostly about not making life harder for reviewers.

Branch naming follows the team convention — often feature/short-description or intern-name/ticket-id. Ask your buddy what the convention is on Day 2. Commit in small chunks with messages that explain why, not just what. "Fix null check in order service" is useful. "Update code" is not.

Never force-push to a shared branch. Never merge your own PR without approval, even if the button is available. When you open a PR, write a short description: what changed, why, how you tested it, and any screenshots or logs. Reviewers are doing you a favour; make their job easy and they will review faster next time.

When you receive review comments, respond without defensiveness. "Good catch, fixed" or "I chose this approach because X — does that still hold?" are both fine. Arguing about style is not. If a comment confuses you, ask a clarifying question in the PR thread rather than guessing.

How do you ask for help without looking incompetent?

Ask specific, researched questions. The formula is: what you are trying to do, what you already tried, the exact error or blocker, and what you think the next step might be. That last part is what separates a good question from a lazy one. It shows you have thought about the problem and are not just outsourcing it.

Batch non-urgent questions. If you have four small questions, save them and ask in one message or one call rather than pinging your mentor every 20 minutes. For anything blocking your work for more than an hour, ask immediately — early flagging is a professional skill, not an admission of failure.

Use the channel your team uses. If the team lives on Slack, do not send email. If there is a dedicated #intern-help channel, use it before DMing the senior engineer. And when someone helps you, write down the answer in your notes file so you do not ask the same question twice.

Asking a well-formed question signals maturity. Asking the same question three times signals that you are not learning. The difference is your notes file.

How do you manage the "I know nothing" feeling?

Every intern feels it. The gap between college coursework and production code is real, and it is not a sign that you were the wrong hire. It is a sign that you have never seen a codebase with 200,000 lines, a CI pipeline, and a deployment process before. Nobody has, until their first job.

Separate asking a question from asking for a solution. "How does authentication work in this service?" is a question. "Can you fix this bug for me?" is asking for a solution. The first is expected. The second should be rare and only after you have genuinely tried.

Find a peer buddy — another intern or a junior engineer who joined recently. They remember what it was like and are usually happy to explain the unwritten rules. Your manager is for priorities, blockers, and feedback. Your buddy is for "what does this acronym mean" and "who do I ask about staging access." Use both, for different things.

How do you deliver your first real task well?

Break the task into a 1–2 day shippable slice. If the ticket says "add export to CSV," your first slice might be "export a hardcoded list to CSV behind a feature flag." Ship that, get feedback, then expand. Over-engineering is the most common intern mistake — you build a configurable, extensible system for a requirement that needed 40 lines.

Before coding, write a short approach note. Three sentences: what you plan to change, which files, and how you will test it. Send it to your mentor or drop it in the ticket. This catches misunderstandings before you write 300 lines in the wrong direction.

Test your own change before asking for review. Run the existing tests, add one for your new behaviour if the codebase has a test culture, and manually verify the happy path and one edge case. Then demo it clearly: show the before, the after, and how you verified it. A crisp demo does more for your reputation than a clever implementation nobody can follow.

How do you convert a technical internship into a PPO?

Conversion depends on performance, headcount, and company policy — you cannot control two of those three. What you can control is how you are perceived on the criteria that managers actually use: code quality, ownership, communication, and whether people want to work with you again.

Ask about PPO criteria in the first two weeks. Not in a demanding way — frame it as "I want to make sure I am focusing on the right things. What does a strong internship look like from your side?" Most managers will tell you. Then do those things visibly.

Request a mid-internship feedback check-in around the halfway mark. Ask two questions: what is going well, and what would make the biggest difference in the second half. Act on the answer. This single conversation has converted more internships than any amount of silent overwork.

Document your contributions as you go. A running list of merged PRs, features shipped, bugs fixed, and docs written becomes your resume bullets, your college report, and your evidence in any conversion conversation. Express interest in a full-time role before the final two weeks — not in the last three days, when decisions are already made.

PPO EVALUATION SIGNALS MANAGERS TRACK

SIGNALWHAT IT LOOKS LIKEWEIGHT
Code qualityReadable diffs, tests, no force-pushesHigh
OwnershipYou flag blockers early and finish what you startHigh
CommunicationCrisp standups, clear PR descriptionsHigh
Culture fitReviewers enjoy working with youMedium
Raw outputNumber of tickets closedMedium

What is different for tier-3 and off-campus interns?

You may be the only intern on your team. There may be no structured onboarding, no intern cohort, and no formal coordinator at your college. That means you have to build the structure yourself. Ask your manager on Day 1 who your buddy is; if there is no buddy system, ask if you can shadow a junior engineer for the first week.

Document everything for college credit. Many tier-3 colleges require an internship report, a supervisor signature, or a weekly log. Collect these as you go — a two-line entry per day is enough — because chasing signatures in the final week is miserable. The same log becomes your resume material. If you are still looking for an internship, the strategies in how to get an off-campus internship apply to the next cycle too.

If your fundamentals feel shaky — and for many tier-3 students they do — use the internship as a forcing function. The coding round practice and aptitude assessment practice on Anvil are built for exactly this gap. A data-driven assessment shows you where you actually stand against market expectations, not where your college marks suggest you stand.

Frequently asked questions

How early should I start preparing before my technical internship begins?

Start 1–2 weeks before Day 1. Confirm your offer terms, install the tools your team uses, revise the language or framework mentioned in the JD, and prepare a short self-introduction. You do not need to master the codebase before joining — that is what onboarding is for.

What if I do not know Git or the company's tech stack when I join?

This is extremely common, especially for tier-3 students. Tell your manager or buddy on Day 1 that you are new to Git or the stack and ask for a 30-minute walkthrough. Spend the first week on small, safe tasks — docs, tests, minor bug fixes — while you learn the workflow. The placement preparation timeline can help you sequence what to learn alongside the internship.

How do I ask for help without looking incompetent as an intern?

Ask specific, researched questions: state what you are trying to do, what you already tried, the exact error or blocker, and what you think the next step might be. Batch non-urgent questions and use your team's preferred channel. Asking a good question signals maturity, not weakness.

Can a technical internship convert into a full-time job or PPO?

Yes, many companies use internships as a pipeline for full-time hires, but conversion depends on performance, headcount, and company policy. Ask your manager about PPO criteria in the first two weeks, request a mid-internship feedback check-in, and express your interest in a full-time role before the final two weeks.

What should I do in the first week of my software internship?

Focus on setup and context: get all accounts and access, complete mandatory training, read the README and architecture docs, trace one end-to-end flow in the codebase, introduce yourself to the team, and ship one tiny change — even a doc fix — to learn the PR process.

THE UNGLAMOROUS TRUTH

Your internship will not be judged on how much you already know. It will be judged on how fast you turn confusion into a specific question, how cleanly you ship small things, and whether your reviewers want to work with you again. Prepare the toolchain, write everything down, ask early, and document your contributions from Day 1. That is the entire game.