How to Write a Professional Resume in Minutes

A LaTeX resume stands out. The typography is precise, the spacing is consistent, and the PDF renders identically on every device. This guide walks you through building a clean, professional one-page resume from scratch.

Why Use LaTeX for Your Resume?

Word-processor resumes suffer from invisible formatting gremlins — spacing that looks right on your computer shifts on a recruiter's screen, bullet points misalign when opened in a different version of Word, and margins vary by printer. A LaTeX resume compiles to a fixed PDF that looks identical everywhere.

More importantly, LaTeX gives you pixel-level control. You can fit more content on a page by reducing whitespace precisely, align dates to the right margin reliably, and use custom section dividers and font selections that would require hours of manual tweaking in Word.

In competitive fields like software engineering, data science, finance, and academia, a well-typeset LaTeX resume communicates attention to detail before a recruiter reads a single word.

Resume Structure

A standard professional resume has the following sections, in roughly this order:

  1. 1
    Header

    Full name (large), contact details (email, phone, LinkedIn, GitHub/portfolio)

  2. 2
    Summary or Objective

    Optional 2–3 sentence professional summary. Skip for students, include for senior professionals.

  3. 3
    Work Experience

    Reverse chronological: company name, role, dates, 3–5 bullet points per role

  4. 4
    Education

    Degree, institution, graduation year, GPA if strong (>3.5/4.0)

  5. 5
    Skills

    Technical skills, languages, frameworks — use a horizontal list or grouped table

  6. 6
    Projects / Publications

    Optional: relevant personal projects, open source contributions, or academic publications

Complete Resume Template

Copy this template into the editor, replace the placeholder content with your own details, and compile. The template uses only standard LaTeX packages — no external class files needed.

\documentclass[10pt, a4paper]{article}

\usepackage[margin=1.5cm]{geometry}
\usepackage{enumitem}
\usepackage{hyperref}
\usepackage{titlesec}
\usepackage{parskip}

% Section formatting
\titleformat{\section}{\large\bfseries}{}{0em}{}[\titlerule]
\titlespacing{\section}{0pt}{8pt}{4pt}

% Remove page numbers
\pagestyle{empty}

\begin{document}

% ── HEADER ────────────────────────────────
{\Huge\bfseries Your Full Name}\\[4pt]
\href{mailto:you@email.com}{you@email.com} \quad|\quad
+1 (555) 000-0000 \quad|\quad
\href{https://linkedin.com/in/yourprofile}{LinkedIn} \quad|\quad
\href{https://github.com/yourhandle}{GitHub}

% ── WORK EXPERIENCE ───────────────────────
\section{Work Experience}

\textbf{Software Engineer} \hfill \textit{June 2023 -- Present}\\
\textit{Company Name, City, State}
\begin{itemize}[leftmargin=*, itemsep=1pt, topsep=3pt]
  \item Built a REST API serving 50,000 daily requests using Node.js and PostgreSQL
  \item Reduced deployment time by 40\% by migrating from manual releases to GitHub Actions CI/CD
  \item Led a team of 3 engineers to deliver a customer-facing dashboard 2 weeks ahead of schedule
\end{itemize}

\textbf{Junior Developer (Intern)} \hfill \textit{Jan 2023 -- May 2023}\\
\textit{Another Company, Remote}
\begin{itemize}[leftmargin=*, itemsep=1pt, topsep=3pt]
  \item Developed React components for the main product dashboard
  \item Wrote unit tests that increased code coverage from 62\% to 85\%
\end{itemize}

% ── EDUCATION ─────────────────────────────
\section{Education}

\textbf{Bachelor of Science in Computer Science} \hfill \textit{Graduated May 2023}\\
University of Technology, City \hfill GPA: 3.8/4.0

% ── SKILLS ────────────────────────────────
\section{Skills}

\begin{tabular}{ll}
\textbf{Languages:}   & Python, JavaScript, TypeScript, Java, SQL \\
\textbf{Frameworks:}  & React, Node.js, Express, FastAPI, Next.js \\
\textbf{Tools:}       & Git, Docker, PostgreSQL, AWS, Linux \\
\end{tabular}

% ── PROJECTS ──────────────────────────────
\section{Projects}

\textbf{Open Source CLI Tool} \hfill
\href{https://github.com/yourhandle/project}{github.com/yourhandle/project}\\
A command-line tool for automating database migrations. 500+ GitHub stars.
Built with Python and Click; supports PostgreSQL and MySQL.

\end{document}

Key Formatting Techniques Explained

\hfill — Right-align dates

\hfill inserts stretchable horizontal space that pushes the content after it to the right margin. This is how dates appear flush-right next to job titles without manual tab stops.

\titlerule — Section dividers

The titlesec package with [\titlerule] adds a full-width horizontal rule under each section heading. This creates clear visual separation without borders or boxes.

itemsep=1pt — Compact bullet points

The enumitem package parameter itemsep=1pt reduces vertical space between bullet points, letting you fit more content on a single page without changing font size.

\pagestyle{empty} — No page numbers

Removes the default page number from the footer. Resumes should not have page numbers on a one-page document.

Common Resume Mistakes to Avoid

  • Using a font size below 9pt — it becomes unreadable when printed
  • Setting margins smaller than 1cm — PDF viewers may clip content
  • Using colored text extensively — most ATS (Applicant Tracking Systems) process plain text, not colour
  • Forgetting to escape % signs in percentages — write 85\% not 85%
  • Including photos unless applying in a region where it is expected (some European countries)
  • Exceeding one page for less than 10 years of experience

Build your resume in the editor

Paste the template above, replace the placeholder content, and download a polished PDF in minutes.

Start Writing

Continue Learning