Show HN: Open-source resume builder and parser (open-resume.com)
Top highlights of the resume builder are:
1. Real time UI update as you type
2. ATS friendly to top ATS platforms, e.g. Greenhouse, Lever
3. Privacy focus - no sign up is required and data is stored locally in browser that only users have access
4. Support import from existing resume PDF
The tool also includes a resume parser to help people test their existing resumes’ ATS readability if they might not be interested in using the builder. I also explained the parser algorithm in an article with interactive tables that might be an interesting read to see the steps and logics it uses (https://www.open-resume.com/resume-parser).
I hope others might find this tool useful and I look forward to hearing any feedback the community has. Thanks all.
Home Page: https://open-resume.com
Github Repo: https://github.com/xitanggg/open-resume
Product Hunt: https://producthunt.com/posts/openresume
206 comments
[ 5.0 ms ] story [ 224 ms ] threadthat said my resume is not working anymore, even though the gist is still there. I wonder if others have the same issue.
thanks and good luck
But I could also try resurrect the theme that you were using.
Ive been having fun integrating AI stuff into it. Going to polish them more soon.
https://registry.jsonresume.org/thomasdavis/jobs <- this is purely a prototype i built on the weekend, it uses vector databases to match your resume to Who is Hiring hn post.
https://registry.jsonresume.org/thomasdavis/interview <- this one preprompts your resume so you can interview yourself
https://registry.jsonresume.org/thomasdavis.letter <- Cover Letter (attempts to write a cover letter that matches your resume)
https://registry.jsonresume.org/thomasdavis.suggest <- Resume Suggestions (it asks ChatGPT to give precide feedback for improvements you could make to your resume)
I wonder how many companies actually use LLMs for what they're good at instead of jumping onto the AI hype with random use-cases where anything is possible.
I used `sed` in the build pipeline to change the page title on the html version (see line 16 here: https://github.com/jefc1111/cv/blob/master/.github/workflows...). I expect there is a better way though.
Which makes me wonder, who is doing the wrong thing here? Is LinkedIn generating a bad resume, or is the ATS parser not able to parse what I assume should be pretty standard, as I imagine a lot of people use that feature of LinkedIn.
Then, an internet company in our country took over the market and almost all jobs are searched through it. Of course,it features a very nice resume builder, so now everyone has a nice resume and we can't even filter out the worst candidates without an investigative effort.
Thus, this work is commendable, but might have harmful effects.
If an intellectual worker can't take a text editor and produce a coherent text about his skills and job experience, it is unlikely he'll be good at any job that requires thinking.
I'd argue that if a resume builder threatens your ability to filter out good and bad resumes, you're probably not a good hiring manager and also are unlikely to be fit for a job that requires thinking.
A quick dumb filter that works isn’t dumb, right?
Also, many people failed to notice this and attached files with their CVs anyway. I had a special tag 'dyslexic' for those in my email client.
You can probably get away with it you're the only place hiring
https://www.dol.gov/agencies/odep/publications/fact-sheets/e...
Obviously those discriminations are illegal so it goes passive most of the times, by continuous interruption during meetings or intentionally asked to repeat or elaborate themselves, among other.
It’s not about communication abilities as this is usually the covert passive response for such discriminatory behaviors, a lot of these candidates can speak “better” in terms of clarity than people with Australian accent for example, it’s just another episode of “I’m better than you”, you can read more about that in here:
https://www.bbc.com/worklife/article/20210528-the-pervasive-...
https://www.forbes.com/sites/janicegassam/2022/11/18/accent-...
https://exceptionalindividuals.com/about-us/blog/what-is-dys...
I love it when people from internet forums are telling me what my job is.
You know, your way of thinking will eventually lead to understanding that interviewing is inherently discriminatory against everyone but the best candidate, and thus must be abolished. This will lead to a creation of some kind of government agency that you'll ask for a worker and it'll appoint someone who would be considered as acceptable by some clerk. You wouldn't have the freedom to refuse to hire the appointee and would be obliged to pay him.
That's not discrimination. The problem is when you assume someone isn't the best candidate because of (pick (religion, origin, language, disability, ...)) but you don't know that.
A lot of people have used your way of thinking to justify discrimination. "Obviously foreign people are less educated. I'm just looking for the best candidate so I should not interview someone with a foreign name". How can you be sure that _you_ are not discriminating ?
> I love it when people from internet forums are telling me what my job is.
So you don't agree that your job is to hire the best person without discrimination ? Or you don't agree that giving people the proper tools allow them to be the best version of themselves ?
I assume that someone who can't throw up a few lines of text about himself is not worth even considering for an interview for a job that ultimately requires producing text, in a form of computer code, documentation and communication with co-workers. Yes, I'm pretty sure I'm discriminating against mentally handicapped and illiterate people. That's the intent.
Reading and writing, communication in written form is a critical skill for a software developer, more important than even coding skills (btw, I'm yet to see a person who can code and can't write, or even hear about such person). It is irrelevant, what is the reason for the lack of skill - innate disability or low intelligence - if you can't clearly and precisely communicate with your coworkers, you'll create more problems for the team than you will solve.
And speaking of discrimination, you wouldn't hire a paraplegic person as a nurse or firefighter, right?
Another case I witnessed was in Canada, where French is an official language, yet the hiring manager excluded one candidate because he had a thick French accent..
Technically speaking too, there’s nothing as “native English”, we all do have an accent to some degree, a lot of English vocabulary are taken from other languages, and even English speakers do have a lot of silly typos and mistakes in their writing all the time, including my writings in here, so it’s never an excuse.
>And speaking of discrimination, you wouldn't hire a paraplegic person as a nurse or firefighter, right?
That’s a poor analogy, you do have the tools to properly and easily compensate such linguistic disability, as easy as having someone double checking their writing or having one of these new AI spell check tools, etc., but we don’t have the proper technology and tools to compensate for a paraplegic to be a firefighter, yet, say in the future there are proven ex-skeletons that can help, then yes you are discriminating.
> you do have the tools to properly and easily compensate such linguistic disability
No, I do not have such tools, and neither do you.
Interestingly, the mistakes non-native English speakers make are different from the ones native speakers make. Thus, excluding non-natives makes it more likely for certain kinds of mistakes to slip by. "There" vs "Their", etc.
If the hypothetical person in question had such tools, then we would not see their "handicap" right? So the discrimination would not have occurred...
The bit about:
I like how they picked a tiny sliver of jobs that might require full mobility. Thinking deeper: I am sure there are many nursing jobs that can be done from a wheelchair. And why not doctors? (See Dr. House, with a limb, a cane, and an on-again-off-again opioid addiction!) There are plenty of jobs that can done in a hospital and fire department that do not require all of your limbs. A lot of the work involves sitting in an office, typing on a PC.Once, I had an office mate who had a single hand. Incredibly, he was a member of a "fast reaction" front-line support team. It was a small miracle watching him dash about the keyboard. It helped to open my mind about what was possible with modern technology.
I dont really disagree with your post over all, but you really should refrain from using fictionalized stories to support your real world public policy it never works out well. That is aside from the fact that that example is pretty poor as something that should be aspirational.
You have first-hand experience of hiring managers telling you they eliminated someone b/c they had a foreign accent?
As long as it’s not a catastrophic mental disability, having a disability should not preclude someone from communicating clearly. As long as they slow down and actually take time to make themselves clear, it shouldn’t be a problem.
That's fine...but you have no way of knowing if the people you filtered out would have been low or high performing employees.
If not, the bias could hurt. It's like a leet code interview - artificial bar from highly biased interviewers which kinda sorta works but is buggy and a bit discriminatory.
Even new developers who are primarily going to be mentored greatly benefit from being able to effectively communicate with their mentor and the rest of the team (plus being able to grow into more senior roles).
Someone doesn't need to be perfect at communicating or anywhere close, but just like I wouldn't hire someone who cannot show a baseline of programming skills and knowledge, I also wouldn't hire someone who cannot show a baseline of communication skills (and I have regretted getting swayed by other interviewers when a candidate did well in other aspects).
Ultimately, engineers are solving business problems, working with other departments and untangling technical ideas.
Often they need to explain those ideas to non-technical folks, and just as often, they need to justify their decisions to technical and non-technical colleagues.
In every area and task having solid writing skills including documentation, emails, and putting together reports, is extremely important.
Frankly if engineers lack the care and attention to detail to put together a decent resume that's a pretty strong signal their other writing is probably sloppy as well.
To the detractors: writing code is the easiest part of the job, figuring out what code to write to solve the right business problem in concert with other areas is what is important. I do not care if you are a wiz kid mega coder, if your writing is sloppy it casts doubt on everything you _are_ trying to say.
Personally, I love my bespoke, beautifully typeset CV. But I also recognize it's useless if I ever want to get through the ATS screening process. I'm far better off using a tool like this so I have confidence the damn thing will get read properly.
Or: your profession is now reaping what they've sown. Force resumes through a machine and we'll start building them with machines.
As you note, with the advancement of internet and proliferation of internet companies/tools, it is much easier to get a nice resume design than ever before, e.g. one can easily look it up on google and pay to use it. A problem I see and motivates me to create this tool is that this can create an unequal playing field, where students/folks with more resources can easily afford to pay for such tool and have their resume well formatted and ATS tested. I created this tool in hopes to eliminate this barrier and to allow anyone to have a good starting resume design with built-in best practices so they are in the level playing field.
Having a well formatted resume is only the first step, as it still requires a lot of works and thinking for someone to write down their experiences and descriptions, where it should yield more signals on the candidates. I can see how resume format might be used back then, but in current days, it might be helpful to consider ways to gain deeper insights into candidates, e.g. assessments, interviews
Keep up the good work and good luck!
I don't mean to sound rude. But, can you explain what you mean by "trusted by students and employees from top universities and companies worldwide" while showing some university/company logos? How can such a new project make those claims? Was it released elsewhere privately? Looking at the git history, I see it was created 2 days ago, in a single commit.
If you are going to be honest about lying by admitting to us that you lied, just state that it was a lie, don't euphemize it as marketing. Otherwise the "honesty" just comes of as manipulation.
I have no doubts your claim as it was written in text was correct. The lie was by layout and usage of company and university logos. These kinds of "we are trusted by" and "in cooperation with" sections are common, it's what you're making in that section, and the usage of logos in those sections always mean the same thing: these organisations use/trust our software.
Now, I know from experience, you probably want to hear from their legal team (or have a contract which make it explicit) before putting a company's logo on your website as an endorsement - but I doubt they'll sue you
They admitted it was for marketing purposes, and I added that rather than to euphemize it as marketing, they should instead admit that they lied, otherwise their attempt at honesty comes of as manipulative. It is possible to tell a lie by the usage of logos and layout, not only in text.
This has now been removed from their website, you can see their original layout here: https://web.archive.org/web/20230625170119/https://www.open-...
I don't attribute it to stupidity. (Never attribute to malice that which is adequately explained by stupidity.)
They tried to use other organizations logos in their "loved by section" to make their product seem more trustworthy than it was. By using smart language they could have gotten away with it in case of a lawsuit, and most companies don't even bother to go after stuff like this. By the time a lawsuit could have been relevant, their landing page would have changed. It's because I respect their competence that I attribute it as intentional.
Don't get me wrong, I don't give a rats ass about what someone does with some large company/organization logos on their website, it's not that I'm trying to stop some misuse of their trademarks. But if you chat with us about your page, and try to be honest about that the section there is toeing the line of truth, don't call it marketing, just tell us you lied on your webpage. It's not the end of the world to tell a lie on the internet.
Sorry, this false dichotomy is one of my pet peeves. It should read "Never attribute to something that which is adequately explained by something else."
It might as well be, "Never attribute to hunger that which can be explained by incompetence." Is it easier to see why that fails as any sort of useful proverb?
It doesn't need to. The false dichotomy is presented in the phrasing.
>what third reason would be relevant in this case, exactly?
It's not a third reason, which is why you are confused. It is a third possibility, not a third reason. That third possibility is that both malice and stupidity are present. In such a case, if stupidity could adequately explain the action, the saying suggests ruling out malice, which would be incorrect. That is precisely why it is a false dichotomy.
It's not a strawman, you just haven't thought about it correctly.
No, it isn't, the phrasing is very clear: if you think it's malice, also consider stupidity. It's an implication - if "A", then "B". It doesn't say anything about the case of "not A".
You're just making shit up now, with personal insults ("you're confused", "you haven't thought about it correctly") added as a filler for your weak reasoning.
That is not what it is saying. "Never attribute to malice..." has an entirely different meaning from merely considering stupidity as an alternative as you're suggesting.
It means exactly what it says: never attribute [action] to malice. That rules out malice as an explanation. It doesn't say, "maybe don't attribute [action] to malice," or "also consider stupidity," it says, very clearly, "never attribute to malice", which means "do not ever attribute to malice..." So yes, you do seem to be confused about the very clear meaning of this saying.
No, it does not. You are blatantly misquoting the original statement. Since you're so stuck up on the literal phrasing, let's be precise: never attribute to malice what can be adequatly explained by stupidity.
Which means, if you are attributing some action to malice, then stop and consider whether stupidity is an adequate explanation. And if it is, then don't attribute it to malice. And if not, then feel free to attribute it to malice! This is in no way "rules out" malice as an explanation. If there is any evidence of malice, then by definition stupidity will not explain that evidence, and thus will not be an adequate explanation. So there is no dichotomy either.
The very sentence is merely a statement on how to evaluate intentions in light of limited evidence - it says nothing about the truth, as human knowledge is always limited by available information, especially in human relations.
Yes, this is exactly what I am saying. We agree, and you finally get it. You are describing the false dichotomy perfectly: "If it is adequately be explained by stupidity, then don't attribute it to malice." That is the false dichotomy, because both could be present at the same time.
>You are blatantly misquoting the original statement
No, I used ellipses for a reason: "Never attribute to malice..." means there is more to the quote, but I am focusing on this specific part. I could have made that more clear in my writing though. At any rate, we're done here, because we agree on the meaning of the saying.
No, we don't agree, and it is not me who finally got it. You explicitly wrote: "It means exactly what it says: never attribute [action] to malice" which I explicitly disagreed with. Either you have changed your mind, in which case you have no business acting as if you were right all along, or we don't agree.
> I could have made that more clear in my writing though
Yes, you could. Nobody can read your mind, only your words. Try not being so arrogant next time.
Well, which is it? Do we not agree, or have I "finally got it" ("it" being, I assume, what you're trying to convey)? Because if I finally got what you're saying, then that suggests we would be in agreement. Or maybe you mean you've changed your position and I "finally got" your original argument, but now you're onto a new one. If that is the case, then please clarify your new position so I can finally get that one as well.
The saying presents a false dichotomy, which is highlighted here:
>...stop and consider whether stupidity is an adequate explanation. And if it is, then don't attribute it to malice
This is a false dichotomy because it is saying if stupidity is present, then don't attribute it to malice. But both can be present at the same time, in which case rejecting malice would be incorrect. Do you understand now? It is very simple, and this is what I wrote toward the top of the thread. You're grasping at straws here, and my position has not changed the entire time.
Please, read the saying again, read our discussion again, and think about it before you respond. What you're writing is incorrect.
* CVs are generally longer - 2-4 sides. Resumes are more of a one page and done thing.
* Resumes often include a mission statement or similar. CVs don't - you'd put that stuff on a 'cover letter', if at all
* CVs are generally not adjusted per job - it's everything, with only the older stuff abbreviated. Whereas resumes are tailored.
In the UK I created CVs, in the US I created Resumes.
Same thing, different names.
However, as an American, I've never heard of a résumé including a mission statement or being adjusted per job. As you said, they're very short documents. I've always seen them just giving the same factual history of the person's employment/education, and the person similarly attaches a cover letter tailored to the specific job, repeating some highlights and how it qualifies him and saying how perfect this job is for him.
[1] Sidebar: Every bit of résumé advice is "fighting words", with diehard adherents on opposing sides. In this instance, "1 page" can be taken as "What have they been doing with their life? Discard it.", while "2 page" can be taken as "Wasting my time. Discard it.". The most successful strategy is hard to achieve: know the personal pet-peeves of the recipient, and adjust accordingly.
I see nothing wrong with this lighthearted marketing. It’s a single dev project, it’s just fun to market it this way. It’s easy to see it should be take with a small grain of salt.
Also, by no means is this a good resume. It just works for me as a developer. Using it since 7 years to apply for jobs. Did not disappoint yet ;).
Putting on my meme cap for a moment: Page two, first work history entry says:
Send his resume to Facebook or Cambridge Analytica. Hiring manager will think: "He's seen everything!"I don't care for skill self-ratings as a concept either but these are placed in what would need to be negative space anyways. If you're committing to a skills list, removing the rating dots and stuffing more skills in their place probably wouldn't have a positive effect.
I am an older engineer and I would rank myself 6-7/10 in most aspects of my work, even if I have architected and built some trend-setting systems in my corner of tech. I have never seen a junior score themselves so low on average.
My experience is also that companies that care about these things (where hires are mainly filtered by HR and not SWEs) tend to build very mediocre teams. I am probably old enough to eschew the whole resume padding or prettifying thing all together. My last resume was written in Notepad, and it worked just fine for its purpose.
Disappointedly, lots of "resume uploaders" refused to accept my file, even as .txt.
Had to retreat back to pdf. Hard times we live in.
edit: The generated PDF from the template mostly works with OP's resume-parser[1]. There's just fields lacking like Certifications, Awards, and Skills which are parsed under the Projects Category.
[0]: https://github.com/jskherman/cv.typ
[1]: https://www.open-resume.com/resume-parser
I just saw a new hire at my company introduce themselves by email as a "senior developer" with two years experience. After reading that email, I cringed all the way under my desk...
"In terms of the whole world? I'm probably a 5-6 out of 10. In terms of people in finance, I'm probably a 8 out of 10."
And I put it this way to show: - I'm not a Perl guru - I also know, roughly, the spectrum of Perl skills in my industry - I'm therefore closer to the upper end for my role + industry match
I wouldn't take a 9/10 to mean I am in the top 10% world wide in this skill, rather it is where I consider myself most proficient.
For more senior roles I might see it as a slight red flag to be honest.
At the end of the day that’s all that matters. If it is a skill you have just list it, don’t fluff it up.
If somebody has experience in different areas (not just "Java and c++" but e. G. Project management and technical development), it may be useful to understand their relative ranking or focus or priority or direction.
All data is data.
- The web editor doesn't seem to display pages 2, 3, etc.
- The biggest concern I have is how the platform handles the end of a page and page breaks. Specifically, the text seems to be too close to the bottom of the page, with no footer padding. If I were to add a new role to the CV and include the company name, I'd expect the platform to be smart enough to recognise that there isn't enough room for the entire entry and to move the name and the first couple of associated bullets to the next page instead of awkwardly splitting them across two pages.
- I also noticed that my Word CV fits on 2.7 pages, while the document on your editor spans 3.5 pages, with identical font sizes and types. Is there any way to adjust the text width which is what i think the issue is.
https://practicaltypography.com/widow-and-orphan-control.htm...
Re-posting my comment from the github issue: Agree that the app is currently buggy for multi page layouts. Its initial target audience is for students and early-career professionals who can fit their experiences in one page, and multi page layouts haven't been well thought and implemented.