Contents
  1. Background: why applications alone were not enough
  2. Five channels
  3. Scoring fit before applying
  4. Applications with a human note
  5. Replying to recruiters
  6. Cold outreach to the people who hire
  7. Warm reconnects
  8. Public work: a portfolio site in two hours
  9. Results
  10. What I’d do differently
  11. Conclusion

In mid-March 2026 I asked Claude to help me write a message to someone I hoped would give me an interview. My notes from that conversation say, in my own words, that I was desperate for interviews. I had a rebuilt resume, a list of companies I wanted, and almost nothing on my calendar.

Six weeks later I had sat 24 interview rounds in a single month. By August, 35 companies had been in conversation with me. None of that came from one big push of applications. It came from five different channels running at once, each with its own rules.

This post describes those channels: applications that went out with a human note attached, replies to recruiters, cold outreach to the people who actually hire, warm reconnects with people from earlier processes, and inbound interest from public work, starting with a portfolio site I built in about two hours. It is part 10 of the 35 companies, 8 offers series.

For context, I was an ML engineer with about four years of production experience, looking for ML engineering, applied scientist and AI engineering roles, mostly in Bengaluru.

The headline numbers:

  • Companies in conversation: 35 by August, from almost nothing in early March
  • Channels: 5, all running in parallel
  • Portfolio site: built in about two hours; in its first days it reached 133 new users from 14 countries and produced 9 resume downloads
  • Fit scoring: every serious application was scored against its job description first, from about 90% fit down to about 25%

Background: why applications alone were not enough#

Three things were wrong with my position in March, and no single channel fixed all of them.

No pipeline. I knew which companies I admired. I did not know which ones were hiring for my profile, at my level, in my city.

A resume in my team’s language. My work was real, but it was described in internal terms that job descriptions and recruiters did not use. A low keyword match usually meant a vocabulary problem rather than a skills problem; the resume post covers how I fixed that.

No visibility. Recruiters search for people they can see. Apart from my resume, there was very little public evidence of what I had built.

I did not track which channel each process came from, and I regret it. This post describes what each channel looked like and what worked in it, not a conversion rate per channel.

Five channels#

Each channel had its own entry point and its own rules, but they all fed the same thing: a first conversation that I then qualified or dropped.

graph LR
    A["Applications<br/>with a note"] --> F["First conversation"]
    B["Recruiter<br/>replies"] --> F
    C["Cold outreach to<br/>hiring-side people"] --> F
    D["Warm reconnects"] --> F
    E["Inbound from<br/>public work"] --> F
    F --> G{"Qualify"}
    G -->|"fit"| H["Process"]
    G -->|"no fit"| I["Decline early"]

    class A,B,C,D,E amber
    class F violet
    class G gray
    class H green
    class I red
Figure 1: Five channels feeding one qualification step. Every first conversation ended in a decision to run a process or decline early.

Scoring fit before applying#

Before applying anywhere, I built a map: a universe of about 50 target companies across product companies, fintechs, AI startups and large tech, with four resume variants for the four kinds of role I was targeting.

Then, for each serious application, I scored my resume against the job description first. For five roles at Goldman Sachs, the fit ranged from about 90% for an AI and ML engineering role in compliance engineering down to about 25% for a quantitative derivatives role that wanted pricing experience and a PhD in mathematics or physics. The recommendation was to apply to the top two and skip the rest. For Amazon I had Claude fetch and rank 15 job descriptions, and two came out as clear first-tier targets.

Scoring first did two things. It stopped me spending effort on roles where a hard requirement was out of reach, and it told me exactly which of my experiences to lead with for the roles where I fit.

Applications with a human note#

A bare application to a large company is a lottery ticket. Most of my applications went out with a short message to someone on the hiring side: a recruiter, a hiring manager or an engineer on the team.

Short, specific, one number. LinkedIn connection notes are capped at a few hundred characters. The notes that worked named the role, gave one line of the most relevant experience with one number, and asked to connect. A longer pitch went in a follow-up message after the connection was accepted.

Acknowledge gaps up front. Where a role had a requirement I did not meet (an institution tier, a specific domain, a location), I said so in the note and pointed at the nearest strength, instead of hoping nobody would notice. It made the note more credible, and it filtered out conversations that would have ended at the screen anyway.

Ask for referrals from the right person. When I asked for referrals, I researched the person first and wrote two variants: a direct ask naming the job IDs, and a softer opener based on shared technical interests. One useful detail surfaced in this research: someone who joined a company recently usually has less internal referral capital than someone who has been there for years.

Referrals matter for a reason beyond convenience. A study of nine large firms by Burks, Cowgill, Hoffman and Housman found that referred workers were 10–30% less likely to quit and performed better on rare high-impact metrics, and attributed the difference mainly to better job fit. Companies value referrals because they carry information about fit, which is exactly what a cold application lacks.

I wrote notes like this for roles at Myntra, Amdocs, Disney’s ads platform team, Capital One, Instamart, Proximity Works, Mastercard and Glance, among others. Glance rejected me at the screen, and I wrote back to argue the case; that story is in the post on rejections.

Replying to recruiters#

Recruiter messages were the highest-volume channel. Over the search I replied to recruiters from PayPal, Target, Revolut, Jumio, Imperva-Thales, Pibit.AI, a healthcare voice-agent startup, a precision-medicine startup and several staffing agencies.

Two variants for every reply. Each reply came in two versions: one that moved fast (interest, a short fit summary, the resume attached) and one that asked for the full job description or a short call before committing. Which one I sent depended on how clear the role was.

No resume to an agency without a name. For staffing agencies, I did not send a resume until I knew the company and had the job description. It kept my resume out of databases I had no control over, and it forced the first exchange to be about a real role.

The assistant does not get to reject a role for me. This is the rule I am most glad I made. For one recruiter message, about a senior software engineering role at a health-tech startup, Claude’s first draft politely declined on my behalf: it judged the role a mismatch because it was a software role rather than an ML role, and flagged a location issue. I had substantial backend engineering experience and wanted the conversation. I told it plainly that its job was to write a reply that sold me as a fit, and that deciding whether a role was right was mine. Every reply after that was written to open the door, and I made the call on whether to walk through it.

Cold outreach to the people who hire#

The best conversations often came from going one step past the recruiter.

When a PayPal recruiter reached out about a senior software engineering role, I looked for the person on the hiring side, found the lead for their agentic commerce work, researched the company’s public initiatives in that area, and wrote to him directly with three specific overlaps between his problems and systems I had built. The message mentioned the recruiter’s outreach and was written for an engineer rather than for a screener.

The same approach worked with founders. I wrote to the founder of Donizo, a workflow tool for small contractors, with an email and a shorter LinkedIn message tailored to his product and his background in the trades rather than to “AI” in general. That became a founder call.

Some of the best processes came from people reaching out after meeting me. RazorpayX began when a business unit head wrote to me after an industry event, and it ended in an offer.

Warm reconnects#

Recruiters from earlier processes are an underused channel. In March I wrote to a recruiter I had worked with during a previous process at another company. My first draft opened on a negative note and was too candid about why I was looking. The rewrite was warmer, reframed my situation neutrally, named the exact roles I wanted, and re-shared my profile links so the recruiter could act in one step.

The lesson generalizes: people who have already screened you once are the fastest path to a new screen, as long as you make it effortless for them to help.

Public work: a portfolio site in two hours#

The channel I underestimated most was public work. In March I bought a domain and built and deployed a portfolio site (the one you are reading this on) in about two hours, then announced it on LinkedIn.

A few days later I added analytics and looked at what had happened. The site had reached 133 new users from 14 countries, with a roughly tenfold spike in traffic on the second day after the post. Visitors from India spent an average of 1 minute 38 seconds on it, visitors from the United States 9 seconds. There were 9 resume downloads, one of them from someone who downloaded it twice, and about a quarter of sessions counted as engaged. I turned that data into a second LinkedIn post that told the launch as a story with numbers.

The portfolio did not produce an offer on its own. What it did was make every other channel stronger: every note, reply and cold email could link to evidence of what I had built, with numbers, in a format that took 30 seconds to skim.

Results#

The table below summarizes what each channel looked like in practice.

Channel What it looked like Example companies
Applications with a note Fit-scored first, sent with a short note to someone on the team Myntra, Amdocs, Capital One, Proximity Works, Glance
Recruiter replies Two-variant replies; no resume to agencies without a company name PayPal, Target, Revolut, Jumio, Imperva-Thales
Cold outreach Researched hiring-side people and founders, wrote about their problems PayPal, Donizo
Warm reconnects Recruiters from earlier processes, given everything needed to act A recruiter from a previous process
Inbound from public work Portfolio site, LinkedIn posts, industry events RazorpayX

By August, 35 companies had been in conversation with me and 32 had reached at least one round. I cannot say which channel produced the most offers, because I did not log the source of every process.

What I’d do differently#

Log the source of every conversation. One column in a spreadsheet would have turned this post into a conversion analysis. It is the single most useful number for planning a search, and I do not have it.

Build public work before searching. The portfolio took two hours and helped every channel. It should have existed months before I needed it.

Apply less, target more. Fit scoring showed that a handful of roles were strong matches and many were not. Fewer, better-written applications to the strong matches would have saved time without losing any processes I wanted.

Ask long-tenured people for referrals. A referral from someone with standing inside the company carries more weight than one from a new joiner, and research before asking makes the ask easier to say yes to.

Conclusion#

Interviews come from people, not from forms. Every channel that worked for me ended with a specific message to a specific person, written about their problem, with one number from my work and a link to the evidence. The channels differ in who that person is (a recruiter, a hiring manager, a founder, someone who saw your work) but the message is the same.

Score fit before you apply, write to people rather than portals, keep your assistant from filtering you out, and build the public evidence before you need it.

Part 10 of the 35 companies, 8 offers series. I join Google as a Software Engineer III, AI/ML, in October 2026.