Day 54: Resume, LinkedIn & Job Search
✅ Today you will learn
- Pick the right role: analyst, scientist, ML engineer
- A one-page ATS-friendly resume
- Bullets with action + tool + number + impact
- Check keyword match with Python
- LinkedIn, referrals and a weekly job-search system
🏢 In the real world
You have the skills and four projects. Now a computer (the ATS) will scan your resume before any human sees it, and a recruiter will spend about 30 seconds on it. This day turns your course work into a resume, a LinkedIn profile and a plan that gets you interviews.
Which role fits you?
| Role | Daily work | Key skills | Typical fresher pay (India) |
|---|---|---|---|
| Data Analyst / Business Analyst | Reports, dashboards, SQL, ad-hoc analysis | SQL, Excel, Power BI, pandas, statistics | ₹3.5–7 LPA |
| Data Scientist | Models, experiments, forecasting | Python, ML, statistics, SQL | ₹6–12 LPA |
| ML Engineer | Deploy and scale models | Python, ML, APIs, cloud, MLOps | ₹7–15 LPA |
| Product / Marketing Analyst | Funnels, A/B tests, growth metrics | SQL, statistics, experimentation | ₹5–10 LPA |
Pay varies widely by city, company type and skills; check current listings on job portals. Most career switchers and freshers enter through Data/Business Analyst roles and move to data science within 1–2 years.
The one-page resume
- 1Header: name, phone, email, LinkedIn, GitHub, city
- 2Summary: 2 lines – role + top skills + one result
- 3Skills: grouped (Languages, Tools, ML, BI)
- 4Projects: 3–4 with impact bullets and links
- 5Experience / internships (if any)
- 6Education + certifications
ATS-friendly
- Single column, standard headings
- Text-based PDF or .docx
- Keywords from the job description
- Simple fonts, no tables for layout
ATS-unfriendly
- Fancy two-column templates
- Skills shown as progress bars
- Text inside images or icons
- Photo, age, religion, marital status
Bullets that get interviews
Formula: Action verb + what you did + tool + number + business impact.
weak = ["Did EDA on sales data", "Made a churn model", "Worked on SQL queries"]
strong = [
"Analysed 2,000 e-commerce orders in pandas and found the festive season drove 27% of revenue; "
"recommended a 6-week-earlier stock plan",
"Built a telecom churn model (scikit-learn, ROC-AUC 0.83) and deployed it as a Streamlit app; "
"calling the top-risk 20% reached 2.3× more churners than random calls (≈ ₹12 lakh net per cycle)",
"Designed a star-schema SQLite warehouse and wrote CTE/window-function queries that cut a weekly "
"Excel report from 3 hours to 5 minutes",
]
for w, s in zip(weak, strong):
print("✗", w); print("✓", s, "\n")
verbs = ["Analysed", "Built", "Designed", "Automated", "Reduced", "Increased", "Forecast", "Deployed", "Presented"]
print("Start bullets with:", ", ".join(verbs))Check your keyword match
import re
from collections import Counter
jd = """Data Analyst – Bengaluru. Requirements: strong SQL (joins, window functions), Python (pandas, NumPy),
Excel (pivot tables, XLOOKUP), Power BI dashboards, statistics, A/B testing, stakeholder communication.
Nice to have: machine learning, scikit-learn, Git, Tableau."""
resume = """Data Analyst (Fresher). Skills: Python, pandas, Matplotlib, SQL, Excel, machine learning, scikit-learn.
Projects: BazaarKart sales EDA in pandas; churn prediction with scikit-learn and Streamlit."""
SKILLS = ["sql", "window functions", "python", "pandas", "numpy", "excel", "pivot tables", "xlookup", "power bi",
"statistics", "a/b testing", "communication", "machine learning", "scikit-learn", "git", "tableau", "streamlit"]
def found(text):
t = text.lower()
return {s for s in SKILLS if re.search(r"(?<![a-z])" + re.escape(s) + r"(?![a-z])", t)}
need, have = found(jd), found(resume)
print(f"JD asks for {len(need)} skills | resume shows {len(need & have)} → match {len(need & have) / len(need):.0%}")
print("✅ matched:", sorted(need & have))
print("❌ missing:", sorted(need - have))Add missing keywords only if you genuinely have the skill (interviewers will ask!). Aim for a 70%+ match. Keep a master resume and make a 10-minute tailored copy for each role.
LinkedIn that recruiters find
- Headline: “Data Analyst | SQL · Python · Power BI | Turning data into business decisions”.
- About: 4–5 lines – who you are, skills, 2 project results, what role you want.
- Featured: GitHub repos, Streamlit app, a dashboard screenshot.
- Open to work: set roles and cities (recruiter-only option is fine).
- Post weekly: one chart + one insight from your projects – recruiters notice consistent learners.
Hi Priya, I enjoyed your post on Power BI at <Company>. I'm a data analyst (SQL, Python, Power BI) and recently built a churn-prediction app: github.com/<username>/telecom-churn. I saw the Data Analyst opening (Job ID 12345) and believe my A/B-testing and dashboard projects match it well. Would you be open to referring me, or sharing any tips about the team? Thank you for your time!
Treat the search like a funnel
import pandas as pd
apps = pd.DataFrame([
("Fintech start-up", "Data Analyst", "LinkedIn", "2026-10-01", "Applied"),
("E-commerce co.", "Business Analyst", "Referral", "2026-10-02", "Interview"),
("IT services", "Junior Data Scientist", "Naukri", "2026-10-03", "Applied"),
("Edtech", "Data Analyst Intern", "Internshala", "2026-10-03", "Rejected"),
("Bank", "MIS / Data Analyst", "Company site", "2026-10-05", "Assessment"),
("Logistics", "Data Analyst", "Referral", "2026-10-06", "Interview"),
("SaaS", "Product Analyst", "LinkedIn", "2026-10-07", "Applied"),
("Retail chain", "Data Analyst", "Naukri", "2026-10-08", "Applied"),
], columns=["company", "role", "source", "applied_on", "stage"])
apps["applied_on"] = pd.to_datetime(apps["applied_on"])
progress = apps["stage"].isin(["Assessment", "Interview"])
print(apps.groupby("source").agg(applications=("company", "count"), progressed=("stage", lambda s: s.isin(["Assessment", "Interview"]).sum())))
print(f"\nOverall response rate: {progress.mean():.0%} → referrals convert best – ask your network!")
apps.to_csv("job_tracker.csv", index=False)| Week | Focus | Target |
|---|---|---|
| 1 | Resume, LinkedIn, GitHub READMEs polished | 3 projects public |
| 2 | Apply + referrals | 15 tailored applications, 10 referral messages |
| 3 | Interview prep (Day 55) + mock interviews | 2 mocks, 30 SQL problems |
| 4 | Keep applying, follow up, new mini-project post | 15 more applications |
Genuine companies never ask for “registration fees”, “training deposits” or payment for offer letters. Verify the company domain, interview over official channels, and never share OTPs or bank details.
🏅 Job skills unlocked today
Practice tasks
🏋️ Practice – do it yourself
Quick quiz
🧠 Quick Quiz – test yourself
Interview corner
💼 Interview Corner
Tell me about yourself.
A 60-second pitch: present (role + skills), past (education/projects with one strong number), future (why this role and company). Example: “I am a data analyst skilled in SQL, Python and Power BI. In my churn project I built a model with AUC 0.83 and an app… I want to apply this to customer analytics at your company.”
Why should we hire you without experience?
Point to proof: deployed projects, business-focused results, consistency (GitHub/LinkedIn activity), and willingness to learn the domain quickly. Link your strongest project to their business.
Summary
- Target a role; most start as Data/Business Analyst.
- One-page, single-column, keyword-matched resume.
- Bullets = action + tool + number + impact.
- LinkedIn + GitHub + referrals + a tracked weekly plan.
Day 55: 60+ data-science interview questions with model answers – SQL, Python, statistics and ML.
