Your country

Tools that support it use your country for local currency, number formats, units and paper size. Your choice is saved only in this browser.

Type a name or a two-letter code. Use the up and down arrow keys to move through the countries, Enter to choose one and Escape to close.

Tech Interview Preparation  Module 4 – Getting interviews

Applications, referrals and campus drives

Choose between careers sites, referrals, campus drives and contests, write a resume that proves a job’s stated qualifications, and ask for a referral well.

  • Beginner
  • 20 minutes
  • Examples run with Python 3.14.8 and Pyodide 314.0.7
  • By MySmartCoPilot
Free lesson, Pro answers: 20 minutes
Free: the whole lesson. With a pass: the model answers to its 2 interview questions.

What you will learn

  • Choose the ways in that fit your profile among careers sites, referrals, campus drives and contests
  • Rewrite a resume for one job so that each bullet proves a qualification the job states
  • Calculate when your next application can go in under a rolling cap
  • Ask for a referral in a way that respects the referrer’s time
  • Avoid application habits that waste limited chances

Before you start

What you’ll learn · Before you start

What you will learn

  • Choose the ways in that fit your profile among careers sites, referrals, campus drives and contests
  • Rewrite a resume for one job so that each bullet proves a qualification the job states
  • Calculate when your next application can go in under a rolling cap
  • Ask for a referral in a way that respects the referrer’s time
  • Avoid application habits that waste limited chances

Before you start

On this page

Google accepts up to three job applications from one person in any rolling 30 days, and it fills most of its openings on a rolling basis: A way of hiring in which applications are reviewed as they arrive and a role closes once it is filled, instead of waiting for a fixed deadline., until someone is hired. Chances to be read are few and come early, so where you apply and what you send decide more than how many forms you fill in. This lesson compares four ways in: an employer’s careers site, a referral: A recommendation in which someone who works at an employer puts a candidate forward, ideally with what they know first-hand about the candidate's work. from someone who works there, a drive run by a college’s placement office, and contests that some employers hold. You will rewrite a resume so that each bullet proves a qualification the job states, work out when your next application can go in, write a referral request that a busy person can act on, and drop the habits that waste chances.

Not affiliated

MySmartCoPilot is independent of every employer, institute and contest named here. Each statement about one of them comes from its own pages, listed under References; read the current page before you apply.

Four ways in, and the one that fits you

The four ways in differ in who reads your application first, what each asks of you and how many chances it gives. An employer’s own careers site is open to anyone: you choose a role, read the qualifications it states and apply on the employer’s own domain. Google’s hiring page caps this at three applications in any rolling 30 days and asks candidates to narrow their choice to jobs that truly match, while Microsoft’s careers site lets you apply to several jobs at once through its Job Cart. Applying there is also your first protection against fake jobs. The US Federal Trade Commission tells job seekers to start with safe and reliable sources and to look up the company or the person hiring them, and notes that honest employers never ask you to pay to get a job.

A referral is a recommendation from someone who works at the employer. PostHog’s public handbook spells out what it buys: “Referring someone means we’ll review them carefully. It doesn’t guarantee they’ll get an interview.” The same handbook calls a referral strong when the referrer has worked directly with the candidate and can speak to their abilities, and it counts a resume forwarded without context as insufficient. So a referral is worth asking for only from someone who knows your work.

Contests are held by some employers for students, under rules of their own. TCS CodeVita Season 14 accepts science and engineering students of any recognised institute in the world who expect to complete their course in 2027, 2028, 2029 or 2030, and it allows only C, C++, Java and Python. Its page offers a global rank certificate to top coders and says nothing about interviews, so read what a contest says it leads to before you plan around it.

Campus drives

Where an Indian college has a placement cell: The office of a college or university that runs recruitment on its campus: it registers students, schedules employers and applies the institute's placement rules., recruitment on campus runs through it, and each employer sets its eligibility in a job form that the cell circulates. IIT Kanpur’s form asks whether there is a minimum CGPA for shortlisting, whether students with backlogs may apply and which branches and programmes are eligible. Its policy adds a one-student-one-job rule: an offer takes you out of the season, the only offer of a slot must be accepted, and several offers in one slot mean choosing one at its end. Cut-offs can be written as percentages, and universities convert a CGPA by different rules: 8.2 is 82 % under Anna University’s regulations (CGPA × 10) and 77 % under JNTUH’s ((CGPA − 0.5) × 10). Use your own university’s rule, and read your cell’s policy before the season starts.

Which ways in fit you depends on three facts about you. Answer them in the table: it marks the ways in that fit and says why the others do not.

Interactive · answer and compare Which way in fits you? Answer three questions about yourself. The table marks the ways in that fit and says why the others do not.
Are you a student at an institute whose placement cell runs recruitment on campus?
Does someone who works at the employer know your work first-hand?
Are you a student in the course years that the contest you found accepts?

Answer the questions above: the table then marks what fits your case and says why the rest does not.

Four ways in to an interview, against who can use each, what it asks of you, its limits and its scam risk
Way in Who can use it What it asks of you Limits on chances Scam risk
Employer's careers site Who reads it first: the employer's recruiters or hiring team Good anyone who meets the job's stated minimum qualifications Mixed a resume rewritten for each job Mixed Google: up to three applications in any rolling 30 days Good the employer's own site: a safe, reliable source
Referral Who reads it first: a recruiter, with the referrer's note Mixed someone who works there and knows your work first-hand Mixed the job link, your resume and three lines on your fit Mixed a careful review, never a promise of an interview Good a person you already know at the employer
Campus drive Who reads it first: the employer, after the cell's eligibility filter Mixed the institute's registered students who meet the job form's rules Mixed the CGPA, backlog and branch rules the employer set Poor cell rules apply: at IIT Kanpur, one job per student Good the placement cell deals with the employer
Contest Who reads it first: a score, then the organiser Mixed students in the years it names: CodeVita Season 14 takes 2027 to 2030 Mixed its rules and languages: C, C++, Java or Python for CodeVita Mixed a rank; read what the contest page says it leads to Mixed reach it from the organiser's own site, never a forwarded link
How the answers decide
  • “Are you a student at an institute whose placement cell runs recruitment on campus?” No: rules out Campus drive. A campus drive is open only to the institute's own registered students who meet the eligibility the employer set in its job form.
  • “Does someone who works at the employer know your work first-hand?” No, or only socially: adds a caveat to Referral. Someone who has not seen your work can only pass your name on. PostHog's handbook counts resume forwarding without context as an insufficient referral.
  • “Are you a student in the course years that the contest you found accepts?” No, or not a student: rules out Contest. A contest takes only the students it names: TCS CodeVita Season 14 takes students expected to complete their course in 2027, 2028, 2029 or 2030.
  • “Are you a student at an institute whose placement cell runs recruitment on campus?” Yes: adds a caveat to Employer's careers site. Read your cell's rules before you apply off campus: IIT Kanpur's forbids it for employers visiting that year or in the two years before.

You can use two at once: the careers site for every role you choose, and a referral wherever someone knows your work. A student whose cell runs a season adds its drives, and reads its rules before applying anywhere else.

CGPA to Percentage Calculator (India) Convert a CGPA by your own university's rule before you compare it with a drive's percentage cut-off.

Checkpoint

Check: Four ways in to an interview

  1. Question 1 of 2 Which of these are true of applying through an employer's own careers site, by the pages this lesson cites? Choose every one.

    Choose every answer that is right.

    Show the answer: Question 1 of 2

    Answer:

    • You choose the role and can read the qualifications it states
    • It is a safe and reliable source, because you deal with the employer directly

    On the careers site you pick the role, read what it states and reach the employer without a middleman, which follows the FTC's advice to start with safe and reliable sources. Google's limit is three applications in any rolling 30 days, and it does not require cover letters.

  2. Question 2 of 2 Dev has worked for three years at a logistics company and finished studying long ago. Nobody at the employer he wants has seen his work. Which way in fits him best?

    Choose one answer.

    Show the answer: Question 2 of 2

    Answer: The employer's careers site, with a resume written for the role

    Two of the four ways in are closed to Dev: drives and contests are for students. A referral would help only from someone who knows his work, which he has not got, so the careers site with a resume written for the role is his way in.

Each resume starts from the job’s stated qualifications

Google’s advice on resumes is direct: keep an old resume beside you for ideas, but start each one from a blank document, written for that one job. Line your experience up with the job description, make sure you meet the minimum qualifications: The requirements a job posting says every applicant must meet. Preferred qualifications make an application stronger but are not required. and that the resume shows it, and be specific about outcomes, leaning on its formula “accomplished [X] as measured by [Y], by doing [Z].” PostHog’s handbook goes further and reads an application that was not tailored to the role as a sign that the candidate is not that excited about working there.

Here is the method on one invented job, an early-career payments role at Larkspur Pay. It states three minimum qualifications (a computer science degree, code in Java, Go or Python, and work with SQL databases) and two preferred ones (REST APIs and automated tests). Step through Asha’s resume as she rewrites it from her generic version:

Interactive · step by step Tracing each bullet to a stated qualification Step through one resume as it is rewritten for one job. An arrow joins a bullet to a qualification it proves; a qualification with no arrow is a gap.
Tracing each bullet to a stated qualification, step 7 of 7. Showing B.Tech. in CS, Canteen ordering API, Report query sped up, 140 automated tests, MQ1: CS degree, PQ1: REST APIs, MQ3: SQL databases, PQ2: automated tests, MQ2: Java, Go or Python. In focus: MQ1: CS degree, MQ2: Java, Go or Python, MQ3: SQL databases, PQ1: REST APIs, PQ2: automated tests.B.Tech. in CSCGPA 8.2 out of 10Canteen ordering API4,000 orders a weekReport query sped up9 s down to 0.4 s140 automated testscoverage 38 % to 81 %MQ1: CS degreePQ1: REST APIsMQ3: SQL databasesPQ2: automated testsMQ2: Java, Go or Python

The drawing shows the whole scene; its 7 steps are listed below.

Every step as text
  1. The job's five asks. The job states three minimum qualifications (MQ), which every applicant must meet, and two preferred ones (PQ), which make an application stronger. A resume for this job has to prove each of them.
  2. The generic resume. The generic resume's best bullet is a list of languages. It touches MQ2 only by naming Java and Python, with no work to back it, and the other four asks have no evidence at all.
  3. Start again from a blank page. The rewrite drops the skills list and starts from the asks. The degree goes first, with the CGPA a campus form may ask for, and it proves MQ1.
  4. One project, three asks. The canteen-ordering API was written in Java, stores its data in PostgreSQL and serves REST endpoints, so one bullet with a usage number proves PQ1, MQ3 and MQ2.
  5. A result with a measure. The internship bullet follows Google's formula. The accomplishment is a faster report, the measure is 9 s down to 0.4 s and the means is two indexes and one rewritten join.
  6. The last gap closes. Writing 140 tests is evidence for PQ2, and because they are pytest tests, a second proof of Python for MQ2.
  7. Every ask has evidence. Each of the five qualifications now has at least one bullet behind it, and every bullet carries a number. That is what the program in the next part of the section reports, five of five against one of five.

The rewrite added no skill she lacks. It put a number and a means behind work she had already done, and it pointed every bullet at an ask. The program below checks the same thing. You tell it which qualifications each bullet proves, and it lists the qualifications with no evidence, the bullets without a number and the bullets longer than 30 words, about two lines of a one-column resume. Press Edit, put your own job and bullets in place of these, and run it:

Which stated qualifications does each resume prove? Python · tailor/tailor_check.py
"""Trace each resume bullet to the qualifications a job states, then list the gaps."""

# An invented early-career job at an invented company, Larkspur Pay.
# MQ = minimum qualification, PQ = preferred qualification.
QUALIFICATIONS = {
    "MQ1": "Degree in computer science or a related field",
    "MQ2": "Writes code in Java, Go or Python",
    "MQ3": "Has worked with SQL databases",
    "PQ1": "Has built or tested REST APIs",
    "PQ2": "Writes automated tests",
}

# Each bullet with the qualifications its writer says it proves.
GENERIC = [
    ("Worked on many projects using various technologies.", []),
    ("Good knowledge of Java, Python, C, C++, HTML, CSS and JavaScript.", ["MQ2"]),
    ("Took part in a hackathon and learned a lot about teamwork.", []),
    (
        "Did an internship at a startup where I helped the backend team with "
        "many different tasks, fixed bugs in their system and also wrote some "
        "of the documentation for the rest of the engineering team.",
        [],
    ),
]
TAILORED = [
    (
        "Built a canteen-ordering REST API in Java with 9 endpoints and a "
        "PostgreSQL schema, used by 1,200 students placing about 4,000 orders "
        "a week.",
        ["MQ2", "MQ3", "PQ1"],
    ),
    (
        "Cut a report query from 9 s to 0.4 s in a 10-week internship by "
        "adding two indexes and rewriting one join.",
        ["MQ3"],
    ),
    (
        "Wrote 140 unit and API tests with pytest, raising the line coverage "
        "of the intern project from 38 % to 81 %.",
        ["MQ2", "PQ2"],
    ),
    ("B.Tech. in computer science, CGPA 8.2 out of 10.", ["MQ1"]),
]

MAX_WORDS = 30  # about two lines of a one-column resume


def report(name: str, bullets: list[tuple[str, list[str]]]) -> None:
    print(name)
    proved = 0
    for qid, text in QUALIFICATIONS.items():
        proof = [str(i) for i, (_, ids) in enumerate(bullets, start=1) if qid in ids]
        if proof:
            proved += 1
        label = "bullet " if len(proof) == 1 else "bullets "
        evidence = label + ", ".join(proof) if proof else "NO EVIDENCE"
        print(f"  {qid} {text}: {evidence}")
    for i, (text, _) in enumerate(bullets, start=1):
        problems = []
        if not any(ch.isdigit() for ch in text):
            problems.append("no number")
        words = len(text.split())
        if words > MAX_WORDS:
            problems.append(f"{words} words")
        print(f"  bullet {i}: {', '.join(problems) or 'ok'}")
    print(f"  proves {proved} of {len(QUALIFICATIONS)} stated qualifications")


report("Generic resume", GENERIC)
report("Tailored resume", TAILORED)

Output

Generic resume
  MQ1 Degree in computer science or a related field: NO EVIDENCE
  MQ2 Writes code in Java, Go or Python: bullet 2
  MQ3 Has worked with SQL databases: NO EVIDENCE
  PQ1 Has built or tested REST APIs: NO EVIDENCE
  PQ2 Writes automated tests: NO EVIDENCE
  bullet 1: no number
  bullet 2: no number
  bullet 3: no number
  bullet 4: no number, 35 words
  proves 1 of 5 stated qualifications
Tailored resume
  MQ1 Degree in computer science or a related field: bullet 4
  MQ2 Writes code in Java, Go or Python: bullets 1, 3
  MQ3 Has worked with SQL databases: bullets 1, 2
  PQ1 Has built or tested REST APIs: bullet 1
  PQ2 Writes automated tests: bullet 3
  bullet 1: ok
  bullet 2: ok
  bullet 3: ok
  bullet 4: ok
  proves 5 of 5 stated qualifications

Recorded with Python 3.14.8 on macOS 26 arm64. To run it yourself: mise exec python@3.14.8 -- python3 tailor_check.py

The generic resume proves one of the five qualifications, none of its four bullets carries a number and the last one runs to 35 words. The tailored resume proves all five with four bullets, because the API bullet alone covers three asks. The program reads no meaning: it trusts the labels you give it, so the work it makes you do, deciding what each bullet proves, is the part that matters.

Copying the job's keywords instead of proving them

A skills line stuffed with the posting’s keywords may raise an automated match, but it proves nothing to the person who reads next. Microsoft’s careers site shows a match indicator on postings and says that the indicator does not guarantee any outcome for an application. Put each keyword into a bullet that shows the work, or leave it out.

A cover letter, where you send one, follows the same rule: Google suggests tailoring it to the job and backing it up with data, although it does not require one.

Key idea

Write each resume for one job: start from its stated qualifications, give each one a bullet with a measured result, and cut what proves none of them.

Checkpoint

Check: A resume written for one job

  1. Question 1 of 2 Which resume bullet follows Google's formula, "accomplished [X] as measured by [Y], by doing [Z]"?

    Choose one answer.

    Show the answer: Question 1 of 2

    Answer: Cut checkout errors from 2.1 % to 0.3 % in eight weeks by adding input checks and retries to the payment form

    The formula needs all three parts: what you accomplished, the number that measures it, and how you did it. Only the first bullet has a measure that a reader could ask you about.

  2. Question 2 of 2 A job states five qualifications, and your bullets prove three. The other two describe work you have done but never wrote down. What do you change first?

    Choose one answer.

    Show the answer: Question 2 of 2

    Answer: Add a bullet for each of the two, with what you did and a number, and cut a bullet that proves nothing

    The gaps are in the resume, so the fix is too: a bullet with a measured result for each missing qualification, and room made by cutting a bullet that proves none of them, as Asha's rewrite did with her skills list.

Three applications in 30 days: choose, then apply early

A cap changes the arithmetic of applying. Under Google’s rule, any 30 days in a row may hold at most three of your applications, so each one keeps its place for 30 days, and a weak fit sent today can block a strong one posted next week. Google recommends narrowing your choices to a few jobs that truly match your skills, experience and interests, instead of applying to anything that resembles your ideal job. Because most of its openings take applications on a rolling basis until they are filled, it also encourages applying sooner rather than later, and it asks people who were not selected to wait at least a year before they apply again for the same type of role.

Walk through one month of Asha’s search under that cap, from her first application to the day her fourth can go in:

Timeline · 6 events in order Three applications in any 30 days, over one candidate's month Walk through Asha's applications in order. Each one counts against the cap for 30 days, so a fourth waits until the first of the three stops counting.
  1. Day 3

    A backend role that fits every minimum qualification

    Asha sends her first application, with a resume rewritten for this job. It counts against the cap from today up to day 32.

  2. Day 10

    A data engineering role, a partial fit

    The second application, for a role that matches two of its four minimum qualifications. Two of the three places in the window are now used.

  3. Day 21

    The payments role she wants most

    The third application uses the last place. Until day 33 all three still count, so the cap is full.

  4. Day 25

    A better match appears, and has to wait cap reached

    A fourth posting fits her better than the day-10 one did, but sending it now would put four applications in one 30-day window. She saves it. Google says most of its openings take applications on a rolling basis until they are filled, so every day she waits is a day the role could close.

  5. Day 33

    The first application stops counting

    Day 3 is now 30 days back, so only the day-10 and day-21 applications count, and the saved posting goes in. Had she skipped the weaker day-10 role, this posting could have gone in on day 25.

  6. Day 40

    The next place opens

    The day-10 application stops counting, which leaves room for one more. If she uses it, the next place opens on day 51, when the day-21 application stops counting too. The lesson's exercise computes these days for any list of applications.

The timeline has 6 events, from Day 3 to Day 40.

One rule sets every date: an application sent on day a counts until day a + 29, so a fourth waits until the oldest of the three stops counting. Choosing well is what makes the cap cheap. Had Asha skipped the weaker day-10 role, the better match would have gone in on day 25, eight days sooner.

Caps on campus

Placement cells cap applications too. IIT Kanpur’s policy limits each student to 50 applications on its portal in the first part of the season, allows no withdrawal after a company’s deadline and lets no one re-apply to an opening they withdrew from. A false claim found in a resume after an offer costs the offer.

Checkpoint

Check: Caps and rolling deadlines

  1. One question Google accepts up to three applications from one person in any rolling 30 days. You applied on days 5, 12 and 26. What is the earliest day on which you can send a fourth?

    Type a number.

    A hint

    An application sent on day a counts until day a + 29.

    Show the answer: One question

    Answer: 35 day

    All three applications count until the day-5 one stops counting, on day 5 + 30 = 35. On day 35 only the day-12 and day-26 applications count, so a fourth fits within the cap.

A referral request a busy person can act on

A referral costs the referrer time and a little of their standing, so the request has to make both easy to give. Ask someone who has seen your work, and ask before you apply: PostHog’s scheme, for one, generally does not count a referral for someone who has already applied. Then put everything in one message. Follow one request from that message to the recruiter’s review:

Interactive · message by message A referral request that a busy person can act on Step through one request, from your message to the recruiter's review. Each step says what the person in focus needs at that moment.
A referral request that a busy person can act on, step 6 of 6. Messages so far: You to Referrer: link, resume, three lines; Referrer to Recruiter: referral, first-hand note; You to Referrer: thanks and an update.Youthe candidateReferrerworked with youRecruiterlink, resume, three linesreferral, first-hand notethanks and an update

The drawing shows the whole scene; its 6 steps are listed below.

Every step as text
  1. Choose who to ask. Ask someone who has seen your work, such as a former teammate or the mentor of your internship. Ask before you apply, because some referral schemes do not count a candidate who has already applied.
  2. One message, three things. The message carries the job link, your resume and three lines that tie your evidence to the job's stated qualifications. It also gives an easy way to say no.
  3. The referrer checks the fit. The referrer compares your three lines with the job and decides whether they can speak for you. If they have not seen your work, the honest version is to pass your name on and say how they know you.
  4. Consent, then context. With your agreement, the referrer submits you with what they know first-hand, such as what you built together and how you handled a deadline. A resume forwarded with no context adds almost nothing.
  5. A careful look, not a promise. PostHog's handbook says a referral earns a careful review, which is no promise of an interview. Referred candidates meet the same bar as everyone else.
  6. Close the loop. Thank the referrer the same day and tell them how the process goes, including a rejection. The next time you ask, they will remember both.

Here is the difference on one request, before and after editing. Before: “Hi, hope you are well! Can you refer me to your company? I am looking for a job. My resume is attached.” It names no role, gives the referrer nothing to check and leaves them all the work.

After: “Hi Priya, Larkspur Pay has an early-career backend role on its payments team (link). Three lines on fit: I built the canteen-ordering API we worked on together, in Java with PostgreSQL, used by 1,200 students; in my internship I cut a report query from 9 s to 0.4 s; and I wrote 140 pytest tests for that project. My resume is attached. If you think I fit, would you refer me? If not, no problem at all, and thank you for reading.”

The edited message names and links the role, ties each line to a stated qualification, reminds Priya what she saw for herself and leaves an easy way to say no. A busy person can check it in a minute and forward it with a sentence of their own.

Asking someone to vouch for work they have not seen

A friend of a friend, or a connection you have never worked with, cannot speak for your abilities, and PostHog’s handbook lists generic connections the referrer does not actually know among the referrals that do not count. Ask such a person what the team is like or whether the role is still open, and apply through the careers site yourself.

Checkpoint

Check: Asking for a referral

  1. One question Which of these referral requests is a busy referrer most likely to act on?

    Choose one answer.

    Show the answer: One question

    Answer: “Larkspur Pay has an early-career backend role (link). We built the canteen API together, and my internship cut a report query from 9 s to 0.4 s. Resume attached. Would you refer me? No problem if not.”

    A request is easy to act on when the referrer can check it in a minute: one named role with its link, evidence tied to what the role asks, a reminder of the work they saw, and a polite way to say no.

Habits that spend chances for nothing

Six habits waste applications without adding anything. Each one below costs a place under a cap, a referrer’s goodwill or a slot in a season, and each has a cheaper alternative:

Habit What it costs Do this instead
Applying to every role that looks close A place under a cap, for 30 days, on a role you would not take Apply where you meet every minimum qualification and want the work
Sending one resume everywhere Bullets that prove no stated qualification Start from a blank page for each job
Waiting weeks for a perfect resume A rolling-basis role filled before you apply Apply early with bullets that prove the minimum qualifications
Applying through a link in a message The risk of a fake job; honest employers never charge to hire Find the role on the employer’s own careers site
Stretching a number Your credibility: Microsoft expects honesty at every stage Keep every number one you can explain
Asking a stranger to vouch A referral that adds nothing, and a contact who stops replying Ask someone who knows your work

The first habit is the most expensive under a cap. At three applications in any 30 days, a dozen near matches take 90 days to send even at the fastest pace the cap allows, while three strong matches go in on one day.

Checkpoint

Check: Habits that waste chances

  1. One question Which of these habits cost you chances for nothing? Choose every one.

    Choose every answer that is right.

    Show the answer: One question

    Answer:

    • Following a link in a message to apply on a site that is not the employer's
    • Applying to every role that looks close, under a cap of three in any 30 days
    • Spending weeks perfecting a resume for a role filled on a rolling basis

    A cap turns every weak application into a lost place, a forwarded link skips the employer's own site, and a rolling-basis role does not wait for a perfect resume. Rewriting for each job is the work that makes an application count.

Practise: when can the next application go in?

The exercise turns the cap into code: given the days of your past applications, return the earliest day on which one more stays within the cap. Its sample tests run in your browser and include the timeline’s edge cases: an application exactly 30 days old, several sent on one day and a different cap.

Exercise · Easy · Python

The earliest day for your next application

Some employers cap how often one person may apply: Google, for example, accepts up to three applications in any rolling 30 days. Write next_application_day(applied, today, limit=3, window=30), which returns the earliest day, from today on, on which one more application stays within the cap.

  • Days are whole numbers counted from any starting day: day 0, day 1 and so on. applied lists the days of your past applications, in any order and each on or before today; several can fall on the same day.
  • An application made on day a still counts on day d while d - a < window. With a window of 30 days, an application sent on day 3 counts up to day 32 and no longer on day 33.
  • You may apply on day d when fewer than limit applications count on that day.

For example, with applications on days 3, 10 and 21 and today = 25, all three still count, so the answer is 33, the first day on which the day-3 application no longer counts.

Starter code · apply_day.py

"""The earliest day for your next application under a rolling cap."""


def next_application_day(applied, today, limit=3, window=30):
    """The earliest day, from today on, on which one more application stays within the cap.

    applied: the days of past applications, in any order, each on or before today.
    An application made on day a still counts on day d while d - a < window.

    >>> next_application_day([3, 10, 21], 25)
    33
    """
    # Write your solution here.
    return today
The sample tests · test_apply_day.py
from apply_day import next_application_day


def test_nothing_sent_yet():
    """with no applications sent, you can apply today"""
    assert next_application_day([], 12) == 12


def test_under_the_cap():
    """two applications count, so a third can go today"""
    assert next_application_day([4, 20], 25) == 25


def test_cap_reached():
    """days 3, 10 and 21 fill the cap until the day-3 application stops counting, on day 33"""
    assert next_application_day([3, 10, 21], 25) == 33


def test_order_does_not_matter():
    """the days may be listed in any order"""
    assert next_application_day([21, 3, 10], 25) == 33


def test_old_applications_stop_counting():
    """an application sent exactly 30 days ago no longer counts"""
    assert next_application_day([0, 10, 20], 30) == 30


def test_next_slot_after_using_one():
    """after a fourth application on day 33, the next slot opens when day 10 stops counting"""
    assert next_application_day([3, 10, 21, 33], 34) == 40


def test_same_day_applications():
    """three applications sent on one day stop counting on the same day"""
    assert next_application_day([10, 10, 10], 15) == 40


def test_another_cap_and_window():
    """a cap of two applications in any seven days"""
    assert next_application_day([1, 5], 6, limit=2, window=7) == 8
A hint

Keep only the applications that still count today (today - a < window) and sort them. If fewer than limit are left, you can apply today. If not, the oldest ones have to stop counting first: count how many must go, find the last of them in the sorted list, and add window to its day.

The sample tests run on this device, in your browser (Pyodide): nothing is sent to mysmartcopilot.com. The first run downloads Python (about 13.5 MB), which is kept for the next runs. A check in your browser is feedback for you, not proof that the code is right for every input.

Resume Builder Build a one-column resume and paste the job ad into its keyword match, then check that every matched keyword sits in a bullet that proves it.

The self-check below covers all five ideas of the lesson. It opens where your answers have been weakest so far and moves on as they come out right:

Practice that adapts to you

Practise this lesson

13 questions about 5 ideas of this lesson. Each answer is explained at once, and what you get right is kept in this browser.

  1. Question 1 of 13 What does the TCS CodeVita Season 14 page say about who may enter and which languages they may use?

    Choose one answer.

    Show the answer: Question 1 of 13

    Answer: Science and engineering students expecting to complete their course in 2027 to 2030; only C, C++, Java and Python

    CodeVita Season 14 accepts science and engineering students who expect to complete their course in 2027, 2028, 2029 or 2030, from any recognised institute, and allows only C, C++, Java and Python. A contest's own page is the only place to check such rules.

  2. Question 2 of 13 A drive's cut-off is 75 %. Your university converts a CGPA to a percentage as (CGPA − 0.5) × 10, as JNTUH's regulations do. What is the lowest CGPA that meets the cut-off?

    Type a number.

    A hint

    Set (CGPA − 0.5) × 10 equal to 75 and solve for the CGPA.

    Show the answer: Question 2 of 13

    Answer: 8 CGPA (anything from 7.999 to 8.001 counts)

    (CGPA − 0.5) × 10 = 75 gives CGPA − 0.5 = 7.5, so the CGPA must be at least 8.0. Under Anna University's rule, CGPA × 10, a CGPA of 7.5 would already meet the same cut-off, which is why you convert by your own university's rule.

  3. Question 3 of 13 A friend at PostHog refers you for an open role. What does PostHog's handbook say the referral does for you?

    Choose one answer.

    Show the answer: Question 3 of 13

    Answer: Its team reviews you carefully, and you still have to meet the same bar; an interview is not promised

    A referral buys attention, not a result: a careful review against the same bar as everyone else. That is why the referrer's first-hand context matters more than the act of referring.

  4. Question 4 of 13 What does Google suggest you start each resume from?

    Choose one answer.

    Show the answer: Question 4 of 13

    Answer: A blank document written for that one job, with your old resume beside you for ideas

    Starting from a blank page for each job forces every bullet to earn its place against the job's stated qualifications, which an edited old resume rarely does.

  5. Question 5 of 13 In the program's report, how many of the five stated qualifications does the generic resume prove?

    Type a number.

    Show the answer: Question 5 of 13

    Answer: 1 qualifications

    The report shows NO EVIDENCE for four of them; only MQ2 is touched, by the skills list that names Java and Python. The tailored resume proves all five.

  6. Question 6 of 13 A careers site marks your resume as a "strong" match for a role. What does that tell you?

    Choose one answer.

    Show the answer: Question 6 of 13

    Answer: That its matching found your skills and titles close to the role; it guarantees nothing, and a person still reads your evidence

    A match indicator is a hint for choosing roles. The resume still has to prove each stated qualification to a person, with bullets that show the work and its result.

  7. Question 7 of 13 A posting says it accepts applications "on a rolling basis". What does that mean for you?

    Choose one answer.

    Show the answer: Question 7 of 13

    Answer: Applications are reviewed as they arrive and the role closes once it is filled, so applying early helps

    On a rolling basis there is no deadline to wait for: each application is read as it comes, and the role is gone once someone is hired.

  8. Question 8 of 13 Under a cap of three applications in any 30 days, you applied on days 3, 10, 21 and 33. What is the earliest day for the next one?

    Type a number.

    A hint

    List the applications that still count on day 34, then find the day the oldest of them stops counting.

    Show the answer: Question 8 of 13

    Answer: 40 day

    On day 34 the applications of days 10, 21 and 33 count, so the cap is full until the day-10 one stops counting, on day 10 + 30 = 40. That is the day the timeline gives, and the exercise's sample test checks it.

  9. Question 9 of 13 Google turned down your application for a role. How long does its hiring page say it typically asks people to wait before applying again for the same type of role?

    Choose one answer.

    Show the answer: Question 9 of 13

    Answer: At least a year

    The cap limits how often you apply; the wait after a rejection limits when you try the same type of role again. Google typically asks for at least a year, while other roles stay open to you.

  10. Question 10 of 13 What does PostHog's handbook ask a referrer to make sure of before putting a candidate forward?
    Show the answer: Question 10 of 13

    Answer: That the candidate has given consent

    Consent comes first, then context: the referrer should be able to say what they saw of the candidate's work and how they would fit, not just forward a resume.

  11. Question 11 of 13 You applied to a role yesterday. Today a former teammate who works there offers to refer you for it. What do you do?

    Choose one answer.

    Show the answer: Question 11 of 13

    Answer: Thank them, say you have already applied, and ask whether they could still tell the recruiter what they saw of your work

    Order matters: ask for a referral before you apply. When it is too late, be honest with the referrer and ask for the part that still helps, a first-hand note to the recruiter.

  12. Question 12 of 13 Your app was downloaded 10,000 times, and about 900 people use it each week. Which bullet do you write?

    Choose one answer.

    Show the answer: Question 12 of 13

    Answer: Built an app downloaded 10,000 times, with about 900 people using it each week

    Microsoft expects candidates to represent themselves honestly at every stage, and an interviewer will ask how a number was measured. Write the numbers you can defend, exactly as they were measured.

  13. Question 13 of 13 Under a cap of three applications in any 30 days, you send each application on the first day the cap allows, starting with three on day 0. On which day does the twelfth go in?

    Type a number.

    A hint

    Three go in on day 0; when do they stop counting?

    Show the answer: Question 13 of 13

    Answer: 90 day

    Three go in on day 0, three on day 30, three on day 60 and the last three on day 90. A dozen near matches take a whole season of the cap, which is why choosing strong matches first matters.

Interview questions

Recruiters and interviewers may begin with how you found the role and who referred you, and then test the evidence behind your resume:

Model answers open with any pass: ₹79 for 1 week ($2.99), one payment that never renews.

  1. Fresher to mid · Warm-up

    How did you hear about this role, and why did you apply?

    Name the real source in a few words, then spend the rest of the answer on why you applied. "I found it on your careers site while looking for payments roles" or "Priya, who built a project with me, told me about it" is enough for the first half. For the second half, give two reasons tied to what the job states: one piece of your own evidence for a minimum qualification, and one thing about the work that you want to do. For example: "The role asks for SQL and REST APIs, and I built a canteen-ordering API on PostgreSQL that 1,200 students used. I want to work on payments, where the same problems run at a far larger scale." Avoid saying that you applied everywhere, and avoid answers that only praise the brand.

  2. Fresher to senior · Warm-up

    You were referred by one of our engineers. How do you know them?

    Say exactly how you know them and what they have seen of your work, in two or three sentences: "Priya and I built the canteen-ordering API in our third year. She wrote the front end and I wrote the Java service and its database schema, so she has seen how I handle deadlines and code review." Do not stretch the relationship, because the interviewer may ask the referrer the same question and the two answers should match. If the referrer knows you only socially, say so and move to your own evidence: "We met at a meetup, so she knows my interests better than my work. Here is what I have built." Then connect one thing they saw to a qualification the role states.

  3. Fresher to mid

    Pick one bullet on your resume. How did you measure its result, and what would you do differently next time?

    Model answer, Pro. Model answers open with any pass; prices are in the notice on this page. First step and follow-ups

  4. Fresher to mid

    This role asks for experience with SQL databases, and your resume shows it only from coursework. Why should we move you forward?

    Model answer, Pro. First step and follow-ups

Key takeaways

  • Apply through the employer’s own careers site: it is a safe and reliable source, and the place where a role’s stated qualifications are written down.
  • Ask for a referral only from someone who knows your work, before you apply, with the job link, your resume and three lines of fit.
  • Start each resume from a blank page for one job, give each stated qualification a bullet with a measured result, and cut what proves none of them.
  • Under a cap such as three applications in any 30 days, each application holds a place for 30 days, so choose strong matches and send them early.
  • Campus drives follow the cell’s policy and the employer’s eligibility form: read both before the season, and convert your CGPA by your own university’s rule.

Terms in this lesson

minimum qualifications
The requirements a job posting says every applicant must meet. Preferred qualifications make an application stronger but are not required.
placement cell
The office of a college or university that runs recruitment on its campus: it registers students, schedules employers and applies the institute's placement rules.
referral
A recommendation in which someone who works at an employer puts a candidate forward, ideally with what they know first-hand about the candidate's work.
rolling basis
A way of hiring in which applications are reviewed as they arrive and a role closes once it is filled, instead of waiting for a fixed deadline.

References

Related tools

Report a problem with this lesson

Quick answers and tool search

Type to search tools or to get a quick answer, for example 18% of 2500. Use the up and down arrow keys to move through the results, Enter to choose, and Escape to close.