Skip to main content

Effortlessly create multiple, ATS-friendly resumes from a single YAML file with Resumaker.

Project description

resumaker image

PyPI - Version PyPI - Python Version


Resumaker

Resumaker is a tool that creates ATS-friendly, professionally formatted, multiple, and multi-targeted resumes from a single YAML file. Write down all the details and let Resumaker handle the formatting and structuring.

Let's assume you know Python and JS, and you're applying to two different companies for two different roles. You'll need to have a different resume for each option. It can be counterproductive to manually write LaTeX code or use an office suite like Word or LibreOffice Writer to write your resume. Instead, write all the information in a YAML file, and Resumaker will create six resumes for you, nicely formatted and ATS-friendly.

See quickstart.

Disclaimer

This is a pre-release version and the current template is intended for software engineers and has the following fields:

  • Name, Location, Professional Summary, Education, Skills, Work Experience, Projects, and Links.

Installation

Install resumaker with pip.

pip install resumaker

Requirements

  • pdflatex

You also need the following TeX packages:

  • parskip, array, ifthen, graphicx, ebgaramond, hyperref

For Fedora, run:

sudo dnf install texlive-scheme-basic texlive-parskip texlive-ebgaramond

For Ubuntu, run:

sudo apt install texlive-latex-base texlive-latex-extra texlive-fonts-recommended texlive-fonts-extra 

If you face any package issues, please download the package for your system and create a pull request to include the package name above. If you use another distribution, please search with your package manager and consider contributing by adding the package name to the list above.

Quickstart

You need a YAML file to write the details. This file can be categorized into two parts:

Common Part

The fields are common to all resumes:

  • name, location, contact, education, links

Targeted Part

This will be different for each resume:

  • summary, skills, work experience, projects

From the following resume.yml, two PDFs will be created: testuser-swe.pdf and testuser-machine_learning.pdf by running:

Note: You need to escape %, :, $ among other things as these have special meaning in YAML, Tex.

resumaker -f resume.yml
# common fields
name: Test User
location: Fake City, India 

contact:
  email: test.user@example.com 
  phone: +91 12345 67890 # make sure to include country code
  linkedin: sujaudd1n # only username
  github: sujaudd1n # only username

education:
  - name: XYZ University
    location: ABC City, India
    duration: 2010 - 2014
    degree: Bachelor of Technology in Computer Science
    achievements:
      - 'GPA: 3.5/10 (I was going for 9, but pizza happened)' # in '' because in yml you have to escape :
      - University Topper in going late
      - Published Research Paper which 12 people have read, including me

  - name: PQR Institute
    location: DEF City, India
    duration: 2014 - 2016
    degree: Master of Technology in Artificial Intelligence
    achievements:
      - Research Assistant
      - Filed Patent, Now I Just Need to Remember What It Was For

links:
  algorithms:
    - name: Leetcode
      url: https://leetcode.com/sujaudd1n
      url_text: leetcode.com/sujaudd1n
  open-source:
    - name: Github
      url: https://github.com/sujaudd1n
      url_text: github.com/sujaudd1n

swe:
  summary:
    title: Senior Software Engineer
    text: >
      Meet the software engineer who learned the value of TDD from a very special teacher:
      Murphy's Law. After a memorable SaaS meltdown in production, I learned to test before
      I deploy. Now, my code works, and my blood pressure thanks me.

  skills:
    languages: [Go, Come, Python, C++]
    libraries: [Jango, Reaction]
    databases: [OurSQL, PostgreSQL, MangoDB]
  
  work_experience:
    - company-name: ABC Corporation
      location: Fake City, India
      role: Software Engineer
      duration: 2016 - 2018
      contributions:
        - Developed a machine learning model for image classification for cat and not-cat
        - Improved search engine performance by 2.18\%
        - Collaborated on a new feature launch
    - company-name: DEF Startups
      location: ABC City, India
      role: Software Engineer
      duration: 2018 - 2020
      contributions:
        - Built a real-time analytics dashboard to watching numbers move in real-time
        - Enhanced payment gateway reliability from "it usually works" to "it almost always works"
        - Launched a new feature with the team in one night and most of tests failed in the morning

  projects:
    - name: Project Alpha
      techstack: [Python, Django, MySQL]
      details:
        - Developed a web application for e-commerce where you can buy things
        - Implemented a secure payment gateway...yes, your money is safe, ig
        - Deployed on a cloud platform aka rented computers

    - name: Project Beta
      techstack: [Java, Spring, MongoDB]
      details:
        - Created a mobile app for social media because the world needed another one, right?
        - Designed a functional chatbot 
        - Successfully deployed on a cloud platform 

machine_learning:
  summary:
    title: Senior Machine Learning Engineer
    text: Making computers solve complex problems, one model at a time. Currently, they're smarter than me, but that's not saying much.

  skills:
    languages: [Python, R, Julia, thinking about learning lisp to feel better]
    libraries: [TensorFlow, PyTorch, scikit-learn]
    databases: [MySQL, PostgreSQL, MongoDB]
  
  work_experience:
    - company-name: GHI Research
      role: Machine Learning Engineer
      duration: 2020 - 2022
      location: Fake City, India
      contributions:
        - Developed an NLP model with high accuracy
        - Launched a new product with the research team
        - Improved computer vision model performance, now it can see me coming... to the fridge

    - company-name: JKL Labs
      role: Machine Learning Engineer
      duration: 2018 - 2020
      location: ABC City, India
      contributions:
        - Built a recommender system with strong results
        - Successfully built something.
        - Enhanced some models, and now they perform their job better than before

  projects:
    - name: Project Gamma
      techstack: [Python, PyTorch, MongoDB]
      details:
        - Developed a time series forecasting model
        - Deployed on a cloud platform with high uptime
        - Achieved 90\% accuracy, on a good day, with the wind in my favor

    - name: Project Delta
      techstack: [R, TensorFlow, MySQL]
      details:
        - Created a clustering analysis model for categorizing my mental health.
        - Deployed on a cloud platform with good performance, no complaints so far
        - Reached 85\% accuracy, close enough, right? Right?!
# these are mostly fake data

Configuration

This is a pre-release, so minimal configurations are provided.

Configs should be in a file called config.yml and it should be a dictionary.

Valid keys:

  • RESUME_FILENAME: The default filename to look for if you run resumaker with no options.
  • ORDER: The ordering of resume sections.

Sample config.yml:

RESUME_FILENAME: [my-resume.yml]
ORDER : [summary, skills, education, work_experience, projects, links]

License

resumaker is distributed under the terms of the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

resumaker-1.0.0rc4.tar.gz (192.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

resumaker-1.0.0rc4-py3-none-any.whl (22.1 kB view details)

Uploaded Python 3

File details

Details for the file resumaker-1.0.0rc4.tar.gz.

File metadata

  • Download URL: resumaker-1.0.0rc4.tar.gz
  • Upload date:
  • Size: 192.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.0

File hashes

Hashes for resumaker-1.0.0rc4.tar.gz
Algorithm Hash digest
SHA256 2a813e4ba08829231d6a0f5e37e9d604b54ff4f19a6b9fde9decba28e561b975
MD5 36490fa042cc6e0bee22bd6fe4f906aa
BLAKE2b-256 eb46c6b6882a679524d4d7fa923ffb28ddf514d694aedd916e3a529def9c8091

See more details on using hashes here.

File details

Details for the file resumaker-1.0.0rc4-py3-none-any.whl.

File metadata

  • Download URL: resumaker-1.0.0rc4-py3-none-any.whl
  • Upload date:
  • Size: 22.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.27.0

File hashes

Hashes for resumaker-1.0.0rc4-py3-none-any.whl
Algorithm Hash digest
SHA256 5c7e416634ca954b49e6db2b36596c6505a78aea1a01cabc57cf247273c1ce5f
MD5 9888f37b24861d2d0b856afaa6a195d9
BLAKE2b-256 84437146a31cd5713312fd5a62068f904110ebc03744796ea3181a1b23019892

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page