From f8454d362a33b2612f41684a3b162ded02d3d54f Mon Sep 17 00:00:00 2001 From: Vitor Mello Date: Sun, 3 Dec 2023 18:34:07 +0100 Subject: [PATCH] more resume improvements --- cli/export-pdf-resume.mjs | 2 +- public/vitor-mello-resume.pdf | Bin 229903 -> 229894 bytes src/components/Footer.astro | 2 +- src/components/ResumePageA4.astro | 6 +++--- src/content/resume.yml | 9 +++++---- 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/cli/export-pdf-resume.mjs b/cli/export-pdf-resume.mjs index d3b5b0c..7bbf84f 100644 --- a/cli/export-pdf-resume.mjs +++ b/cli/export-pdf-resume.mjs @@ -43,7 +43,7 @@ async function exportResumeAsPdf(task) { format: 'A4', path: targetPdfPath, displayHeaderFooter: true, - margin: { top: '12mm', right: 0, bottom: '12mm', left: 0 }, + margin: { top: '8mm', right: 0, bottom: '12mm', left: 0 }, pageRanges: '1-1', headerTemplate: ' ', // <--- empty spaces are needed! ¯\_(ツ)_/¯ footerTemplate: ` diff --git a/public/vitor-mello-resume.pdf b/public/vitor-mello-resume.pdf index fcf2824cd4c511b3e0925f2b8e26aed54a44d5b4..d3117147dad3cc8f358caebedb1863b0369c2bb9 100644 GIT binary patch delta 15976 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
Loosely designed in Figma and coded in Visual Studio Code by yours truly. Built with Astro (why?) and Tailwind CSS, deployed with Vercel. diff --git a/src/components/ResumePageA4.astro b/src/components/ResumePageA4.astro index 8926fc5..1fce648 100644 --- a/src/components/ResumePageA4.astro +++ b/src/components/ResumePageA4.astro @@ -12,7 +12,7 @@ const { resume } = Astro.props;
- +
@@ -21,7 +21,7 @@ const { resume } = Astro.props;
-
    +
      { resume.links.map((link) => (
    • @@ -170,7 +170,7 @@ const { resume } = Astro.props; .header { flex-grow: 0; align-items: center; - margin-bottom: 8mm; + margin-bottom: 5mm; } .row { diff --git a/src/content/resume.yml b/src/content/resume.yml index d14ad49..07627d6 100644 --- a/src/content/resume.yml +++ b/src/content/resume.yml @@ -9,7 +9,8 @@ summary: - Currently I focus more on the frontend side, with strong skills in Typescript, React (Redux and Sagas), Node (NestJS & Next.js) and GraphQL. - - "Fun fact: I coded my first website (about Dragon Ball Z) when I was a 14 years old." + - "Outside work, I love snowboarding, running, video games and teaching my dog new tricks. + Fun fact: I coded my first website (about Dragon Ball Z) when I was a 14 years old." links: - name: vitor@vmello.com @@ -58,10 +59,10 @@ work: date: Nov 2019 - Jan 2021 summary: > Reimplemented the existing blog in Next.js, making the static export time 10x faster - • Migrated the ecommerce customer authentication to external Auth0 platform • Implemented a one-page checkout, greatly increasing the conversion rate and UX - • Greatly increased dev workflows with automated pipelines • Technical interviews for Backend and Frontend roles + • Migrated the ecommerce customer authentication to external Auth0 platform + • Greatly increased dev workflows with automated pipelines • Driving squad initiatives and technical roadmap planning • Mentoring and guiding on best practices and design patterns tags: > @@ -88,7 +89,7 @@ work: date: Feb 2016 - October 2019 summary: > Reimplemented the search results page and search form with React, Redux and Sagas - • Greatly reduced time to first paint, reducing repaints and rerenders, chunk splitting, suspense + • Greatly reduced time to first byte, reducing repaints and rerenders, chunk splitting, suspense • Greatly accelerated testing of edge cases by creating tool to create complex mocks easily • Created an internal payment framework in PHP to speed up integration of 3rd-party payment APIs tags: >