Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

schema: support multiple positions at a single company #473

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

waynr
Copy link

@waynr waynr commented Nov 23, 2023

I am currently migrating from my own bespoke resume data format to jsonresume and have run into a blocker in the sense that my current resume typesetting document can display more than one title and a start/end date range for that title for each work section. I feel this is important to show the trajectory of promotions through one's career (if desired).

This proposed solution maintains backwards compatibility with what was in place before by simply adding a new pluralized "positions" section and leaving the old "position" section as-is.

@teddybradford
Copy link

👍 I think it would also be nice to include summary and highlights fields per position.

@waynr
Copy link
Author

waynr commented Nov 27, 2023

@teddybradford I'm happy to add that, but I personally won't use it in my resume generator. Are you planning to use those fields yourself?

@waynr
Copy link
Author

waynr commented Nov 27, 2023

I'm actually going to wait for the maintainers to review this before changing anything.

@teddybradford
Copy link

teddybradford commented Nov 27, 2023

Sounds good! I follow the format pictured below for multiple roles at a single company, so adding in at least highlights is necessary for me.

image

@root-hal9000
Copy link

I second @teddybradford here, as I have held very different positions within a company, which need their own descriptions/bullet points. Also a valid situation for consulting gigs within a job at a company (consulting firm and you work at a specific client for a long term assignment and you have a specific title at that client assignment).
@waynr thanks for working on this - have you had any word from the maintainers? Also curious, since I was considering just using your branch for this: do you know if any themes play well with your change?

@thomasdavis
Copy link
Member

I understand the requirements, about 99% of themes currently don't support.

In the past, the recommendation has been to just add another work section which I personally think is sufficient.

A lot of people who have raised ranks, simply set their most senior position as they one they were at before they left.

In all my years looking at CV's, I've rarely if not never seen somebody make explicit sections for their positions changing. They might sometimes say "Started as a junior, ended up CTO".

I like that it this solution is additive, but I'm not sure it really meets the large majority of users use case.

Is the creating a new work section not sufficient because it doesn't render well? Could your tooling simply string match the same company name's and merge them together appropriately?

@waynr
Copy link
Author

waynr commented Jun 29, 2024

since I was considering just using your branch for this: do you know if any themes play well with your change?

@root-hal9000 - only my own personal resume generator which only currently has a single theme built into it:

  • the generator: https://github.com/waynr/rsume
  • the resume: wayne-warren_2024-06-11_yellow.pdf
    • this is a rendering with a kinda gross yellow theme; the theme is configurable via yaml config file passed to the CLI alongside the actual data file. the theme config takes maps of skill categories to different colors to implement the emphasis formatting
    • sadly it's currently going beyond my desired 1 page limit :(

I understand the requirements, about 99% of themes currently don't support.

How can themes support it if it's not in the schema?

In the past, the recommendation has been to just add another work section which I personally think is sufficient.

This solution doesn't prevent you from doing that, right?

Is the creating a new work section not sufficient because it doesn't render well? Could your tooling simply string match the same company name's and merge them together appropriately?

The approach I've proposed here is just one of the ways that I optimize my resume to reduce size. It's hard, but in my view worth it, to keep a resume at a single page.

It's hard, but in my view worth it, to keep a resume at a single page. Adding another work section is one solution

That solution doesn't work for my tool. In my view, rendering a template from a data structure should be relatively straightforward without a lot of complex logic and edge cases.

It's not a big deal to me if this doesn't get merged. I update my resume renderer occasionally and it hasn't garnered much interest from other folks (maybe because i haven't really promoted it or documented how to use it 🤷). That said, since a couple other folks have expressed interest I'm happy to incorporate any feedback.

@teddybradford
Copy link

teddybradford commented Jun 29, 2024

In my view, rendering a template from a data structure should be relatively straightforward without a lot of complex logic and edge cases.

That's how I felt, too.

I also don't really mind if this gets merged or not, but I wanted to express that it's been useful for me. I can continue to use a forked version that's similar to @waynr's if people prefer this not be part of the official schema.

Edit: Here's the additional schema that I've found useful:

{
  "positions": {
    "type": "array",
    "description": "Define multiple positions at the same company",
    "additionalItems": false,
    "items": {
      "type": "object",
      "additionalProperties": true,
      "properties": {
        "title": {
          "type": "string",
          "description": "e.g. Software Engineer"
        },
        "startDate": {
          "$ref": "#/definitions/iso8601"
        },
        "endDate": {
          "$ref": "#/definitions/iso8601"
        },
        "summary": {
          "type": "string",
          "description": "Give an overview of your responsibilities at the company"
        },
        "highlights": {
          "type": "array",
          "description": "Specify multiple accomplishments",
          "additionalItems": false,
          "items": {
            "type": "string",
            "description": "e.g. Increased profits by 20% from 2011-2012 through viral advertising"
          }
        }
      }
    }
  }
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants